Subversion Repositories wimsdev

Rev

Rev 10778 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
12957 obado 1
# check.class verifie l'existence de la classe qclass
2
 
3
initial_qclass=$qclass
3261 obado 4
qclass=!translate internal ./,;?* to $             $ in $qclass
23 reyssat 5
!if $ $ isin $qclass
12957 obado 6
  error=wrong class idX ($qclass)
7
  !exit
23 reyssat 8
!endif
9
 
10
!if $qclass=$empty or $rclass=$empty
12957 obado 11
  error=undefined local and/or remote class (qclass=$qclass | rclass=$rclass | initial_qclass=$initial_qclass)
12
  !exit
23 reyssat 13
!endif
14
 
4118 obado 15
!if _ isin $qclass
12957 obado 16
  qclass=!translate internal _ to , in $qclass
4118 obado 17
 
12957 obado 18
  subsubclassid=!item 3 of $qclass
19
  subclassid=!item 2 of $qclass
20
  qclass = !item 1 of $qclass
9909 obado 21
 
12957 obado 22
  !read scripts/check.class
23
  !if $error!=$empty
24
    !exit
25
  !endif
9909 obado 26
 
12957 obado 27
  class_type=!defof class_type in $classdeffile
28
  !if $class_type notitemof 2,4
29
    error=sorry, there shouldn't be a subclass in a simple class
30
    !exit
31
  !endif
9909 obado 32
 
12957 obado 33
  qclass = $qclass/$subclassid
34
  !if $subsubclassid!=$empty and $class_type=4
35
    qclass = $qclass/$subsubclassid
36
  !endif
9909 obado 37
 
4118 obado 38
!endif
39
 
40
 
23 reyssat 41
classdeffile=wimshome/log/classes/$qclass/.def
391 obado 42
classexofile=wimshome/log/classes/$qclass/.defs
43
 
23 reyssat 44
test=!defof class_defined in $classdeffile
45
!if $test!=yes
4118 obado 46
 error=class $qclass not existing
47
 !exit
23 reyssat 48
!endif
4118 obado 49
 
23 reyssat 50
test=!defof class_connections in $classdeffile
51
test=!items2words $test
52
test1=!translate internal +,; to $   $ in $test
53
!if $ident/$rclass notwordof $test1
12957 obado 54
 error=connection refused by requested class ($qclass) ($ident/$rclass)
23 reyssat 55
 !exit
56
!endif
57
 
1373 bpr 58
!if $job iswordof modclass delclass adduser moduser deluser recuser \
12957 obado 59
  putcsv update and\
60
  ($ident/$rclass+ notwordof $test and +$ident/$rclass+ notwordof $test)
10778 obado 61
  error=modification of class not allowed
62
  !exit
1373 bpr 63
!endif
391 obado 64
 
12957 obado 65
 
3261 obado 66
############ Tests : A quoi servent les "+" ? ###################
67
##ces plus sont rajoutés quand il y a des droits d'une classe sur l'autre. (BPR)
1373 bpr 68
!!#une classe créée à travers le module raw : il y a un + à la fin dans class_connections
3261 obado 69
## A quoi correspondent chacun de ces test ? (OB)
1373 bpr 70
 
9909 obado 71
!!# si l'on crée une classe en ajoutant une connection
1373 bpr 72
!!# no no
73
!!# dans la classe créée myself/2534808+
74
!!# dans la classe local yourself/7020853
75
 
76
!!# yes no
77
!!# myself/2534808+
78
!!# +yourself/6114403
79
 
80
!!# no yes
81
!!# myself/2534808#
3261 obado 82
!!# yourself/4729460+
1373 bpr 83
 
84
!!# yes yes
85
!!# myself/2534808+
86
!!# +yourself/1446641+
3261 obado 87
######################## FIN des tests
1373 bpr 88
 
23 reyssat 89
wims_class=$qclass
3261 obado 90
wims_class_dir=$wims_home/log/classes/$qclass