Rev 20 | Rev 11222 | Go to most recent revision | 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 |
||
4 | !exit |
||
5 | !endif |
||
6 | |||
7 | !read adm/class/userdef classes,$delu_class,$uu |
||
8 | |||
9 | deleted= |
||
10 | !if $wims_superclass=$empty |
||
11 | Userdef=!replace wimshome/ by $wims_home/ in $userdef |
||
12 | test=!defof user_exists in $userdef |
||
8319 | guerimand | 13 | !if $test=yes |
20 | reyssat | 14 | erased=!replace internal .users/ by .users/. in $Userdef |
15 | !sh mv -f $Userdef $erased 2>/dev/null |
||
16 | deleted=yes |
||
17 | !endif |
||
18 | !else |
||
19 | typename=!defof class_typename in wimshome/log/classes/$delu_class/.def |
||
20 | !if $typename iswordof course |
||
21 | delu_test=!sh readlink $wims_home/log/classes/$delu_class/.userlist |
||
22 | delu_up=!defof n_part in wimshome/log/classes/$delu_class/neighbors |
||
23 | !if $delu_up!=$empty and $delu_test=../.userlist |
||
24 | delu_test=!sh find $wims_home/log/classes/$delu_up/2*/score -name '$uu' -size +1 | sed 's!^$wims_home/log/classes/!!;s!/score/.*$$!!' |
||
25 | delu_test=!wordstoitems $delu_test |
||
26 | delu_test=!listcomplement $delu_class in $delu_test |
||
27 | delu_test=!nonempty items $delu_test |
||
28 | !if $delu_test=$empty |
||
29 | delu_class=$delu_up |
||
30 | !goto del_class |
||
31 | !endif |
||
32 | !endif |
||
33 | user_class=!defof user_class in wimshome/log/classes/$delu_class/.users/$uu |
||
34 | !if $user_class!=$empty |
||
35 | !sh rm -f $wims_home/log/classes/$delu_class/.users/$uu |
||
36 | user_courses=!defof user_courses in wimshome/log/classes/$wims_superclass/$user_class/.users/$uu |
||
37 | delu_course=!replace internal ../$wims_superclass/ by in ../$delu_class |
||
38 | user_courses=!listcomplement $delu_course in $user_courses |
||
39 | !setdef !set user_courses=$user_courses in wimshome/log/classes/$wims_superclass/$user_class/.users/$uu |
||
40 | deleted=yes |
||
41 | !endif |
||
42 | !else |
||
43 | :del_class |
||
44 | test=!defof user_participate in $userdef |
||
45 | !if $delu_class isitemof $test |
||
46 | shclass=!defof sharing_user in wimshome/log/classes/$delu_class/neighbors |
||
47 | !default shclass=$delu_class |
||
48 | sharing=!defof sharable_user in wimshome/log/classes/$shclass/neighbors |
||
49 | sharing=!append item $shclass to $sharing |
||
50 | part=!listcomplement $sharing in $test |
||
51 | !setdef !set user_participate=$part in $userdef |
||
52 | courses=!defof user_courses in wimshome/log/classes/$delu_class/.users/$uu |
||
53 | !for delu_c in $courses |
||
54 | !sh rm -f $wims_home/log/classes/$wims_superclass/$delu_c/.users/$uu |
||
55 | !read adm/class/mkuserlist $wims_superclass/$delu_c |
||
56 | !next delu_c |
||
57 | !sh rm -f $wims_home/log/classes/$delu_class/.users/$uu |
||
58 | deleted=yes |
||
59 | !endif |
||
60 | !endif |
||
61 | !endif |
||
62 | |||
63 | !if $deleted=yes |
||
64 | !read adm/class/mkuserlist $delu_class |
||
65 | usercnt=!recordcnt wimshome/log/classes/$delu_class/.userlist |
||
66 | wims_module_log=Delete $deluser |
||
67 | wims_class_log=delete user $deluser |
||
68 | !endif |
||
69 |