Subversion Repositories wimsdev

Rev

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