Subversion Repositories wimsdev

Rev

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

  1. !read adm/css.phtml
  2. !read adm/class/classname.phtml $wims_classname\
  3. $wims_institutionname
  4.  
  5. !header1
  6.  
  7. <script type="text/javascript" src="scripts/js/wz_tooltip.js"></script>
  8. !! not useful ???
  9. !!!if $cmd=help
  10.  !! !read lang/help.phtml
  11. !! !goto end
  12. !!!endif
  13.  
  14. !if $job!=$empty and $job!=sheets
  15.  !read $job.phtml
  16.  !goto end
  17. !endif
  18.  
  19. !read adm/title.phtml 1\
  20. $classname\
  21. $wims_name_part_list ($usercnt)
  22.  
  23. !if $error!=$empty
  24.  <div class="wims_alertmsg">
  25.  !read lang/msg.phtml.$moduclass_lang
  26.  </div>
  27.  !set wims_ref_class=wims_button
  28.  !if $wims_class!=$empty
  29.    !href module=home $wims_name_class_home
  30.  !else
  31.    !href module=home $wims_name_home
  32.  !endif
  33.  !goto end
  34. !endif
  35.  <div class="wimscenter">
  36.  !set class_Supervisor=!defof class_Supervisor in wimshome/log/classes/$wims_class/.def
  37. !!##  the administrator at the level of the portal or the creator of the class can add a teacher to
  38. !!##  the list of teachers of his class
  39. !if ($wims_typename iswordof group or $class_Supervisor=$wims_realuser) and $wims_supertype=2
  40.  !default wims_superclass=$wims_class
  41.  !set teacherlist=!record 0 of wimshome/log/classes/$wims_superclass/.teacherlist
  42.  !set teachercnt=!linecnt $teacherlist
  43.  !if $teachercnt>0
  44.   !set wims_ref_class=wims_button
  45.   !href cmd=renew&job=teacher $wims_name_teacherlist
  46.   &nbsp;
  47.  !endif
  48. !!## only the administrator has the right to add a teacher to the superclass
  49. !if $wims_typename iswordof group and $wims_supertype=2
  50.   !set wims_ref_class=wims_button
  51.   !href module=adm/class/reguser&step=1&utype=1 $wims_name_addteacher
  52.    &nbsp;
  53.  !endif
  54. !endif wims_typename=group etc
  55. !set typen=!defof class_typename in wimshome/log/classes/$wims_class/.def
  56. !if $usercnt==0
  57.  $name_noyetparticipant
  58.  !if $typen!=level
  59.  &nbsp;
  60.  !set wims_ref_class=wims_button
  61.  !href module=adm/class/reguser&step=1 $wims_name_addstudent
  62. &nbsp;
  63.  !endif
  64.  !set wims_ref_class=wims_button
  65.  !href cmd=reply&job=csv $wims_name_csv
  66.  </div>
  67. !else -- $usercnt>0
  68. !!## it is dangerous to register directly a student in a level
  69. !if $typen!=level
  70.  !set deleted=!sh cd $wims_home/log/classes/$wims_class/.users; ls .[0-9a-zA-Z]* 2>/dev/null
  71.  !set deleted=!trim $deleted
  72.  &nbsp;
  73.  !set wims_ref_class=wims_button
  74.   !href module=adm/class/reguser&step=1 $wims_name_addstudent
  75.  &nbsp;
  76.  !endif
  77.  !set wims_ref_class=wims_button
  78.  !href cmd=reply&job=csv $wims_name_csv
  79.  
  80.  !if $deleted!=$empty
  81.   &nbsp;
  82.  !set wims_ref_class=wims_button
  83.   !href cmd=reply&job=recover $name_partdeleted
  84.  !endif
  85.  </div>
  86.  !if $seq_cnt=0
  87.  <p>
  88.     $name_warning_no_sequence
  89.   &nbsp;
  90.  !set wims_ref_class=wims_button
  91.     !href module=adm/class/sequence&job=config $wims_name_config
  92.  </p>
  93.  !endif
  94.  !!test inutile ?
  95.  !if $usercnt > 0
  96.   !if $activecnt+$eactivecnt>=1
  97.  
  98.   !form reply
  99.   <input type="hidden" name="job" value="sheets" />
  100.   !set wims_formselect_switch=multiple="multiple" size="$[min($activecnt,6)]"
  101.   $name_pickup
  102. <div class="wimscenter">
  103.   !reset tmp
  104.   !set seq_open=!defof sequence_open in wimshome/log/classes/$wims_class/seq/.def
  105.   !for i=1 to $activecnt
  106.    !set sh=!line $i of $activesheets
  107.    !set se=!item 1 of $sh
  108.    !if $seq_open!=yes
  109.     !set ti=!item 3 to -1 of $sh
  110.     !set ti=!replace internal , by &#44; in $ti
  111.    !set tmp=!append item $se: $ti to $tmp
  112.    !else
  113.     !set ti=!item 4 to -1 of $sh
  114.     !set ti=!replace internal , by &#44; in $ti
  115.    !set seq=!item 3 of $sh
  116.     !set tmp=!append item $seq/$se: $ti to $tmp
  117.    !endif
  118.   !next i
  119.   !set ash=$activesh
  120.   !for i=1 to $eactivecnt
  121.    !set tt=!item $i of $activexams
  122.    !set l=!record $tt of wimshome/log/classes/$wims_class/exams/.exams
  123.    !set l=!line 4 of $l
  124.    !set l=!replace internal , by &#44; in $l
  125.   !set tmp=!append item $name_Exam $tt: $l to $tmp
  126.    !set ash=!append item E$tt to $ash
  127.   !next i
  128.   !formselect showsheet list $ash prompt $tmp
  129.   </div>
  130.   <p>
  131.    $wims_name_or $name_post
  132.    !if $job_affi=notes or $job_affi=$empty
  133.     !set wims_ref_class=wims_button
  134.     !href cmd=reply&job_affi=quality $(name_affi[1])
  135.     !set wims_ref_class=wims_button
  136.     !href cmd=reply&job_affi=points $(name_affi[2])
  137.     <span class="wims_button disabled"> $(name_affi[3])</span>
  138.     !set wims_ref_class=wims_button
  139.     !href cmd=reply&job_affi=best $(name_affi[4])
  140.     !set wims_ref_class=wims_button
  141.     !href cmd=reply&job_affi=level $(name_affi[5])
  142.    !endif
  143.    !if $job_affi=quality
  144.     <span class="wims_button disabled"> $(name_affi[1])</span>
  145.     !set wims_ref_class=wims_button
  146.     !href cmd=reply&job_affi=points $(name_affi[2])
  147.     !set wims_ref_class=wims_button
  148.     !href cmd=reply&job_affi=notes $(name_affi[3])
  149.     !set wims_ref_class=wims_button
  150.     !href cmd=reply&job_affi=best $(name_affi[4])
  151.     !set wims_ref_class=wims_button
  152.     !href cmd=reply&job_affi=level $(name_affi[5])
  153.    !endif
  154.    !if $job_affi=points
  155.     !set wims_ref_class=wims_button
  156.     !href cmd=reply&job_affi=quality $(name_affi[1])
  157.      <span class="wims_button disabled"> $(name_affi[2])</span>
  158.     !set wims_ref_class=wims_button
  159.     !href cmd=reply&job_affi=notes $(name_affi[3])
  160.     !set wims_ref_class=wims_button
  161.     !href cmd=reply&job_affi=best $(name_affi[4])
  162.     !set wims_ref_class=wims_button
  163.     !href cmd=reply&job_affi=level $(name_affi[5])
  164.    !endif
  165.    !if $job_affi=best
  166.     !set wims_ref_class=wims_button
  167.     !href cmd=reply&job_affi=quality $(name_affi[1])
  168.     !set wims_ref_class=wims_button
  169.     !href cmd=reply&job_affi=points $(name_affi[2])
  170.     !set wims_ref_class=wims_button
  171.     !href cmd=reply&job_affi=notes $(name_affi[3])
  172.     <span class="wims_button disabled"> $(name_affi[4])</span>
  173.     !set wims_ref_class=wims_button
  174.     !href cmd=reply&job_affi=level $(name_affi[5])
  175.    !endif
  176.    !if $job_affi=level
  177.     !set wims_ref_class=wims_button
  178.     !href cmd=reply&job_affi=quality $(name_affi[1])
  179.     !set wims_ref_class=wims_button
  180.     !href cmd=reply&job_affi=points $(name_affi[2])
  181.     !set wims_ref_class=wims_button
  182.     !href cmd=reply&job_affi=notes $(name_affi[3])
  183.     !set wims_ref_class=wims_button
  184.     !href cmd=reply&job_affi=best $(name_affi[4])
  185.     <span class="wims_button disabled">$(name_affi[5])</span>
  186.    !endif
  187. </p>
  188.  !else
  189.   !form reply
  190.  !endif
  191. <p>
  192.  !if $wims_typename notwordof group portal
  193.   $name_click
  194.  !endif
  195.  $name_filter
  196.  <textarea name="varfilter">$varfilter</textarea>
  197.  !set wims_ref_class=wims_button_help float_right
  198.  !href cmd=help&special_parm=filter $wims_name_help
  199.   </p>
  200. <div class="wimsform wimscenter">
  201.   <input type="submit" value="$wims_name_Show" />
  202.   </div>
  203. !formend
  204. !endif
  205.  !reset table_center
  206.  $table_header
  207.  !if $wims_typename notwordof group portal
  208.   !if $job_affi=notes
  209.   <caption>$name_formula2</caption>
  210.   !else
  211.    !let tmp=!recordcnt wimshome/log/classes/$wims_class/sheets/.sheets
  212.    !let tmp=!values v for v=1 to $tmp
  213.    !let showsheet=!listintersect $showsheet and $tmp
  214.    !if $job_affi=quality
  215.    <caption>$name_qualitygot</caption>
  216.    !endif
  217.    !if $job_affi=points
  218.    <caption>$name_percentagedone</caption>
  219.    !endif
  220.    !if $job_affi=best
  221.    <caption>$name_percentagebest</caption>
  222.    !endif
  223.   !endif
  224.  !endif
  225.  !if $manual>0 and $job_affi=notes
  226.   $table_hdtr<th rowspan="2">$wims_name_lastname, $wims_name_firstname ($usercnt)</th>
  227.    <th colspan="3">$name_Average</th>
  228.   !for j in $showsheet
  229.    !if E isin $j
  230.     !set k=!char 2 to -1 of $j
  231.     <th rowspan="2" class="name_exam small">$name_Exam $k</th>
  232.    !else
  233.     <th rowspan="2" class="show_sheet small">
  234.      !set s=!record $j of wimshome/log/classes/$wims_class/sheets/.sheets
  235.      !set s=!line 3 of $s
  236.      !set wims_ref_title=$s
  237.      !href cmd=reply&job=showsheet&numshowsheet=$j $name_Sheet $j
  238.      !!<a onmouseover="Tip('$s',$tooltip_parm)">$picto</a>
  239.     </th>
  240.    !endif
  241.   !next j
  242.   </tr>
  243.   $table_hdtr<th class="manual_notes small">$(name_manual_notes[1])</th>
  244.   <th class="manual_notes small">$(name_manual_notes[2])</th>
  245.   <th class="manual_notes small">$(name_manual_notes[3])</th>
  246.  !else
  247.   $table_hdtr<th>$wims_name_lastname, $wims_name_firstname ($usercnt)</th>
  248.   !if $wims_typename iswordof group portal
  249.     !goto endgroup
  250.  !endif
  251.   !if $job_affi=notes
  252.    <th class="average">$name_Average</th>
  253.   !endif
  254.   !for j in $showsheet
  255.    !if E isin $j
  256.     !set k=!char 2 to -1 of $j
  257.     <th class="name_exam small">$name_Exam $k</th>
  258.    !else
  259.     <th class="small">
  260.      !href cmd=reply&job=showsheet&numshowsheet=$j $name_Sheet $j
  261.     </th>
  262.    !endif
  263.   !next j
  264.  !endif
  265.  :endgroup
  266.  </tr>
  267.  !distribute item 0,0,0 into mean_tea,mean_auto,mean_glob
  268.  !distribute item 0,0,0 into cnt_tea,cnt_auto,cnt_glob
  269.  !for i=1 to $usercnt
  270.   !set uu=!record $i of wimshome/log/classes/$wims_class/.userlist
  271.   !distribute items $uu into lastname,firstname,uu
  272.   !if $varfilter_!=$empty
  273.     !reset var_filter_test
  274.     !read adm/class/testfilter $uu\
  275. $varfilter_
  276.     !if $var_filter_test!=1
  277.       !goto enduser
  278.     !endif
  279.   !endif
  280.   !set UU=!hex $uu
  281.   $table_tr
  282.   <td>
  283.    !href cmd=reply&job=getuser&getuser=$uu#sheet$(showsheet[1]) $name_student1
  284.   !if $uu isitemof $wims_connectedlogin
  285.     <img src="gifs/themes/$wims_theme_icon/connected.png" width="15px" alt="connected" />
  286.    !endif
  287.   </td>
  288.   !if $wims_typename iswordof group portal
  289.     !goto enduser
  290.   !endif
  291.   !readproc adm/class/userscore
  292.   !if $manual>0 and $job_affi=notes
  293.    !set glob=$[rint($manual*$(manual_$UU)+(100-$manual)*($per))/100]
  294.    !if $glob>0
  295.     !read adm/class/colors $[ceil($glob*10/$scoremax)]
  296.     <td style=$style_note>$glob
  297.    !else
  298.      <td>--
  299.    !endif
  300.    </td>
  301.    !if $(manual_$UU)>0
  302.     !read adm/class/colors $[ceil($(manual_$UU)*10/$scoremax)]
  303.     <td style=$style_note>$(manual_$UU)
  304.    !else
  305.      <td>--
  306.    !endif
  307.    </td>
  308.    !if $per>0
  309.     !read adm/class/colors $[ceil($per*10/$scoremax)]
  310.     <td style=$style_note>$per
  311.    !else
  312.      <td>--
  313.    !endif
  314.    </td>
  315.    !distribute item $[$mean_glob+$glob],$[$mean_tea+$(manual_$UU)] into mean_glob,mean_tea
  316.    !if $glob>0
  317.     !advance cnt_glob
  318.     !if $(manual_$UU)>0
  319.      !advance cnt_tea
  320.     !endif
  321.     !if $per>0
  322.      !advance cnt_auto
  323.     !endif
  324.    !endif
  325.   !else
  326.    !if $wims_typename iswordof group portal
  327.    </tr>
  328.     !goto enduser
  329.    !endif
  330.    !if $job_affi=notes
  331.     !if $per>0
  332.      !read adm/class/colors $[ceil($per*10/$scoremax)]
  333.      <td style=$style_note>$per
  334.      !advance cnt_auto
  335.      !advance cnt_glob
  336.     !else
  337.      <td>--
  338.     !endif
  339.      </td>
  340.    !endif
  341.   !endif
  342.   !set mean_auto=$[$mean_auto+$per]
  343.   !for j in $showsheet
  344.    !if E isin $j
  345.     !set k=!char 2 to -1 of $j
  346.     !set p_=$[rint(10*$scoremax*$(es_$k))/100]
  347.     !if NaN isin $p_
  348.      !set p_=0
  349.     !endif
  350.     !if $p_>0
  351.      !read adm/class/colors $[ceil($p_*10/$scoremax)]
  352.      <td style=$style_note>$p_
  353.     !else
  354.      <td>$p_
  355.     !endif
  356.      </td>
  357.    !else
  358.     !set p_=!line $j of $percents
  359.     !distribute words $p_ into p1,p2,p3,p4
  360.     !if $job_affi=notes
  361.      !if $p2!=$empty
  362.       !set sev=!line $j of $defaultformula
  363.       !distribute word $(sev) into w_$j,s,ss
  364.       !bound s between integer 0 and 6 default 2
  365.       !bound ss between integer 0 and 2 default 0
  366.       !set f_$j=!item $s+1 of $formula_list
  367.       !set f_$j=!replace internal I by I$ss in $(f_$j)
  368.       !distribute item $[$p1/100],$[$p2/10],$[$p3/100], $[$p4/100] into x0_,y_,x1_,x2_
  369.       !set ff_$j=!mathsubst Q=$y_ in $(f_$j)
  370.       !for sev=0 to 2
  371.          !set ff_$j=!mathsubst I$sev=$(x$(sev)_) in $(ff_$j)
  372.       !next
  373.       !set p_=$[rint(100*$scoremax*$(ff_$j))/100]
  374.      !else
  375.       !set p_=0
  376.      !endif
  377.      !if $p_>0
  378.       !read adm/class/colors $[ceil(10*$p_/$scoremax)]
  379.       <td style=$style_note>$p_
  380.      !else
  381.       <td>--
  382.      !endif
  383.       </td>
  384.     !else
  385.      !if quality iswordof $job_affi
  386.       !set p_=$p2
  387.       !if $p_>0
  388.        !read adm/class/colors $[ceil($p_)]
  389.        <td style=$style_note>$p_
  390.       !else
  391.        <td>--
  392.       !endif
  393.       </td>
  394.      !endif
  395.      !if points iswordof $job_affi
  396.       !set p_=$p1
  397.       !if $p_>0
  398.        !read adm/class/colors $[ceil($p_/10)]
  399.        <td style=$style_note>$p_ %
  400.       !else
  401.        <td>--
  402.       !endif
  403.        </td>
  404.      !endif
  405.      !if best iswordof $job_affi
  406.       !set p_=$p3
  407.       !if $p_>0
  408.        !read adm/class/colors $[ceil($p_/10)]
  409.        <td style=$style_note>$p_ %
  410.       !else
  411.        <td>--
  412.       !endif
  413.        </td>
  414.      !endif
  415.      !if level iswordof $job_affi
  416.       !set p_=$[$p4/10]
  417.       !if $p_>0
  418.        !read adm/class/colors $[ceil($p_)]
  419.        <td style=$style_note>$p_
  420.       !else
  421.        <td>--
  422.       !endif
  423.        </td>
  424.      !endif
  425.      !if $p2=$empty
  426.       !set $p_=0
  427.      !endif
  428.     !endif
  429.    !endif
  430.    !set per_$j=$[$(per_$j)+$p_]
  431.    !if $p_>0
  432.     !advance cnt_$j
  433.    !endif
  434.   !next j
  435.   </tr>
  436. :enduser
  437.  !next i
  438.  !if $wims_typename iswordof group portal
  439.    </table>
  440.     !goto end
  441.  !endif
  442.  !distribute item $[rint(100*$mean_auto/$usercnt)/100],\
  443.         $[rint(100*$mean_tea/$usercnt)/100],\
  444.         $[rint(100*$mean_glob/$usercnt)/100] into m_auto,m_tea,m_glob
  445.  $table_hdtr<th>$name_classAverage</th>
  446.  !if $job_affi=notes
  447.   !if $manual>0
  448.    !if $m_glob >0
  449.      !read adm/class/colors $[ceil($m_glob*10/$scoremax)]
  450.      <td style=$style_note>$m_glob
  451.    !else
  452.      <td>--
  453.    !endif
  454.    </td>
  455.    !if $m_tea >0
  456.     !read adm/class/colors $[ceil($m_tea*10/$scoremax)]
  457.     <td style=$style_note>$m_tea
  458.    !else
  459.     <td>--
  460.    !endif
  461.    </td>
  462.    !if $m_auto>0
  463.     !read adm/class/colors $[ceil($m_auto*10/$scoremax)]
  464.     <td style=$style_note>$m_auto
  465.    !else
  466.     <td>--
  467.    !endif
  468.    </td>
  469.   !else
  470.    !if $m_auto>0
  471.     !read adm/class/colors $[ceil($m_auto*10/$scoremax)]
  472.     <td style=$style_note>$m_auto
  473.    !else
  474.     <td>--
  475.    !endif
  476.    </td>
  477.   !endif
  478.  !endif
  479.  !for j in $showsheet
  480.   !if $[rint(100*$(per_$j)/max(1,$usercnt))/100]>0
  481.    !if $job_affi=points
  482.     !read adm/class/colors $[ceil($(per_$j)/max(1,$usercnt)/10)]
  483.     <td style=$style_note>$[rint(100*$(per_$j)/max(1,$usercnt))/100] %
  484.    !else
  485.     !read adm/class/colors $[ceil($(per_$j)/max(1,$usercnt)*10/$scoremax)]
  486.     <td style=$style_note>$[rint(100*$(per_$j)/max(1,$usercnt))/100]
  487.    !endif
  488.   !else
  489.     <td>--
  490.   !endif
  491.   </td>
  492.  !next j
  493.  !if $cnt_glob>0
  494.   !distribute item $[rint(100*$mean_auto/max(1,$cnt_auto))/100],\
  495.         $[rint(100*$mean_tea/max(1,$cnt_tea))/100],\
  496.         $[rint(100*$mean_glob/max(1,$cnt_glob))/100] into m_auto,m_tea,m_glob
  497.     </tr>
  498.     $table_hdtr<th>$name_posAverage</th>
  499.   !if $manual>0
  500.     !if $m_glob>0
  501.      !read adm/class/colors $[ceil($m_glob*10/$scoremax)]
  502.      <td style=$style_note>$m_glob
  503.     !else
  504.      <td>--
  505.     !endif
  506.     </td>
  507.     !if $m_tea>0
  508.      !read adm/class/colors $[ceil($m_tea*10/$scoremax)]
  509.      <td style=$style_note>$m_tea
  510.     !else
  511.      <td>--
  512.     !endif
  513.     </td>
  514.     !if $m_auto>0
  515.      !read adm/class/colors $[ceil($m_auto*10/$scoremax)]
  516.      <td style=$style_note>$m_auto
  517.     !else
  518.      <td>--
  519.     !endif
  520.     </td>
  521.   !else
  522.     !if $m_auto>0
  523.      !read adm/class/colors $[ceil($m_auto*10/$scoremax)]
  524.      <td style=$style_note>$m_auto
  525.     !else
  526.       <td>--
  527.     !endif
  528.     </td>
  529.   !endif
  530.   !for j in $showsheet
  531.    !if $[rint(100*$(per_$j)/max(1,$(cnt_$j)))/100]>0
  532.     !read adm/class/colors $[ceil($(per_$j)/max(1,$(cnt_$j))*10/$scoremax)]
  533.     <td style=$style_note>$[rint(100*$(per_$j)/max(1,$(cnt_$j)))/100]
  534.    !else
  535.     <td>--
  536.    !endif
  537.     </td>
  538.   !next j
  539.  !endif
  540.  </tr>
  541.  $table_end
  542. !endif (usercnt=0?)
  543.  
  544. :end
  545. !set wims_menu_items=!append line sendmail,1,module=adm/class/sendmail\
  546. photoboard,1,module=adm/class/photoboard\
  547. to $wims_menu_items
  548. !if $typen!=level
  549.  !set wims_menu_items=!append line addstudent,1,module=adm/class/reguser&step=1\
  550. to $wims_menu_items
  551. !endif
  552.  
  553. !! disconnected for a few time
  554. !!!set wims_menu_items=!append line csv,1,cmd=reply&job=csv\
  555. !! ,0,\
  556. !!to $wims_menu_items
  557.  
  558. !! :end (deplacement plus haut pour l'instant)
  559. !tail
  560.  
  561. !reset job,showsheet,getuser,getraw,delprep,deluser,formula,abandon,reg,\
  562.         passcheck
  563.