Subversion Repositories wimsdev

Rev

Rev 12393 | Rev 12459 | 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. !read oef/default
  15.  
  16. !!!#### contributions
  17. !! very tricky ...
  18. !reset authorlist
  19. !set dictionary=$module_dir/$(class_header)Exauthors
  20. !set translator_unknown=delete
  21. !set exolist_cnt=!itemcnt $exolist
  22. !for ex = 1 to $exolist_cnt
  23.   !if - notin $(exolist[$ex])
  24.     !set tmp=!exec translator $(exolist[$ex])
  25.     !set tmp=!replace internal , by $ $ in $tmp
  26.     !set tmp=!singlespace $tmp
  27.     !set authorlist=!append item $tmp to $authorlist
  28.   !endif
  29. !next ex
  30. !set authorlist=!replace internal $translator_unknown by in $authorlist
  31. !set authorlist=!replace internal ; by , in $authorlist
  32. !if $authorlist!= and $authorlist notsametext $exolist
  33.   !set authorlist=!listuniq $authorlist
  34.   !set tmp=!items2words $module_author
  35.   !set tmp=!replace internal ; by ,$ in $tmp
  36.   !set tmp=!singlespace $tmp
  37.   !set authorlist=!singlespace $authorlist
  38.   !!set authorlist1=!listcomplement $tmp in $authorlist
  39.   !set authorlist1=$authorlist
  40.   !set authorlist_cnt=!itemcnt $authorlist1
  41.   !set authorlist=!replace internal , by ,$ $ in $authorlist
  42.   !if $authorlist_cnt > 0
  43.     <div class="wims_contribute">$name_Contribute $authorlist.</div>
  44.   !endif
  45. !endif
  46.  
  47. !set test_data=!replace internal data/ by in $module_data
  48. !set test_data=!defof title in datamodule/$test_data/INDEX
  49. !if $test_data= and $module_data!=
  50.   <p class="name_datamodule">
  51.    <i>$name_datamodule</i>
  52.   </p>
  53. !endif
  54. <hr style="width:35%" />
  55.  
  56. !if robot isin $session
  57.   !changeto content.html
  58. !endif
  59.  
  60. !if $special_parm3!=$empty
  61.   !let tmp=!replace internal ; by $ $ in $special_parm3
  62. !!!should use the script getparm
  63.   !set testw=!replace internal ; by $\
  64. $ in $special_parm3
  65.   !set testw=!replace internal = by , in $testw
  66.   !for cle in exo,qnum,qcmlevel,scoredelay,intro_qcmpresent,intro_presentsol,intro_feedsol,\
  67.    intro_check,intro_check3,intro_check4,intro_sepow,intro_expow,intro_precw,random,confparm1,confparm2,confparm3,\
  68.    confparm4,confparm5,confparm6,confparm7,confparm8,intro_expert,seedrepeat,exotrymax
  69.     !set testw0=!select $testw where column 1=$cle
  70.     !set get_$cle=$(testw0[;2..-1])
  71.     !set get_$cle=!singlespace $(get_$cle)
  72.     !set get_$cle=!words2items $(get_$cle)
  73.     !set get_$cle=!listuniq $(get_$(cle))
  74.     !default $(cle)=$(get_$cle)
  75.   !next cle
  76.   !default intro_check3=!listintersect $intro_check and 30,31,32,33,34,35
  77.   !default intro_check4=!listintersect $intro_check and 40,41,42,43,44,45
  78.   !if $scoredelay=0
  79.     !reset scoredelay
  80.   !endif
  81.   !if $exo=0
  82.     !reset exo
  83.   !endif
  84.   !if yes isin $intro_expert
  85.     !let special_parm2=!append word expert to $special_parm4
  86.   !endif
  87. !endif
  88.  
  89. !if $wims_class!=$empty and $wims_user=supervisor and ($special_parm3=$empty or intro_expert isin $special_parm3)
  90.   !default qnum=$wims_oefdefault_qnum
  91.   !default qcmlevel=$wims_oefdefault_qcmlevel
  92.   !default scoredelay=$wims_oefdefault_scoredelay
  93.   !default intro_qcmpresent=$wims_oefdefault_qcmpresent
  94.   !default intro_presentsol=$wims_oefdefault_presentsol
  95.   !default intro_check=$wims_oefdefault_check
  96.   !default intro_sepow=$wims_oefdefault_sepow
  97.   !default intro_expow=$wims_oefdefault_expow
  98.   !default intro_precw=$wims_oefdefault_precw
  99.   !default seedrepeat=$wims_oefdefault_seedrepeat
  100.   !default exotrymax=$wims_oefdefault_exotrymax
  101.   !let special_parm2=$special_parm
  102.   !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$wims_oefdefault_seedrepeat!=$empty)
  103.     !let expert_option=yes
  104.   !else
  105.     !let expert_option=no
  106.   !endif
  107. !endif
  108. !reset special_parm3
  109.  
  110. !if ////classes/ isin ////$module
  111.   !set class_header=wimshome/log/classes/$wims_class/
  112. !endif
  113.  
  114. !read $(class_header)Exindex
  115. !set exocnt=!itemcnt $exolist
  116. !set qcnt=$[min($exocnt,15)]
  117. !if $wims_user=supervisor and #classes/ isin #$module
  118.  !set wims_menu_items=!append line add_exo,1,module=adm/createxo\
  119.       to $wims_menu_items
  120.   !if $exocnt<1
  121.     !exit
  122.   !endif
  123. !else
  124.   !if $exocnt<1
  125.     $name_noexercise
  126.     !exit
  127.   !endif
  128. !endif
  129.  
  130. !if $lang notsametext $module_language and $(titlelist_$lang) notsametext
  131.   !set titlelist=$(titlelist_$lang)
  132. !endif
  133.  
  134. !!if $exocnt=1
  135. !! $name_oneexercise, <span class="bold">
  136. !! !item 1 of $titlelist
  137. !! </span>.
  138. !! !else
  139. !!   !if $wims_user=supervisor
  140. !!  <div class="formHelp">
  141. !!   $name_remarkallexo
  142. !!  </div>
  143. !!   !endif
  144. !!!endif
  145.  
  146. !form new
  147. <input type="hidden" name="module" value="$module" />
  148. <div id="oef_intro_params">
  149.   <h2 class="legend oef_name_menu">$name_menu</h2>
  150.   <div class="formHelp">$name_remarkintro1</div>
  151.  
  152.   <fieldset class="property_fields blockcenter" id="general_parms">
  153.     <legend>$name_general_parms</legend>
  154. !if $oefintro_custom_select=$empty
  155.       <div class="field">
  156.   !if $exocnt>1
  157.     !set special_parm=!trim $special_parm
  158.     !if select iswordof $special_parm2 and $special_parm notsametext $empty
  159.         <span>$name_chooseexo$name_exercisescontaining</span> &laquo;<em style="color:blue">$special_parm</em>&nbsp;&raquo;&nbsp;:
  160.     !endif
  161.   !endif
  162.   !read oef/select.phtml
  163.       </div>
  164.  
  165.   !if * isin $titlelist
  166.         <p>$name_remarkintro2</p>
  167.   !endif
  168. !else
  169.   !read $oefintro_custom_select
  170. !endif
  171.   </fieldset>
  172.  
  173. !!test if there is an introhook
  174. !if _classes/ isin _$module
  175.   !set introhook_exists=no
  176. !else
  177.   !readproc introhook.phtml
  178.   !if $introhook_exists=$empty
  179.     !set tmp=!record 0 of introhook.phtml
  180.     !if $tmp=$empty
  181.       !!! only comment in the file introhook.phtml
  182.       !set introhook_exists=no
  183.       !reset tmp
  184.     !endif
  185.   !endif
  186. !endif
  187. !if $introhook_exists!=no
  188.   <fieldset class="introhook property_fields blockcenter">
  189.     <legend>$name_module_setup</legend>
  190.   !if $introhook_tableless=yes
  191.     !read introhook.phtml
  192.   !else
  193.       <table>
  194.     !read introhook.phtml
  195.       </table>
  196.   !endif
  197.   </fieldset>
  198. !endif
  199.  
  200. !if $oefintro_custom_series_setup=$empty
  201.   !read oef/intromenu_series.phtml
  202. !endif
  203.  
  204. !set wims_ref_class=wims_button
  205. !set trimmed_parm2=!trim $special_parm2
  206. !set trimmed_parm3=!trim $special_parm3
  207.  
  208. !if expert notwordof $trimmed_parm2 and yes notin $expert_option
  209.   <p class="oef_intro_buttons" id="score_setup">
  210.   !set trimmed_parm2=$trimmed_parm2 expert
  211.   !set trimmed_parm3=!replace internal intro_expert=no by $ in $trimmed_parm3
  212.   !set trimmed_parm3=$trimmed_parm3 intro_expert=yes
  213.   !href module=$module&special_parm=$special_parm&special_parm2=$trimmed_parm2&special_parm3=$trimmed_parm3&special_parm4=$special_parm4#general_parms $name_expertmenu
  214.  </p>
  215.   <fieldset class="oef_expert property_fields blockcenter">
  216.     <legend>$name_score_setup</legend>
  217.     <div class="field">
  218.       <label for="qcmlevel">$name_levelseverity:</label>
  219.   !default qcmlevel=$(default_choice[2])
  220.   !formselect qcmlevel from 1 to 9
  221.       <div class="formHelp">$name_warning_levelseverity</div>
  222.     </div>
  223.   </fieldset>
  224. !else
  225.   <p class="oef_intro_buttons" id="score_setup">
  226.   !set trimmed_parm2=!replace word expert by $ in $trimmed_parm2
  227.   !set trimmed_parm3=!replace internal intro_expert=yes by $ in $trimmed_parm3
  228.   !set trimmed_parm3=$trimmed_parm3 intro_expert=no
  229.   !href module=$module&special_parm=$special_parm&special_parm2=$trimmed_parm2&special_parm3=$trimmed_parm3&special_parm4=$special_parm4#general_parms $name_simplifiedmenu_back
  230.  </p>
  231.   <fieldset class="oef_expert property_fields blockcenter">
  232.     <legend>$name_score_setup</legend>
  233.   !!default intro_check=1,2,3,4
  234.   !reset name_prompt_expower2 name_prompt_sepower2
  235.   !set powercnt=!itemcnt $list_expow
  236.   !for j=1 to $powercnt
  237.     !set name_prompt_expower2=!append item $(name_prompt_expower[$j]) ($(list_expow[$j])) to $name_prompt_expower2
  238.     !set name_prompt_sepower2=!append item $(name_prompt_sepower[$j]) ($(list_sepow[$j])) to $name_prompt_sepower2
  239.   !next
  240.   !default intro_sepow=$(list_sepow[1])
  241.   !default intro_expow=$(list_expow[1])
  242.   !default intro_precw=$(list_precw[1])
  243.  
  244.   <input type="hidden" name="intro_expert" value="yes" />
  245.       <div class="field">
  246.     $name_expower:
  247.         <div>
  248.   !set wims_ref_class=wims_formradio
  249.   !formradio intro_expow list $list_expow prompt $name_prompt_expower2
  250.           <div class="formHelp">$name_warning_expower</div>
  251.         </div>
  252.       </div>
  253.       <div class="field">
  254.         $name_sepower:
  255.         <div>
  256.   !set wims_ref_class=wims_formradio
  257.   !formradio intro_sepow list $list_sepow prompt $name_prompt_sepower2
  258.          <div class="formHelp">
  259.     $name_warning_sepower $name_warning_pow
  260.          </div>
  261.         </div>
  262.        </div>
  263.       <div class="field">
  264.         $name_precweight:
  265.   !set wims_ref_class=wims_formradio
  266.   !formradio intro_precw list $list_precw
  267.         <div class="formHelp">$name_help_precweight</div>
  268.       </div>
  269.       </fieldset>
  270.     <fieldset class="oef_expert property_fields blockcenter">
  271.     <legend>$name_help_setup</legend>
  272.         <div class="field">
  273.   !! about good_answer print 3 31 32 33 34 35
  274.   !set wims_ref_id=introcheck3
  275.     <strong>$(name_choice_check[3])</strong>
  276.   !!never, always, at the version number n
  277.   !formradio intro_check3 list 30,31 prompt $name_choice
  278.     $(name_tries[1])
  279.   !formradio intro_check3 list $(version3_list[3..$limit_version]) \
  280.     prompt $(version_list[3..$limit_version])
  281.     $(name_tries[2])
  282.       <div class="formHelp">
  283.         $name_help_introcheck3
  284.       </div>
  285.     </div>
  286.   !! about present solution
  287.       <div class="field">
  288.         <strong>$name_solutiongiven</strong>
  289.   !default intro_presentsol=$(default_choice[3])
  290.   !set wims_ref_id=presentsol1
  291.   !formradio intro_presentsol list 0,2 prompt $name_choice
  292.     $(name_tries[1])
  293.   !formradio intro_presentsol list $(version_list[4..$limit_version+1]) prompt \
  294.     $(version_list[3..$limit_version])
  295.     $(name_tries[2])
  296.       </div>
  297.   !! about present feedback
  298.       <div class="field">
  299.         <strong>$name_feedgiven</strong>
  300.   !default intro_presentfeed=$(default_choice[3])
  301.   !set wims_ref_id=presentfeed1
  302.   !formradio intro_presentfeed list 0,2 prompt $name_choice
  303.     $(name_tries[1])
  304.   !formradio intro_presentfeed list $(version_list[4..$limit_version+1]) prompt \
  305.     $(version_list[3..$limit_version])
  306.     $(name_tries[2])
  307.         <div class="formHelp">
  308.         $name_help_presentfeed
  309.          </div>
  310.       </div>
  311.   !! about hint
  312.       <div class="field">
  313.     <strong>$(name_choice_check[4])</strong>
  314.   !set wims_ref_id=introcheck4
  315.   !!jamais, toujours, après le nombre de versions
  316.   !formradio intro_check4 list 40,41 prompt $name_choice
  317.     $(name_tries[1])
  318.   !formradio intro_check4 list $(version4_list[3..$limit_version]) prompt\
  319.     $(version_list[3..$limit_version])
  320.     $(name_tries[2])
  321.       </div>
  322.     </fieldset>
  323.   !if $oefintro_custom_choices_setup=$empty
  324.     !read oef/intromenu_choices.phtml
  325.   !endif
  326. !endif
  327. </div>
  328.  
  329. <div class="oef_intro_buttons spacer" id="oef_intro_launch">
  330.   <button type="submit" class="wims_button icon_button">
  331.     <span class="work">$wims_name_work</span>
  332.   </button>&nbsp;
  333.   <button type="submit" class="wims_button wims_secondary_button icon_button" name="print" id="print" value="yes">
  334.     <span class="printable">$name_print</span>
  335.   </button>
  336.   <input type="hidden" name="special_parm2" value="$special_parm2" />
  337.   <input type="hidden" name="special_parm4" value="$special_parm4" />
  338. </div>
  339.  
  340. !formend
  341.  
  342. !if $exocnt>10
  343.   !form intro
  344.     <input type="hidden" name="special_parm2" value="select $special_parm2" />
  345.     <input type="hidden" name="special_parm3" value="$special_parm3" />
  346.     <input type="hidden" name="special_parm4" value="$special_parm4" />
  347.     <input type="hidden" name="module" value="$module" />
  348.     <label for="special_parm">$name_select</label>
  349.     <input size="12" maxlength="12" name="special_parm" value="$special_parm" id="special_parm" />
  350.     <input type="submit" value="$wims_name_send" />
  351.   !formend
  352. !endif
  353.  
  354. !if expert iswordof $special_parm2 or yes isin $expert_option
  355.   <div class="formHelp">
  356.   $name_remarkseverity
  357.   !read oef/helpseverity
  358.   !read oef/helppenality
  359.   </div>
  360. !endif
  361.  
  362. !if $wims_class!=$empty and $wims_user=supervisor and (../devel/ notin ../$module or $wims_devel_modules iswordof open)
  363.   !set wims_menu_items=!append line addallexo,1,module=adm/class/addmodule&job=addallexo&dir=$module&scoring=$module_scoring\
  364. ,0, to $wims_menu_items
  365. !endif
  366.