Subversion Repositories wimsdev

Rev

Rev 15024 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
20 reyssat 1
uu=$wims_read_parm
2
!default delu_class=$wims_class
3
!if $uu=$empty
12159 obado 4
  !exit
20 reyssat 5
!endif
6
 
7
!read adm/class/userdef classes,$delu_class,$uu
8
 
9
deleted=
10
!if $wims_superclass=$empty
12159 obado 11
  Userdef=!replace wimshome/ by $wims_home/ in $userdef
12
  test=!defof user_exists in $userdef
13
  !if $test=yes
14
    erased=!replace internal .users/ by .users/. in $Userdef
15
    !sh mv -f $Userdef $erased 2>/dev/null
12161 obado 16
    folder_list=!defof USER_DIR_LIST in wimshome/public_html/bases/sys/define.conf
17
    !for folder in $folder_list
12159 obado 18
      !sh for a in `find $wims_home/log/classes/$delu_class/$folder -name '$uu.*'`; do \
19
        aa=`echo $$a | sed -e "s/$uu/.$uu/"`; mv -f $$a $$aa; done\
20
       for a in `find $wims_home/log/classes/$delu_class/$folder -name '$uu'`; do \
21
        aa=`echo $$a | sed -e "s/$uu/.$uu/"`; mv -f $$a $$aa; done
15024 guerimand 22
    !next folder
12159 obado 23
    deleted=yes
24
  !endif
20 reyssat 25
!else
12159 obado 26
  typename=!defof class_typename in wimshome/log/classes/$delu_class/.def
17114 guerimand 27
  !if $typename=group or $typename=portal
15024 guerimand 28
!! desactivated for portal  !if $typename=group  or $typename=portal
29
    !! delete participant in group class delete it in all subclasses.
30
    test=!defof user_participate in $userdef
31
!!  delete a participant but keep access right in memory in case of reactivate access
32
!!    !setdef !set user_participate=$empty in $userdef
33
    !! ----- update userlist
34
    !if $typename=group
35
      !! subclasses userlist where participant registered are updated
36
      lt_=$test,$wims_superclass
37
    !else
38
      !! for the moment userlist of subclasses not live updated (too much time) ; this userlist are update in daily night check
39
      lt_=$wims_superclass
12159 obado 40
    !endif
15024 guerimand 41
    !for k_ in $lt_
42
      !read adm/class/mkuserlist $k_
43
    !next k_
44
    !!------- end update userlist
45
    Userdef=!replace wimshome/ by $wims_home/ in $userdef
46
    erased=!replace internal .users/ by .users/. in $Userdef
47
    !sh mv -f $Userdef $erased 2>/dev/null
48
    deleted=yes
12159 obado 49
  !else
15024 guerimand 50
    !if $typename iswordof course
51
      delu_test=!sh readlink $wims_home/log/classes/$delu_class/.userlist
52
      delu_up=!defof n_part in wimshome/log/classes/$delu_class/neighbors
53
      !if $delu_up!=$empty and $delu_test=../.userlist
54
        delu_test=!sh find $wims_home/log/classes/$delu_up/2*/score -name '$uu' -size +1 | sed 's!^$wims_home/log/classes/!!;s!/score/.*$$!!'
55
        delu_test=!wordstoitems $delu_test
56
        delu_test=!listcomplement $delu_class in $delu_test
57
        delu_test=!nonempty items $delu_test
58
        !if $delu_test=$empty
59
          delu_class=$delu_up
60
          !goto del_class
61
        !endif
62
      !endif
63
      user_class=!defof user_class in wimshome/log/classes/$delu_class/.users/$uu
64
      !if $user_class!=$empty
65
        !sh rm -f $wims_home/log/classes/$delu_class/.users/$uu
66
        user_courses=!defof user_courses in wimshome/log/classes/$wims_superclass/$user_class/.users/$uu
67
        delu_course=!replace internal ../$wims_superclass/ by in ../$delu_class
68
        user_courses=!listcomplement $delu_course in $user_courses
69
        !setdef !set user_courses=$user_courses in wimshome/log/classes/$wims_superclass/$user_class/.users/$uu
70
        deleted=yes
71
      !endif
72
    !else
73
      :del_class
74
      test=!defof user_participate in $userdef
75
      !if $delu_class isitemof $test
76
        shclass=!defof sharing_user in wimshome/log/classes/$delu_class/neighbors
77
        !default shclass=$delu_class
78
        sharing=!defof sharable_user in wimshome/log/classes/$shclass/neighbors
79
        sharing=!append item $shclass to $sharing
80
        part=!listcomplement $sharing in $test
81
        !setdef !set user_participate=$part in $userdef
82
        courses=!defof user_courses in wimshome/log/classes/$delu_class/.users/$uu
83
        !for delu_c in $courses
84
          !sh rm -f $wims_home/log/classes/$wims_superclass/$delu_c/.users/$uu
85
          !read adm/class/mkuserlist $wims_superclass/$delu_c
86
        !next delu_c
87
        !sh rm -f $wims_home/log/classes/$delu_class/.users/$uu
88
        deleted=yes
89
      !endif
12159 obado 90
    !endif
20 reyssat 91
  !endif
92
!endif
93
 
94
!if $deleted=yes
12159 obado 95
  !read adm/class/mkuserlist $delu_class
96
  usercnt=!recordcnt wimshome/log/classes/$delu_class/.userlist
97
  wims_module_log=Delete $deluser
98
  wims_class_log=delete user $deluser
20 reyssat 99
!endif