Subversion Repositories wimsdev

Rev

Rev 14537 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
14297 guerimand 1
!! display page for student
2
 
3
!if $activetest!=1 and $activetest!=2
4
  error=badallows
5
  emptypage=yes
6
  !exit
7
!endif
8
 
9
!if $type>=2 and $activetest=1
10
    !readproc adm/class/quotafree.proc proc
11
    !readproc proc/findfile.proc $freework,$wims_user
12
    oldsize=0
13
    !if $data_0!=$empty
14
      du=!sh du -ks $wims_home/log/classes/$wims_class/freeworksdata/$freework/work/$(data_0[2])
15
      du=!word 1 of $du
16
      oldsize=$[($du)/1024]
17
      delold=rm -f $wims_home/log/classes/$wims_class/freeworksdata/$freework/work/$(data_0[2])
18
      test=!fileexists wimshome/sessions/$wims_session/getfile/freeworksdata/work$freework-$(data_0[2])
19
      !if $test=yes
20
        delold=$delold;\
21
               rm -f $wims_home/sessions/$wims_session/getfile/freeworksdata/work$freework-$(data_0[2])
22
      !endif
23
    !endif
24
    d1=!text select char 0123456789 in $(deadline)$(timedeadline)
25
    d2=!text select char 0123456789 in $wims_now
26
    d2=!char 1 to 12 of $d2
27
    d3=!text select char 0123456789 in $(soldate)$(timesoldate)
28
    !reset toolate,codownload
29
    !if $d2>$d1
30
      toolate=yes
31
    !endif
32
    !! -------- test condition to download user corrected work file (date + all work corrected).
33
    !if $d2>=$d3
34
      n1=!filelist $wims_home/log/classes/$wims_class/freeworksdata/$freework/work
35
      n1=!linecnt $n1
36
      n2=!filelist $wims_home/log/classes/$wims_class/freeworksdata/$freework/co
37
      n2=!linecnt $n2
38
      !if $n2=$n1
39
        codownload=yes
40
      !endif
41
    !endif
42
    !if $toolate!=yes and $wims_deposit!=$empty and / notin $wims_deposit and .. notin $wims_deposit
43
      du=!sh du -ks $wims_home/$wims_sesdir/user-deposit
44
      du=!word 1 of $du
45
      newsize=$[($du)/1024]
46
      !ifval $newsize>0.25*$sizelimitfile
47
        error=badstudentfilesize
48
        !exit
49
      !endif
50
      !read proc/checkfilename.proc $freework
51
      !if $error!=$empty
52
        !exit
53
      !else
54
        exten=!replace internal . by , in $newfilename
55
        n=!itemcnt $exten
56
        !if $n>=2
57
          exten=!item -1 of $exten
58
          exten=.$exten
59
        !else
60
          exten=$empty
61
        !endif
62
      !endif
63
      success=goodaddfile
64
      !if $quota_free-$newsize-$oldsize<0
65
        error=quota_filestudent
66
        !reset success
67
      !else
68
        !!mise en place du nouveau fichier (et destruction de l'ancien s'il existe et du lien de telechargement)
69
        !sh mv $wims_home/$wims_sesdir/user-deposit $wims_home/log/classes/$wims_class/freeworksdata/$freework/work/$wims_user$exten;\
70
            $delold
71
      !endif
72
      !readproc proc/findfile.proc $freework,$wims_user
73
    !endif
74
    !! ------ make download link for work and co if don't exists
75
    !if $data_0!=$empty
76
      !reset m
77
      !if $codownload=yes and $(data_0[5])!=$empty
78
        test=!fileexists wimshome/sessions/$wims_session/getfile/freeworksdata/workco$freework-$(data_0[5])
79
        !if $test!=yes
80
          m=ln -s $wims_home/log/classes/$wims_class/freeworksdata/$freework/co/$(data_0[5]) workco$freework-$(data_0[5]);
81
        !endif
82
      !endif
83
      test=!fileexists wimshome/sessions/$wims_session/getfile/freeworksdata/work$freework-$(data_0[2])
84
      !if $test!=yes
85
        t=ln -s $wims_home/log/classes/$wims_class/freeworksdata/$freework/work/$(data_0[2]) work$freework-$(data_0[2]);
86
        m=!append line $t to $m
87
      !endif
88
      !if $m!=$empty
89
        !sh cd $wims_home/sessions/$wims_session/getfile/freeworksdata/;\
90
            $m
91
      !endif
92
    !endif
93
    !! ---- end make...
94
!endif