Subversion Repositories wimsdev

Rev

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

  1. !!##preparation of the "bottom menu"
  2.  
  3. !if _check isin $session or $wims_mode=popup
  4.  !exit
  5. !endif
  6.  
  7. !if _test isin $session and $wims_hacked_variables!=$empty
  8.  <p><span class="wims_warning">WIMS WARNING</span>. The following variables of your module could be hacked
  9.  by students using manually modified http addresses! You might want to put more
  10.  strict permissions to them in var.def, in order to build a secure exercise module.
  11.  </p>
  12.  <pre>$wims_hacked_variables</pre>
  13.  
  14. !endif
  15.  
  16. !read name.phtml.$lang
  17. !default wims_homeref_bgcolor=$wims_ref_bgcolor
  18. !read themes/$wims_theme/local.phtml
  19. !if exam isin $wims_session
  20.  !set wims_hr_r=$[max(0,$wims_exam_remain)]
  21.  !set wims_hr_rm=$[floor($wims_hr_r/60)]
  22.  !set wims_hr_rs=!char 2,3 of $[$wims_hr_r%60+100]
  23.  !set wims_homeref_special=$wims_name_examremain $wims_hr_rm:$wims_hr_rs ($wims_name_whenloaded)
  24.  !goto rmend
  25. !endif
  26.  
  27. !if $wims_rm_1=no
  28.  !reset wims_rm_1
  29.  !goto local
  30. !endif
  31. !if $wims_rm_1!=$empty
  32.  !goto rm2
  33. !endif
  34. !reset 1_
  35.  
  36. !!********* Link #1 : "Close Window" or "Home" (Not Shown if Embedded)
  37. !if _ isin $wims_subsession
  38.  !set 1_=!append line back2,3,window.close() to $1_
  39. !else
  40.  !set 1_=!append line class_home,1,session=$wims_session.1 to $1_
  41. !endif
  42.  
  43. !!********* Link #2 : "Sheet"
  44. !if $wims_sheet>0 or P isin $wims_sheet
  45.  !if $wims_sheet>0
  46.   !set tmp_=sheetmanagement,1,module=adm/class/sheet&sheet=$wims_sheet
  47.  !else
  48.   !set tmp_=sheet,1,module=adm/sheet&sh=$wims_sheet&
  49.  !endif
  50.  !if yes notin $wims_lightpopup
  51.     !set 1_=!append line $tmp_ to $1_
  52.  !endif
  53.  !let wims_menu_items=!append line $tmp_ to $wims_menu_items
  54.  !if $wims_exo>1
  55.   !let wims_menu_items=!append line previousseries,1,module=home&directworksheet=$wims_sheet.$[$wims_exo-1] to $wims_menu_items
  56.  !endif
  57.  !if $wims_exo<$wims_sheetmax
  58.   !let wims_menu_items=!append line nextseries,1,module=home&directworksheet=$wims_sheet.$[$wims_exo+1] to $wims_menu_items
  59.  !endif
  60. !endif
  61.  
  62. !if $wims_sheet>0 or P isin $wims_sheet
  63.  !if $(wims_exofeedback[$wims_exo;])!=$empty
  64.   !set feedexo=$(wims_exofeedback[$wims_exo;])
  65.     !if $module_score!=$empty and $module_score < $(feedexo[2]) and $module_score >= $(feedexo[3])
  66.      !if $(feedexo[3])=0 or $(feedexo[3])=$empty
  67.       !set 5_=!append line feedbackexo,7,$(feedexo[1]),mfeed to $5_
  68.     !else
  69.       !set 5_=!append line feedbackplus,7,$(feedexo[1]),mfeed to $5_
  70.     !endif
  71.   !endif
  72.  !endif
  73. !endif
  74.  
  75. !!********* Link #3 : "Resume"
  76. !if $cmd=help or $cmd=hint
  77.  !set 1_=!append line resume,1,cmd=resume to $1_
  78. !endif
  79.  
  80. !!********* Link #4 : "Introduction" (Not Shown if Embedded)
  81. !if $module_has_intro=yes and $cmd notwordof intro help and\
  82.         $wims_sheet=$empty and exam notin $wims_session
  83.  !set 1_=!append line intro,1,module=$module&cmd=intro&special_parm=$special_parm&special_parm2=$special_parm2&special_parm3=$special_parm3&special_parm4=$special_parm4 to $1_
  84. !endif
  85.  
  86. !!********* Link #5 : "Help"
  87. !if $module_has_help=yes and $cmd notwordof intro help
  88.  !if $module_help=$empty or $module_help=popup
  89.   !set 1_=!append line help,4,module=$module&cmd=help&special_parm=$wims_help_parm,mhelp to $1_
  90.  !else
  91.   !set 1_=!append line help,1,module=$module&cmd=help&special_parm=$wims_help_parm to $1_
  92.  !endif
  93. !endif
  94.  
  95. !!********* Link #6 : "About"
  96. !if $module_has_about=yes and $cmd notwordof help intro
  97.  !set 1_=!append line about,4,module=$module&cmd=help&special_parm=about,mhelp to $1_
  98. !endif
  99. !if print isin $job,$job2 or $print!=
  100.   !set 1_=!append line print,3,window.print() to $1_
  101. !endif
  102.  
  103. !set wims_rm_1=$1_
  104.  
  105. :local
  106. !reset 1_
  107. !if $wims_developer!=$empty and COPYING isin $module_copyright and ../classes/ notin ../$module
  108.  !set V_=!char 1 of $module
  109.  !set M_=!translate internal / to , in $module
  110.  !set M_=!item 1 of $M_
  111.  !if $V_ isin ABCDEFGHIJKLMNOPQRTSUVWXYZ or $M_ iswordof local contrib tool
  112.   !set 1_=!append line modify,1,module=adm/modtool&original=$module to $1_
  113.  !endif
  114. !endif
  115. !if $wims_user=supervisor and _adm/doc notin _$module and adddoc notin $module and (document iswordof $module_category or tool iswordof $module_category)
  116.   !if document iswordof $module_category
  117.     !set wims_homeref_parm=block=$block&doc=$doc
  118.   !endif
  119.   !set 1_=!append line adddoc,1,module=adm/class/adddoc&dir=$module&iniparm=$wims_homeref_parm to $1_
  120.   !set 1_=!append line addh,1,module=adm/class/addmodule&job=helpexo&dir=$module&iniparm=$wims_homeref_parm to $1_
  121. !endif
  122. !if $special_parm4=$empty
  123.  !if $cmd!=intro and $cmd!=help and $module!=home and \
  124.         ../adm/ notin ../$module and \
  125.         (../devel/ notin ../$module or $wims_devel_modules iswordof open) \
  126.         and exercise isin $module_category
  127.   !set wims_homeref_parm=!replace % by %25 in $module_init_parm
  128.   !set wims_homeref_parm=!replace + by %2B in $wims_homeref_parm
  129.   !set wims_homeref_parm=!replace & by %26 in $wims_homeref_parm
  130.   !set 1_=!append line add,1,module=adm/class/addmodule&dir=$module&scoring=$module_scoring&iniparm=$wims_homeref_parm to $1_
  131.   !set 1_=!append line addh,1,module=adm/class/addmodule&job=helpexo&dir=$module&scoring=$module_scoring&iniparm=$wims_homeref_parm to $1_
  132.  !endif
  133.  !if $wims_user=supervisor and exam notin $session and \
  134.         ..classes/ notin ..$module and ..adm/ notin ..$module and \
  135.         ..devel/ notin ..$module and \
  136.         GNU isin $module_copyright and \
  137.         _check notin $session and \
  138.         $class_importation!=no and\
  139.         $thisexo!=
  140.   !set 1_=!append line import,1,module=adm/createxo&existing=$thisexo&catmodule=$module to $1_
  141.  !endif
  142.  
  143. !else
  144. !! ----- place pour ajouter le lien vers la modification de serie dans une feuille
  145.  !if $cmd!=intro and $cmd!=help and $module!=home and \
  146.         ../adm/ notin ../$module and \
  147.         (../devel/ notin ../$module or $wims_devel_modules iswordof open)
  148.   !set wims_homeref_parm=!replace % by %25 in $module_init_parm
  149.   !set wims_homeref_parm=!replace + by %2B in $wims_homeref_parm
  150.   !set wims_homeref_parm=!replace & by %26 in $wims_homeref_parm
  151.   !set 1_=!append line chseries,1,module=adm/class/sheet&dir=$module&scoring=$module_scoring&iniparm=$wims_homeref_parm&job=chseries&num=$special_parm4 to $1_
  152.  !endif
  153. !endif
  154.  
  155. !set 1_=!append line $wims_menu_items to $1_
  156. !if $wims_user=supervisor and $cmd!=intro and $cmd!=help and $module!=home and \
  157.         ../adm/ notin ../$module
  158.   !set 1_=!append line moduback,1,module=$module&cmd=intro&special_parm=$special_parm&special_parm2=$special_parm2&special_parm3=$special_parm3&special_parm4=$special_parm4 to $1_
  159. !endif
  160. !! next exo and prev exo in the menu for supervisor
  161. !if $wims_user=supervisor and $exoprev$exonext != $empty and $wims_sheet=$empty
  162.    !set 1_=!append line &#8594;,1,cmd=new&module=$module&exo=$exoprev&special_parm=$special_parm&special_parm2=$special_parm2&special_parm3=$special_parm3&special_parm4=$special_parm4  \
  163.  to $1_
  164.    !set 1_=!append line &#8592;,1,cmd=new&module=$module&exo=$exonext&special_parm=$special_parm&special_parm2=$special_parm2&special_parm3=$special_parm3&special_parm4=$special_parm4  \
  165.  to $1_
  166.   !reset exoprev exonext
  167. !endif
  168.  
  169. !if $special_parm4=$empty
  170.  !if $cmd!=intro and $cmd!=help and $module!=home and \
  171.         ../adm/ notin ../$module and \
  172.         (../devel/ notin ../$module or $wims_devel_modules iswordof open) \
  173.         and oef isin $module_category and $wims_classification_open=yes and ../devel/ notin ../$module
  174.    !set 1_=!append line ,0,\
  175.    Indexation,4,module=adm/tool/classification&refdir=$module&iniparm=$wims_homeref_parm,test to $1_
  176.  !endif
  177. !endif
  178. !if $module_score!=$empty and $wims_class_exolog>0 and E notin $wims_sheet
  179.   !set 1_=!append line exolog,1,module=adm/class/exolog&cmd=new&job=log&logsheet=$wims_sheet&logexo=$wims_exo to $1_
  180. !endif
  181.  
  182.  
  183. !! When in lightpopup mode, only links in whitelist are available
  184.  
  185. !if yes isin $wims_lightpopup
  186.     !set whitelist = nextseries,previousseries
  187.     !set nb_elem=!linecnt $1_
  188.     !for a=1 to $nb_elem
  189.         !set element = !line $a of $1_
  190.         !set id = !item 1 of $element
  191.         !if $id isitemof $whitelist
  192.             !set wims_rm_0 = !append line $element to $wims_rm_0
  193.         !endif
  194.     !next
  195. !else
  196.     !set wims_rm_0=$1_
  197. !endif
  198.  
  199. !set wims_rm_3=!append line $wims_menu_tabs to $wims_rm_3
  200. :rm2
  201. !if $wims_rm_2!=$empty
  202.  !goto rmend
  203. !endif
  204. !reset 2_
  205.  
  206. !!********* Link #8 : "Author(s)"
  207.  
  208. !if $module_author!=$empty and @ isin $module_address
  209.  !read namewriting.phtml $module_author
  210.  !set wims_homeref_author_num=$script_cnt
  211.  !set module_address=!replace internal ; by , in $module_address
  212.  !if $wims_homeref_author_num>1
  213.   !set 3_=$wims_name_authors:
  214.  !else
  215.   !set 3_=$wims_name_author:
  216.  !endif
  217.  !set 4_=
  218.  !for ad=1 to $wims_homeref_author_num
  219.    !if $(module_address[$ad])!= and @ isin $(module_address[$ad])
  220.     !set 4__=!mailurl $(module_address[$ad]) $(script_out[$ad])\
  221. WIMS $module_title [$module_language]
  222.    !else
  223.      !set 4__=$(script_out[$ad])
  224.    !endif
  225.     !set 4_=!append item $4__ to $4_
  226.   !next
  227.   !set 2_=!append line author,0,$3_ $4_ to $2_
  228. !endif
  229.  
  230. !!********* Link #9 : "Translator(s)"
  231. !set mod_transl=$(module_translator_$lang)
  232. !if $module_transl!=$empty
  233.    !set module_translator=$mod_transl
  234.    !set module_translator_address=$(module_translator_address_$lang)
  235. !endif
  236.  
  237. !if $module_translator!=$empty and $module_translator_address!=$empty
  238.  !read namewriting.phtml $module_translator
  239.  !set module_translator=$(script_out[1])
  240.  !set wims_homeref_translator_num=$script_cnt
  241.  !set module_translator_address=!replace internal ; by , in $module_translator_address
  242.  !for ad=1 to $wims_homeref_translator_num
  243.    !set 3_=!mailurl $(module_translator_address[$ad]) $(module_translator[$ad])\
  244. WIMS $module_title [$module_language]
  245.    !set 2_=!append line trans,0,$wims_name_translatedby $3_ to $2_
  246.  !next
  247. !endif
  248. !if $wims_theme_version>=1
  249.  !reset 2_
  250. !endif
  251. !set 2_=!append line syou,0,$wims_name_syou to $2_
  252. !set 2_=!append line class,0,$wims_classname ($wims_institutionname) to $2_
  253. !set 2_=!append line time,0,Server time: $wims_now to $2_
  254. !set wims_rm_2=$2_
  255. !set wims_rm_5=$5_
  256.  
  257. :rmend
  258. !set wims_homeref_n1=!linecnt $wims_rm_1
  259. !set wims_homeref_n2=!linecnt $wims_rm_2
  260. !set wims_homeref_n0=!linecnt $wims_rm_0
  261. !set wims_homeref_n3=!linecnt $wims_rm_3
  262. !!</div><!--div dans homeref_supervisor-->
  263. !set wims_homeref_n5=!linecnt $wims_rm_5
  264. !set wims_homeref_local_n0=!linecnt $wims_local_menu_items
  265. !read themes.phtml tail
  266. !robottrap
  267.