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 |