Rev 12845 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
23 | reyssat | 1 | !if robot isin $session or _ isin $session |
12845 | obado | 2 | !exit |
23 | reyssat | 3 | !endif |
2368 | bpr | 4 | !read adm/class/classlang names.phtml |
11690 | bpr | 5 | !default module_title2=$module_title |
5013 | bpr | 6 | |
5411 | bpr | 7 | listlim=100 |
23 | reyssat | 8 | wims_prefix=class user tmp |
9 | wims_module_log=$type $keyword |
||
10 | wims_helper=chapter=3 |
||
11 | wims_form_method=post |
||
12 | wims_ref_otherlangs=yes |
||
13 | !default class_bgcolor=$wims_bgcolor |
||
14 | !default class_bgimg=$wims_bgimg |
||
15 | !default class_css=$wims_css |
||
1170 | bpr | 16 | |
5013 | bpr | 17 | !if $class!=$empty |
12845 | obado | 18 | ## output auth_method_list, aut_idp_method_list, auth_method, aut_idp_method |
5105 | bpr | 19 | !read adm/class/initclass $class,auth |
23 | reyssat | 20 | !endif |
5020 | bpr | 21 | !!useful ! if $class=$empty |
22 | superclass=!text remove . in $superclass |
||
23 | !if $wims_superclass!=$empty |
||
12845 | obado | 24 | superclass=$wims_superclass |
5020 | bpr | 25 | !endif |
5013 | bpr | 26 | |
23 | reyssat | 27 | !default superclass2=$superclass |
28 | !read tabletheme |
||
5408 | guerimand | 29 | !if $auth_method=$empty and $class!=$empty |
12845 | obado | 30 | !bound type within supervisor,participant,example,\ |
31 | authsupervisor,authparticipant,forgetpwd default example |
||
5408 | guerimand | 32 | !else |
12845 | obado | 33 | !bound type within supervisor,participant,example,\ |
34 | authsupervisor,authparticipant default example |
||
5408 | guerimand | 35 | !endif |
23 | reyssat | 36 | !if $type=example |
12845 | obado | 37 | superclass= |
23 | reyssat | 38 | !endif |
4993 | bpr | 39 | |
5350 | guerimand | 40 | !if $type=forgetpwd |
12845 | obado | 41 | !changeto forgetpwd.proc |
5350 | guerimand | 42 | !endif |
43 | |||
23 | reyssat | 44 | !if $superclass=$empty |
12845 | obado | 45 | indf=wimshome/log/classes/.index |
46 | limited=yes |
||
23 | reyssat | 47 | !else |
12845 | obado | 48 | indf=wimshome/log/classes/$superclass/.subclasses |
49 | keyword= |
||
23 | reyssat | 50 | !endif |
51 | keyword=!items2words $keyword |
||
52 | keyword=!trim $keyword |
||
53 | kw=!words2items $keyword |
||
54 | kw=!deaccent $kw |
||
55 | kw=!tolower $kw |
||
56 | ccnt=!recordcnt $indf |
||
57 | !if $wims_class!=$empty |
||
12845 | obado | 58 | !read var.direct |
59 | !if $error!=$empty |
||
60 | !exit |
||
61 | !endif |
||
23 | reyssat | 62 | !endif |
63 | |||
64 | clcnt=0 |
||
65 | encnt=0 |
||
66 | lacnt=0 |
||
4348 | bpr | 67 | excnt=0 |
4256 | bpr | 68 | listla= |
23 | reyssat | 69 | !if $type=example |
12845 | obado | 70 | !for i=1 to $ccnt |
71 | l=!record $i of $indf |
||
72 | c=!item 1 of $l |
||
73 | !if NaN notin $[$c] and $c<10000 |
||
74 | ltest=!defof class_lang in wimshome/log/classes/$c/.def |
||
75 | !advance excnt |
||
76 | !if $module_language iswordof $ltest |
||
77 | laclasses=!append line $l to $laclasses |
||
78 | !advance lacnt |
||
79 | !else |
||
80 | listla=!append item $ltest to $listla |
||
81 | !if $ltest=en |
||
82 | enclasses=!append line $l to $enclasses |
||
83 | !advance encnt |
||
84 | !endif |
||
85 | !endif |
||
23 | reyssat | 86 | !endif |
12845 | obado | 87 | !next i |
88 | |||
89 | !if $lacnt>0 |
||
90 | clcnt=$lacnt |
||
91 | classes=$laclasses |
||
92 | !else |
||
93 | clcnt=$encnt |
||
94 | classes=$enclasses |
||
23 | reyssat | 95 | !endif |
12845 | obado | 96 | |
97 | listla=!listuniq $listla |
||
98 | listla=!replace internal , by </span>, <span class="tt"> in <span class="tt">$listla</span> |
||
99 | othercnt=$[$excnt-$lacnt] |
||
23 | reyssat | 100 | !endif |
101 | |||
102 | !if $type iswordof supervisor participant |
||
12845 | obado | 103 | sccnt=0 |
104 | !if $wims_class!=$empty |
||
105 | !defread wimshome/log/classes/$wims_class/.def |
||
106 | !! n_type is not always good |
||
107 | !set wims_ariane=!append line n_$type,8, to $wims_ariane |
||
108 | !default class_type=0 |
||
109 | !set wims_ariane_self=no |
||
110 | !if $class_type>=2 |
||
111 | !read adm/class/userdef classes,$wims_class,$wims_user |
||
112 | supervisable=!defof user_supervisable in $userdef |
||
113 | super_type=!defof class_type in wimshome/log/classes/$wims_superclass/.def |
||
114 | !ifval $super_type=4 |
||
115 | stype=$[$super_type] |
||
116 | sp=!translate internal / to , in $superclass2 |
||
117 | splevel=!itemcnt $sp |
||
118 | sparent=!item 1 to -2 of $sp |
||
119 | sparent=!translate internal , to / in $sparent |
||
120 | sparent=!nospace $sparent |
||
121 | !if $splevel=1 |
||
122 | classes1=!record 0 of wimshome/log/classes/$superclass2/levels |
||
123 | !endif |
||
124 | !if $splevel=2 |
||
125 | classes1=!record 0 of wimshome/log/classes/$superclass2/classes |
||
126 | classes2=!record 0 of wimshome/log/classes/$superclass2/programs |
||
127 | !!classes1=!append line $classes2 to $classes1 |
||
128 | !endif |
||
129 | !if $splevel=3 |
||
130 | classes1=!record 0 of wimshome/log/classes/$superclass2/courses |
||
131 | !endif |
||
132 | clcnt=!linecnt $classes1 |
||
133 | clcnt_pr=!linecnt $classes2 |
||
134 | classes= |
||
135 | classes_pr= |
||
136 | !for i=1 to $clcnt |
||
137 | l=!line $i of $classes1 |
||
138 | !distribute items $l into code,Sup,name,sup |
||
139 | classes=!append line $wims_superclass/$code,,,$name to $classes |
||
140 | !next i |
||
141 | !for i=1 to $clcnt_pr |
||
142 | l=!line $i of $classes2 |
||
143 | !distribute items $l into code,Sup,name,sup |
||
144 | classes_pr=!append line $wims_superclass/$code,,,$name to $classes_pr |
||
145 | !next i |
||
146 | !exit |
||
147 | !endif |
||
23 | reyssat | 148 | !endif |
12845 | obado | 149 | !endif |
150 | |||
151 | !for i=1 to $ccnt |
||
152 | l=!record $i of $indf |
||
153 | !distribute items $l into code,expire,inst,cl,la,ty |
||
154 | l1=!deaccent $l |
||
155 | l1=!tolower $l1 |
||
156 | c1=!text extract 0123456789 in $code |
||
157 | k=yes |
||
158 | !for w in $kw |
||
159 | !if $w notin $l1 |
||
160 | k=no |
||
161 | !break |
||
162 | !endif |
||
163 | !next w |
||
164 | !!delete condition on language in a superclass |
||
165 | !if (/ isin $code or $c1>9999) and ($la=$module_language or $class_type!=) and\ |
||
166 | ($code!=$wims_class or ($wims_user!=supervisor and $type=supervisor)) and \ |
||
167 | $k = yes |
||
168 | !if $ty isin 24 |
||
169 | sclasses=!append line $l to $sclasses |
||
170 | !advance sccnt |
||
171 | !else |
||
172 | classes=!append line $l to $classes |
||
173 | !advance clcnt |
||
174 | !endif |
||
23 | reyssat | 175 | !endif |
12845 | obado | 176 | !if $limited = yes and $clcnt+$sccnt > $listlim |
177 | overflow=yes |
||
178 | !break |
||
23 | reyssat | 179 | !endif |
12845 | obado | 180 | !next i |
181 | !if $wims_user!=$empty and $wims_supertype iswordof 2 4 |
||
182 | sccnt=0 |
||
23 | reyssat | 183 | !endif |
184 | !endif |
||
185 | |||
4152 | bpr | 186 | !if $type iswordof authparticipant authsupervisor |
12980 | bpr | 187 | !reset class_defined |
188 | class=!text remove . in $class |
||
189 | !defread wimshome/log/classes/$class/.def |
||
190 | !!#### la seconde condition pour entrer dans la classe en tant que supervisor : |
||
191 | !!#### le user est supervisor de cette classe, ou wims_realuser est supervisor ou vide (cas de l'administrateur) ou la classe est la classe test |
||
4993 | bpr | 192 | |
12980 | bpr | 193 | !if $type=authsupervisor and ($class isitemof $wims_supervise or $wims_realuser=$empty or $wims_realuser=supervisor or /0/ isin $class/) |
194 | !default auth_user=supervisor |
||
195 | !endif |
||
5100 | bpr | 196 | |
12980 | bpr | 197 | !if $save_logincgu!=$empty |
198 | auth_user=$save_logincgu |
||
199 | !endif |
||
4993 | bpr | 200 | |
12980 | bpr | 201 | superclass=!defof class_superclass in wimshome/log/classes/$class/.def |
202 | !default superclass=$class |
||
4993 | bpr | 203 | |
12980 | bpr | 204 | !if $class_defined=yes and ($auth_user!=$empty or $auth_method isitemof $auth_method_list) |
205 | !changeto var.auth |
||
206 | !endif |
||
23 | reyssat | 207 | !endif |