Subversion Repositories wimsdev

Rev

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

!default wims_superclass=$wims_class
!read adm/class/userisinclass $wims_superclass,$getuser
!set class_Supervisor=!defof class_Supervisor in wimshome/log/classes/$wims_class/.def
!if yes notin $script_reply
 error=bad_usercls
 !reset job,getuser
 !exit
!endif
!read adm/class/userdef classes,$wims_class,$getuser
!defread $userdef
!read adm/class/initclass $wims_class

!if $user_exists!=yes or $abandon!=$empty
 !reset up_lastname,up_firstname,up_email,up_regnum,up_photourl,up_comments,up_vars,up_external_auth,up_supervise
 !if $wims_user=supervisor
  !bound oldjob within userlist,teacher default userlist
  job=$oldjob
  !changeto $job.proc
  !exit
 !else
  job=getuser
  lastname=$user_lastname
  firstname=$user_firstname
!! BUGTOFIX : this file don't exists (20160409)
  !changeto var.proc.getuser
 !endif
!endif

!if $wims_user=supervisor and $getuser!=supervisor
 user_vars=!sh grep -E '^!set user__' $Userdef | sed 's/^!set user__//g'
!endif

!if $reg!=$empty or $job2=photoerase
 class_pass=!defof class_password in wimshome/log/classes/$wims_class/.def
 !if $wims_user!=supervisor and $passcheck!=$class_pass
  error=bad_classpass
  !exit
 !endif
!endif

!if photoerase=$job2
    up_photourl= 
    !sh rm -f $wims_home/log/classes/$photodir/photoboard/$getuser
    !reset reg
    replacelist=photourl
!endif

!! make list of name of classes,program etc...
!readproc mksubclslist.proc

!if $reg!=$empty
 up_password=
 replacelist=regnum,comments,photourl,email,external_auth
 !for r in $replacelist
    !default up_$r=$(user_$r)
 !next r
 replacelist=$replacelist,supervise

!! ------------- manage modification of user_supervise for teacher account
 !if $wims_user=supervisor or ($wims_realuser!=supervisor and $wims_realuser!=$empty)
   !if $superv=no
    !set up_supervise=!listcomplement $wims_class in $up_supervise
   !else
    !if $wims_user=supervisor and $wims_realuser!=supervisor
!!not administrator of the portail
       !set up_supervise=!listuniq $wims_class, $(user_supervise)
    !else
       !set up_supervise=!listuniq $(up_supervise)
    !endif
   !endif
   !if $up_supervise=$empty
     up_supervise=noclass
   !endif
 !endif

!! ------------- manage modification of user_participate for teacher account
  !if ($wims_realuser=supervise or $wims_realuser=$class_Supervisor) and $type_class=1
   replacelist=$replacelist,participate
   !if $superp=no
    !set up_participate=!listcomplement $wims_class in $user_participate
   !else
    !set up_participate=!listuniq $wims_class,$user_participate
   !endif
   !if $up_participate=$empty
     up_participate=noclass
   !endif
 !endif

 !set up_external_auth=!lowercase $up_external_auth
!!-------------------- photo file process management
 !if noname.file notin $wims_deposit and $wims_deposit!=$empty
    type=!sh file --mime-type $wims_home/$wims_sesdir/user-deposit | awk '{print $$2}'
    !if image/ notin $type
        error=badimgformat
    !else
        size=!sh mkdir -p $wims_home/log/classes/$photodir/photoboard\
convert $wims_home/$wims_sesdir/user-deposit -resize 132x170 $wims_home/$wims_sesdir/user-deposit\
ls -s $wims_home/$wims_sesdir/user-deposit | awk '{print $$1}'
        !if $size>100
            error=filetoobig
        !else
            !read adm/du $wims_home/log/classes/$wims_class
            !if $[$wims_class_quota-$du-$size]<0
                error=quota_file
            !else
                !sh rm -f $wims_home/log/classes/$photodir/photoboard/$getuser\
mv $wims_home/$wims_sesdir/user-deposit $wims_home/log/classes/$photodir/photoboard/$getuser
                up_photourl= 
            !endif
        !endif
    !endif
 !else
    !if $up_photourl!=$user_photourl
        !sh rm -f $wims_home/log/classes/$photodir/photoboard/$getuser
    !endif
 !endif
 !!----------------------   end photo file
!endif

!if $reg!=$empty or $job2=photoerase
 !read adm/class/adduser $getuser
 !read adm/class/mkuserlist
 !if $class_type isin 1234
  !read adm/gateway/mkteacherlist
 !endif
 !read adm/class/stat
 !reset user_lastname, user_firstname, user_email, user_regnum, user_photourl, user_comments,\
    user_supervisable, user_supervise, user_participate, user_external_auth,wims_deposit
 !defread $userdef
 !if $wims_user=supervisor and $getuser!=supervisor
  user_vars=!sh grep -E '^!set user__' $Userdef | sed 's/^!set user__//g'
 !endif
!endif

!reset up_lastname,up_firstname,up_email,up_regnum,up_comments_$(wims_class),up_photourl,up_vars,up_external_auth,\
  up_supervise,job2,reg