Rev 23 | Rev 4176 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
23 | reyssat | 1 | !read scripts/check.class |
2 | |||
3 | !if $error!=$empty |
||
4 | !exit |
||
5 | !endif |
||
6 | |||
7 | quser=!translate internal ./;,?* to $ $ in $quser |
||
8 | !if $ $ isin $quser |
||
9 | quser= |
||
10 | !endif |
||
11 | !if $quser=$empty |
||
12 | :baduser |
||
13 | error=bad user |
||
14 | !exit |
||
15 | !endif |
||
16 | |||
17 | !if $quser=supervisor |
||
18 | deffile=supervisor |
||
19 | !else |
||
20 | deffile=.users/$quser |
||
21 | !endif |
||
22 | userdeffile=wimshome/log/classes/$qclass/$deffile |
||
1373 | bpr | 23 | class_superclass=!defof class_superclass in $classdeffile |
23 | reyssat | 24 | |
1373 | bpr | 25 | !if $class_superclass= |
26 | test=!defof user_exists in $userdeffile |
||
27 | !if $test!=yes |
||
28 | !if $job!=getclassesuser |
||
29 | !goto baduser |
||
30 | !endif |
||
31 | !else |
||
32 | !if $job=getclassesuser |
||
33 | listclassesuser=!append item $qclass to $listclassesuser |
||
34 | !endif |
||
35 | !endif |
||
36 | !exit |
||
37 | !else |
||
38 | !!on regarde si user existe dans la superclasse |
||
39 | userdeffile=wimshome/log/classes/$class_superclass/$deffile |
||
40 | test=!defof user_exists in $userdeffile |
||
41 | !if $test!=yes |
||
42 | !goto baduser |
||
43 | !exit |
||
44 | !endif |
||
45 | test=!defof user_participate in $userdeffile |
||
46 | ### contient les classes auxquelles est inscrit l'étudiant et les cours non obligatoires |
||
47 | test=!items2words $test |
||
48 | !if $qclass iswordof $test |
||
49 | !exit |
||
50 | !endif |
||
51 | class_typename=!defof class_typename in $classdeffile |
||
52 | !if $class_typename iswordof program and (mandatory notwordof $class_progstyles or $class_progstyles=$empty) |
||
53 | ###si le programme n'est pas obligatoire, user_participate contient ce qu'il faut |
||
54 | qlist=!record 0 of wimshome/log/classes/$qclass/courses |
||
55 | qcourses=!linecnt $qlist |
||
56 | !for q_c=1 to $qcourses |
||
57 | testc=!line $q_c of $qlist |
||
58 | test1=!replace internal / by , in $(testc[1]) |
||
59 | ###test1 doit avoir trois items dans le cas d'un établissement |
||
60 | !if $class_superclass/$(test1[1])/$(test1[2]) iswordof $test |
||
61 | qclass=$class_superclass/$(testc[1]) |
||
62 | #### il devrait n'y en avoir qu'un correspondant au programme ? |
||
63 | !if $job=getclassesuser |
||
64 | listclassesuser=!append item $qclass to $listclassesuser |
||
65 | !endif |
||
66 | !exit |
||
67 | !endif |
||
68 | !next |
||
69 | !endif |