Rev 1205 | Rev 3261 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
qclass=!translate internal .,;?* to $ $ in $qclass
!if $ $ isin $qclass
qclass=
!endif
!if $qclass=$empty or $rclass=$empty
:badclass
error=bad class
!exit
!endif
classdeffile=wimshome/log/classes/$qclass/.def
classexofile=wimshome/log/classes/$qclass/.defs
test=!defof class_defined in $classdeffile
!if $test!=yes
!goto badclass
!endif
test=!defof class_connections in $classdeffile
test=!items2words $test
test1=!translate internal +,; to $ $ in $test
!if $ident/$rclass notwordof $test1
error=connection refused by requested class
!exit
!endif
# La partie qui suit me semble redondante, puisqu'on vient de verifier les connections de la classe.
#A quoi servent les "+" ?
#le double plus (+$ident/$rclass+) accorde-t-il des droits supplémentaires ?
##ces plus sont rajoutés quand il y a des droits d'une classe sur l'autre. Aussi je décommente, à vérifier
##(bpr)
# d'autre part, si la ligne contient "$ident/$rclass+", elle contient forcement "+$ident/$rclass+"
!if $job iswordof modclass delclass adduser moduser deluser recuser \
putcsv update and\
($ident/$rclass+ notwordof $test and +$ident/$rclass+ notwordof $test)
error=modification of class not allowed
!exit
!endif
!!#une classe créée à travers le module raw : il y a un + à la fin dans class_connections
!!# si l'on crée une classe en ajoutant une connection
!!# no no
!!# dans la classe créée myself/2534808+
!!# dans la classe local yourself/7020853
!!# yes no
!!# myself/2534808+
!!# +yourself/6114403
!!# no yes
!!# myself/2534808#
!!#yourself/4729460+
!!# yes yes
!!# myself/2534808+
!!# +yourself/1446641+
wims_class=$qclass
wims_user=supervisor