Subversion Repositories wimsdev

Rev

Rev 12213 | Rev 12302 | 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,\
  67.    intro_check,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.  !if $scoredelay=0
  77.   !reset scoredelay
  78.  !endif
  79.  !if $exo=0
  80.   !reset exo
  81.  !endif
  82.  !if yes isin $intro_expert
  83.   !let special_parm2=!append word expert to $special_parm4
  84.  !endif
  85. !endif
  86.  
  87. !if $wims_class!=$empty and $wims_user=supervisor and ($special_parm3=$empty or intro_expert isin $special_parm3)
  88.  !default qnum=$wims_oefdefault_qnum
  89.  !default qcmlevel=$wims_oefdefault_qcmlevel
  90.  !default scoredelay=$wims_oefdefault_scoredelay
  91.  !default intro_qcmpresent=$wims_oefdefault_qcmpresent
  92.  !default intro_presentsol=$wims_oefdefault_presentsol
  93.  !default intro_check=$wims_oefdefault_check
  94.  !default intro_sepow=$wims_oefdefault_sepow
  95.  !default intro_expow=$wims_oefdefault_expow
  96.  !default intro_precw=$wims_oefdefault_precw
  97.  !default seedrepeat=$wims_oefdefault_seedrepeat
  98.  !default exotrymax=$wims_oefdefault_exotrymax
  99.  !let special_parm2=$special_parm
  100.  !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)
  101.     !let expert_option=yes
  102.  !else
  103.     !let expert_option=no
  104.  !endif
  105. !endif
  106. !reset special_parm3
  107.  
  108. !if ////classes/ isin ////$module
  109.  !set class_header=wimshome/log/classes/$wims_class/
  110. !endif
  111.  
  112. !read $(class_header)Exindex
  113. !set exocnt=!itemcnt $exolist
  114. !set qcnt=$[min($exocnt,15)]
  115. !if $wims_user=supervisor and #classes/ isin #$module
  116.  !set wims_menu_items=!append line add_exo,1,module=adm/createxo\
  117.   to $wims_menu_items
  118.     !if $exocnt<1
  119.      !exit
  120.     !endif
  121. !else
  122.    !if $exocnt<1
  123.     $name_noexercise
  124.     !exit
  125.    !endif
  126. !endif
  127.  
  128. !if $lang notsametext $module_language and $(titlelist_$lang) notsametext
  129.  !set titlelist=$(titlelist_$lang)
  130. !endif
  131.  
  132. !!if $exocnt=1
  133. !! $name_oneexercise, <span class="bold">
  134. !! !item 1 of $titlelist
  135. !! </span>.
  136. !! !else
  137. !!   !if $wims_user=supervisor
  138. !!  <div class="formHelp">
  139. !!   $name_remarkallexo
  140. !!  </div>
  141. !!   !endif
  142. !!!endif
  143.  
  144. !form new
  145. <input type="hidden" name="module" value="$module" />
  146. <div id="oef_intro_params">
  147.   <h2 class="legend oef_name_menu">$name_menu</h2>
  148.   <div class="formHelp">$name_remarkintro1</div>
  149.  
  150.   <fieldset class="property_fields blockcenter" id="general_parms">
  151.     <legend>$name_general_parms</legend>
  152.     !if $oefintro_custom_select=$empty
  153.       <div class="field">
  154.         !if $exocnt>1
  155.           !set special_parm=!trim $special_parm
  156.           !if select iswordof $special_parm2 and $special_parm notsametext $empty
  157.             <span>$name_chooseexo$name_exercisescontaining</span> &laquo;<em style="color:blue">$special_parm</em>&nbsp;&raquo;&nbsp;:
  158.           !endif
  159.         !endif
  160.         !read oef/select.phtml
  161.       </div>
  162.  
  163.       !if * isin $titlelist
  164.         <p>$name_remarkintro2</p>
  165.       !endif
  166.     !else
  167.       !read $oefintro_custom_select
  168.     !endif
  169.   </fieldset>
  170.  
  171.   !!test if there is an introhook
  172.   !if _classes/ isin _$module
  173.     !set introhook_exists=no
  174.   !else
  175.     !readproc introhook.phtml
  176.     !if $introhook_exists=$empty
  177.       !set tmp=!record 0 of introhook.phtml
  178.       !if $tmp=$empty
  179. !!! only comment in the file introhook.phtml
  180.         !set introhook_exists=no
  181.         !reset tmp
  182.       !endif
  183.     !endif
  184.   !endif
  185.   !if $introhook_exists!=no
  186.     <fieldset class="introhook property_fields blockcenter">
  187.       <legend>$name_module_setup</legend>
  188.       !if $introhook_tableless=yes
  189.         !read introhook.phtml
  190.       !else
  191.         <table>
  192.           !read introhook.phtml
  193.         </table>
  194.       !endif
  195.     </fieldset>
  196.   !endif
  197.  
  198.   !if $oefintro_custom_series_setup=$empty
  199.     !read oef/intromenu_series.phtml
  200.   !endif
  201.  
  202.   !set wims_ref_class=wims_button
  203.   !set trimmed_parm2=!trim $special_parm2
  204.   !set trimmed_parm3=!trim $special_parm3
  205.  
  206.   !if expert notwordof $trimmed_parm2 and yes notin $expert_option
  207.     <p class="oef_intro_buttons" id="score_setup">
  208.       !set trimmed_parm2=$trimmed_parm2 expert
  209.       !set trimmed_parm3=!replace internal intro_expert=no by $ in $trimmed_parm3
  210.       !set trimmed_parm3=$trimmed_parm3 intro_expert=yes
  211.       !href module=$module&special_parm=$special_parm&special_parm2=$trimmed_parm2&special_parm3=$trimmed_parm3&special_parm4=$special_parm4#general_parms $name_expertmenu
  212.    </p>
  213.     <fieldset class="oef_expert property_fields blockcenter">
  214.       <legend>$name_score_setup</legend>
  215.       <div class="field">
  216.         <label for="qcmlevel">$name_levelseverity:</label>
  217.         !default qcmlevel=$(default_choice[2])
  218.         !formselect qcmlevel from 1 to 9
  219.         <div class="formHelp">$name_warning_levelseverity</div>
  220.       </div>
  221.     </fieldset>
  222.   !else
  223.     <p class="oef_intro_buttons" id="score_setup">
  224.       !set trimmed_parm2=!replace word expert by $ in $trimmed_parm2
  225.       !set trimmed_parm3=!replace internal intro_expert=yes by $ in $trimmed_parm3
  226.       !set trimmed_parm3=$trimmed_parm3 intro_expert=no
  227.       !href module=$module&special_parm=$special_parm&special_parm2=$trimmed_parm2&special_parm3=$trimmed_parm3&special_parm4=$special_parm4#general_parms $name_simplifiedmenu_back
  228.    </p>
  229.     <fieldset class="oef_expert property_fields blockcenter">
  230.       <legend>$name_score_setup</legend>
  231.       !!default intro_check=1,2,3,4
  232.       !reset name_prompt_expower2 name_prompt_sepower2
  233.       !set powercnt=!itemcnt $list_expow
  234.       !for j=1 to $powercnt
  235.         !set name_prompt_expower2=!append item $(name_prompt_expower[$j]) ($(list_expow[$j])) to $name_prompt_expower2
  236.         !set name_prompt_sepower2=!append item $(name_prompt_sepower[$j]) ($(list_sepow[$j])) to $name_prompt_sepower2
  237.       !next
  238.       !default intro_sepow=$(list_sepow[1])
  239.       !default intro_expow=$(list_expow[1])
  240.       !default intro_precw=$(list_precw[1])
  241.  
  242.       <input type="hidden" name="intro_expert" value="yes" />
  243.  
  244.       <div class="field">
  245.         <label for="intro_presentsol">$name_solutiongiven? </label>
  246.         !default intro_presentsol=$(default_choice[3])
  247.         !formselect intro_presentsol list 0,1,2 prompt $name_choice
  248.       </div>
  249.  
  250.       <div class="field">
  251.         !set wims_ref_id=introcheck3
  252.         !formcheckbox intro_check list 3 prompt $(name_choice_check[3])
  253.       </div>
  254.  
  255.       <div class="field">
  256.         !set wims_ref_id=introcheck4
  257.         !formcheckbox intro_check list 4 prompt $(name_choice_check[4])
  258.       </div>
  259.  
  260.       <div class="field">
  261.         $name_expower:
  262.         <div>
  263.           !set wims_ref_class=wims_formradio
  264.           !formradio intro_expow list $list_expow prompt $name_prompt_expower2
  265.           <div class="formHelp">$name_warning_expower</div>
  266.         </div>
  267.       </div>
  268.  
  269.       <div class="field">
  270.         $name_sepower:
  271.         <div>
  272.          !set wims_ref_class=wims_formradio
  273.          !formradio intro_sepow list $list_sepow prompt $name_prompt_sepower2
  274.          <div class="formHelp">
  275.           $name_warning_sepower $name_warning_pow
  276.          </div>
  277.         </div>
  278.        </div>
  279.  
  280.       <div class="field">
  281.         $name_precweight:
  282.         !set wims_ref_class=wims_formradio
  283.         !formradio intro_precw list $list_precw
  284.         <div class="formHelp">$name_help_precweight</div>
  285.       </div>
  286.       <div class="field">
  287.        $name_seedrepeat:
  288.        !set wims_ref_class=wims_formradio
  289.         !set wims_ref_id=seedrepeat
  290.         !formradio seedrepeat list 0,1 prompt $wims_name_no,$wims_name_yes
  291.       </div>
  292.       !if $wims_user=supervisor
  293.        !! <div class="field">
  294.        !! name_seed:
  295.         !!<input size="12" maxlength="12" name="seed" value="$seed" id="seed" />
  296.        !!</div>
  297.         <div class="field">
  298.         $name_exotrymax:
  299.         <input size="12" maxlength="12" name="exotrymax" value="$exotrymax" id="exotrymax" />
  300.         </div>
  301.       !endif
  302.     </fieldset>
  303.     !if $oefintro_custom_choices_setup=$empty
  304.       !read oef/intromenu_choices.phtml
  305.     !endif
  306.   !endif
  307. </div>
  308.  
  309. <div class="oef_intro_buttons spacer" id="oef_intro_launch">
  310.   <button type="submit" class="wims_button icon_button">
  311.     <span class="work">$wims_name_work</span>
  312.   </button>&nbsp;
  313.   <button type="submit" class="wims_button wims_secondary_button icon_button" name="print" id="print" value="yes">
  314.     <span class="printable">$name_print</span>
  315.   </button>
  316.   <input type="hidden" name="special_parm2" value="$special_parm2" />
  317.   <input type="hidden" name="special_parm4" value="$special_parm4" />
  318. </div>
  319.  
  320. !formend
  321.  
  322. !if $exocnt>10
  323.   !form intro
  324.     <input type="hidden" name="special_parm2" value="select $special_parm2" />
  325.     <input type="hidden" name="special_parm3" value="$special_parm3" />
  326.     <input type="hidden" name="special_parm4" value="$special_parm4" />
  327.     <input type="hidden" name="module" value="$module" />
  328.     <label for="special_parm">$name_select</label>
  329.     <input size="12" maxlength="12" name="special_parm" value="$special_parm" id="special_parm" />
  330.     <input type="submit" value="$wims_name_send" />
  331.   !formend
  332. !endif
  333.  
  334. !if expert iswordof $special_parm2 or yes isin $expert_option
  335.   <div class="formHelp">
  336.     $name_remarkseverity
  337.     !read oef/helpseverity
  338.     !read oef/helppenality
  339.   </div>
  340. !endif
  341.  
  342. !if $wims_class!=$empty and $wims_user=supervisor and (../devel/ notin ../$module or $wims_devel_modules iswordof open)
  343.     !set wims_menu_items=!append line addallexo,1,module=adm/class/addmodule&job=addallexo&dir=$module&scoring=$module_scoring\
  344. ,0, to $wims_menu_items
  345. !endif
  346.