Subversion Repositories wimsdev

Rev

Rev 9099 | Rev 9111 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. !nocache
  2. !! useful when one comes from modtool
  3. !set modu_lang=$lang
  4. !read oef/$modu_lang/names
  5. !if $lang_exists!=yes
  6.    !let modu_lang=en
  7.    !read oef/$modu_lang/names
  8. !endif
  9. !set wims_backslash_insmath=yes
  10. !set proc=oef
  11. !if robot isin $session
  12.  !changeto content.html
  13. !endif
  14.  
  15. !set test_data=!replace internal data/ by in $module_data
  16. !set test_data=!defof title in datamodule/$test_data/INDEX
  17. !if $test_data= and $module_data!=
  18.    <p class="name_datamodule"><i>
  19.    $name_datamodule
  20.    </i></p>
  21. !endif
  22. <hr style="width:35%" />
  23.  
  24. !if robot isin $session
  25.  !changeto content.html
  26. !endif
  27.  
  28. !if $special_parm3!=$empty
  29.  !let tmp=!replace internal ; by $ $ in $special_parm3
  30. !!!should use the script getparm
  31.  !set testw=!replace internal ; by $\
  32. $ in $special_parm3
  33.  !set testw=!replace internal = by , in  $testw
  34.  !for cle in exo,qnum,qcmlevel,scoredelay,intro_qcmpresent,intro_presentsol,\
  35.    intro_check,intro_sepow,intro_expow,intro_precw,random,confparm1,confparm2,confparm3,\
  36.    confparm4,confparm5,confparm6,confparm7,confparm8,intro_expert
  37.   !set testw0=!select $testw where column 1=$cle
  38.   !set get_$cle=$(testw0[;2..-1])
  39.   !set get_$cle=!singlespace $(get_$cle)
  40.   !set get_$cle=!words2items $(get_$cle)
  41.   !set get_$cle=!listuniq $(get_$(cle))
  42.    !default $(cle)=$(get_$cle)
  43.  !next cle
  44.  !if $scoredelay=0
  45.   !reset scoredelay
  46.  !endif
  47.  !if $exo=0
  48.   !reset exo
  49.  !endif
  50.  !if yes isin $intro_expert
  51.   !let special_parm2=!append word expert to $special_parm4
  52.  !endif
  53. !endif
  54.  
  55. !if $wims_class!=$empty and $wims_user=supervisor and ($special_parm3=$empty or intro_expert isin $special_parm3)
  56.  !default qnum=$wims_oefdefault_qnum
  57.  !default qcmlevel=$wims_oefdefault_qcmlevel
  58.  !default scoredelay=$wims_oefdefault_scoredelay
  59.  !default intro_qcmpresent=$wims_oefdefault_qcmpresent
  60.  !default intro_presentsol=$wims_oefdefault_presentsol
  61.  !default intro_check=$wims_oefdefault_check
  62.  !default intro_sepow=$wims_oefdefault_sepow
  63.  !default intro_expow=$wims_oefdefault_expow
  64.  !default intro_precw=$wims_oefdefault_precw
  65.  !let special_parm2=$special_parm
  66.  !if ($special_parm3=$empty or intro_expert=yes isin $special_parm3) and ($wims_oefdefault_qcmpresent$wims_oefdefault_presentsol$wims_oefdefault_check$wims_oefdefault_sepow$wims_oefdefault_expow$wims_oefdefault_precw!=$empty)
  67.     !let expert_option=yes
  68.  !else
  69.     !let expert_option=no
  70.  !endif
  71. !endif
  72. !reset special_parm3
  73.  
  74. !if ////classes/ isin ////$module
  75.  !set class_header=wimshome/log/classes/$wims_class/
  76. !endif
  77.  
  78. !read $(class_header)Exindex
  79. !set exocnt=!itemcnt $exolist
  80. !set qcnt=$[min($exocnt,8)]
  81. !if $wims_user=supervisor and #classes/ isin #$module
  82.  !set wims_menu_items=!append line add_exo,1,module=adm/createxo\
  83.   to $wims_menu_items
  84.     !if $exocnt<1
  85.      !exit
  86.     !endif
  87. !else
  88.    !if $exocnt<1
  89.     $name_noexercise
  90.     !exit
  91.    !endif
  92. !endif
  93.  
  94. !if $lang notsametext $module_language and $(titlelist_$lang) notsametext
  95.  !set titlelist=$(titlelist_$lang)
  96. !endif
  97.  
  98. !if $exocnt=1
  99.  $name_oneexercise, <span class="bold">
  100.  !item 1 of $titlelist
  101.  </span>.
  102. !endif
  103.  
  104. !form new
  105. <input type="hidden" name="module" value="$module" />
  106. <div id="oef_intro_params">
  107. <h2 class="legend oef_name_menu">$name_menu</h2>
  108. !if $exocnt>1
  109.  <div class="field">
  110.   !set special_parm=!trim $special_parm
  111.   !if select iswordof $special_parm2 and $special_parm!=$empty
  112.    <span>$name_chooseexo$name_exercisescontaining</span> &laquo;<em style="color:blue">$special_parm</em>&nbsp;&raquo;&nbsp;:
  113.   !else
  114.    <label for="exo">$name_chooseexo:</label>
  115.   !endif
  116.   !read oef/select.phtml
  117.  </div>
  118. !endif
  119. !!!FIXME should test if there is an introhook
  120. <fieldset class="oef_expert">
  121.     <legend>$name_module_setup</legend>
  122. <div class="field introhook">
  123. <table class="field introhook">
  124. !read introhook.phtml
  125. </table>
  126. </div>
  127. </fieldset>
  128. <fieldset class="oef_expert">
  129.  <legend>$name_general_setup</legend>
  130.  <div class="field">
  131.  <label for="qnum">$name_oneserie
  132.  !default qnum=1
  133.  !formselect qnum from 1 to 9
  134.  $name_exercises.</label>
  135.  </div>
  136.  <div class="field">
  137.   <label for="scoredelay">$name_chrono:</label>
  138.   <input size="7" id="scoredelay" name="scoredelay" value="$scoredelay" /> $name_secondes.
  139.  </div>
  140.  <div class="field">
  141.      <label>
  142.       !formcheckbox random list 0 prompt $name_aleaseries
  143.      </label>
  144.  </div>
  145. !set translation_language=!getdef translation_language in INDEX
  146. !if $translation_language!=$empty
  147.   !set translation_language=$module_language,$translation_language
  148.   !set translation_language=!words2items $translation_language
  149.   !set translation_language=!sort items $translation_language
  150.   <div class="field">
  151.    <label for="lang_choice">$wims_name_Language:</label>
  152.    !formradio lang_choice list $translation_language
  153.   </div>
  154. !endif
  155. </fieldset>
  156. !if expert notwordof $special_parm2 and yes notin $expert_option
  157.   <fieldset class="oef_expert">
  158.     <legend>$name_simplifiedmenu</legend>
  159.   <div class="field">
  160.   <label for="qcmlevel">$name_levelseverity:</label>
  161.  !default qcmlevel=3
  162.  !formselect qcmlevel from 1 to 9
  163.  </div>
  164. </fieldset>
  165. !else
  166.    !!default intro_check=1,2,3,4
  167.    !read oef/default
  168.    !default intro_sepow=1
  169.    !default intro_expow=1
  170.    !default intro_precw=1
  171.    !default intro_presentsol=1
  172.     <fieldset class="oef_expert">
  173.     <legend>$name_expertmenu</legend>
  174.     <div class="field">
  175.      <label for="intro_presentsol">$name_solutiongiven? </label>
  176.      !formselect intro_presentsol list 0,1,2 prompt $name_choice
  177.     </div>
  178.     <div class="field">
  179.      <label>
  180.       !formcheckbox  intro_check list 3 prompt $(name_choice_check[3])
  181.      </label>
  182.     </div>
  183.     <div class="field">
  184.      <label>
  185.       !formcheckbox intro_check list 4 prompt $(name_choice_check[4])
  186.      </label>
  187.     </div>
  188.     <div class="field">
  189.      $name_expower:
  190.      <div>
  191.       !formradio intro_expow list $list_expow prompt $name_prompt_expower
  192.      </div>
  193.     </div>
  194.     <div class="field">
  195.     $name_sepower:
  196.       <div>
  197.       !formradio intro_sepow list $list_sepow prompt $name_prompt_sepower
  198.       </div>
  199.     <div class="formHelp"> $name_warning_pow</div>
  200.      </div>
  201.     <div class="field">
  202.      $name_precweight
  203.       <div>
  204.       !formbar intro_precw list $list_precw
  205.      </div>
  206.     </div>
  207. <hr />
  208. $name_qcm
  209. !default intro_qcmpresent=4
  210.     <div class="field">
  211.      <label for="intro_qcmpresent">$name_qcmanswer: </label>
  212.      !formselect intro_qcmpresent list 2,3,4,5,6,7,8
  213.     </div>
  214.     <div class="field">
  215.      <label>
  216.       !formcheckbox intro_check list 1 prompt $(name_choice_check[1])
  217.      </label>
  218.     </div>
  219.     <div class="field">
  220.      <label>
  221.       !formcheckbox intro_check list 2 prompt $(name_choice_check[2])
  222.      </label>
  223.     </div>
  224.  
  225.     !let tmp=!replace word expert by $ in $special_parm2
  226.     !set tmp3=!replace internal intro_expert=yes by $ in $special_parm3
  227.     !set tmp3=$tmp3 intro_expert=no
  228.     <input type="hidden" name="intro_expert" value="yes" />
  229.  
  230.    !set wims_ref_class=wims_button
  231.    <p class="oef_intro_buttons">
  232.     !href module=$module&special_parm=$special_parm&special_parm2=$tmp&special_parm3=$tmp3&special_parm4=$special_parm4 $name_simplifiedmenu
  233.    </p>
  234.    </div>
  235.    </fieldset>
  236. !else
  237.    !let tmp=$special_parm2 expert
  238.    !set tmp3=!replace internal intro_expert=no by $ in $special_parm3
  239.    !set tmp3=$tmp3 intro_expert=yes
  240.    !set wims_ref_class=wims_button
  241.    <p class="oef_intro_buttons">
  242.     !href module=$module&special_parm=$special_parm&special_parm2=$tmp&special_parm3=$tmp3&special_parm4=$special_parm4 $name_expertmenu
  243.    </p>
  244. !endif
  245. </div>
  246.  
  247. <div class="oef_intro_buttons">
  248.         <input type="submit" value="$wims_name_work" />&nbsp;
  249.         <input type="submit" name="print" value="$name_print" />
  250.         <input type="hidden" name="special_parm2" value="$special_parm2" />
  251.         <input type="hidden" name="special_parm4" value="$special_parm4" />
  252. </div>
  253.  
  254. !formend
  255.  
  256. !if $exocnt>10
  257.  !form intro
  258.  <input type="hidden" name="special_parm2" value="select $special_parm2" />
  259.  <input type="hidden" name="special_parm3" value="$special_parm3" />
  260.  <input type="hidden" name="special_parm4" value="$special_parm4" />
  261.  <input type="hidden" name="module" value="$module" />
  262.  $name_select
  263.  <input size="12" maxlength="12" name="special_parm" value="$special_parm" />
  264.  <input type="submit" value="$wims_name_send" />
  265.  
  266.  !formend
  267. !endif
  268.  
  269. $name_remarkintro1
  270.  
  271. !if * isin $titlelist
  272.  <p>
  273.   $name_remarkintro2
  274.  </p>
  275. !endif
  276.  
  277. <div class="wims_smallremark">
  278. $name_remarkintro3
  279. </div>
  280.  
  281. !! very tricky ...
  282. !reset authorlist
  283. !set dictionary=$module_dir/$(class_header)Exauthors
  284. !set translator_unknown=delete
  285. !set exolist_cnt=!itemcnt $exolist
  286. !for ex = 1 to  $exolist_cnt
  287.   !if - notin $(exolist[$ex])
  288.    !set tmp=!exec translator $(exolist[$ex])
  289.    !set tmp=!replace internal , by $ $ in $tmp
  290.    !set tmp=!singlespace $tmp
  291.    !set authorlist=!append item $tmp to $authorlist
  292.   !endif
  293. !next
  294. !set authorlist=!replace internal $translator_unknown by in $authorlist
  295. !set authorlist=!replace internal ; by , in $authorlist
  296. !if $authorlist!= and $authorlist notsametext $exolist
  297.   !set authorlist=!listuniq $authorlist
  298.   !set tmp=!items2words $module_author
  299.   !set tmp=!replace internal ; by ,$  in $tmp
  300.   !set tmp=!singlespace $tmp
  301.   !set authorlist=!singlespace $authorlist
  302.   !!set authorlist1=!listcomplement $tmp in $authorlist
  303.   !set authorlist1=$authorlist
  304.   !set authorlist_cnt=!itemcnt $authorlist1
  305.   !set authorlist=!replace internal , by ,$ $ in $authorlist
  306.   !if $authorlist_cnt > 0
  307.    <div class="wims_contribute">$name_Contribute $authorlist.</div>
  308.   !endif
  309. !endif
  310.  
  311. !if $wims_class!=$empty and $wims_user=supervisor and classes notin $module
  312.     !set wims_menu_items=!append line addallexo,1,module=adm/class/addmodule&job=addallexo&dir=$module&scoring=$module_scoring\
  313. ,0, to $wims_menu_items
  314. !endif
  315.