@@ -303,7 +303,7 @@ |
||
303 | 303 | |
304 | 304 | // TODO the password, if encrypted at the source, will be encrypted twice, which makes it useless. Try to fix that. |
305 | 305 | $passwordKey = isset($extldap_user_correspondance['password']) ? $extldap_user_correspondance['password'] : 'userPassword'; |
306 | - $password = $data[$passwordKey][0]; |
|
306 | + $password = $data[$passwordKey][0]; |
|
307 | 307 | |
308 | 308 | // To ease management, we add the step-year (etape-annee) code |
309 | 309 | //$official_code = $etape."-".$annee; |
@@ -20,7 +20,7 @@ |
||
20 | 20 | //Those are the mandatory fields for user creation. |
21 | 21 | //See external_add_user function for all the fields you can have. |
22 | 22 | $table = USERINFO_TABLE; |
23 | - $sql = "SELECT * from $table where username='" . Database::escape_string($login) . "'"; |
|
23 | + $sql = "SELECT * from $table where username='".Database::escape_string($login)."'"; |
|
24 | 24 | $result = Database::query($sql); |
25 | 25 | |
26 | 26 | if (Database::num_rows($result) == 0) { //false password |
@@ -28,14 +28,14 @@ |
||
28 | 28 | $loginLdapSucces = ldap_login($login, $password); |
29 | 29 | |
30 | 30 | if ($loginLdapSucces) { |
31 | - $loginFailed = false; |
|
32 | - $uidReset = true; |
|
33 | - $_user['user_id'] = $uData['user_id']; |
|
34 | - Session::write('_uid',$_uid); |
|
31 | + $loginFailed = false; |
|
32 | + $uidReset = true; |
|
33 | + $_user['user_id'] = $uData['user_id']; |
|
34 | + Session::write('_uid',$_uid); |
|
35 | 35 | // Jand: copied from event_login in events.lib.php to enable login statistics: |
36 | - Event::event_login($uData['user_id']); |
|
36 | + Event::event_login($uData['user_id']); |
|
37 | 37 | } else { |
38 | - $loginFailed = true; |
|
39 | - unset($_user['user_id']); |
|
40 | - $uidReset = false; |
|
38 | + $loginFailed = true; |
|
39 | + unset($_user['user_id']); |
|
40 | + $uidReset = false; |
|
41 | 41 | } |
@@ -31,7 +31,7 @@ |
||
31 | 31 | $loginFailed = false; |
32 | 32 | $uidReset = true; |
33 | 33 | $_user['user_id'] = $uData['user_id']; |
34 | - Session::write('_uid',$_uid); |
|
34 | + Session::write('_uid', $_uid); |
|
35 | 35 | // Jand: copied from event_login in events.lib.php to enable login statistics: |
36 | 36 | Event::event_login($uData['user_id']); |
37 | 37 | } else { |
@@ -80,7 +80,12 @@ discard block |
||
80 | 80 | |
81 | 81 | if ($res==1) { //WRONG PASSWORD |
82 | 82 | //$errorMessage = "LDAP User or password incorrect, try again.<br />"; |
83 | - if (isset($log)) unset($log); if (isset($uid)) unset($uid); |
|
83 | + if (isset($log)) { |
|
84 | + unset($log); |
|
85 | + } |
|
86 | + if (isset($uid)) { |
|
87 | + unset($uid); |
|
88 | + } |
|
84 | 89 | $loginLdapSucces = false; |
85 | 90 | } |
86 | 91 | if ($res==-1) { //WRONG USERNAME |
@@ -401,8 +406,9 @@ discard block |
||
401 | 406 | return $info; |
402 | 407 | |
403 | 408 | } else { |
404 | - if (count($ldap_query)!=0) |
|
405 | - Display :: display_error_message(get_lang('LDAPConnectionError')); |
|
409 | + if (count($ldap_query)!=0) { |
|
410 | + Display :: display_error_message(get_lang('LDAPConnectionError')); |
|
411 | + } |
|
406 | 412 | return array(); |
407 | 413 | } |
408 | 414 | } |
@@ -46,10 +46,9 @@ discard block |
||
46 | 46 | - Universite Jean Monet (J Dubois / Michel Courbon) |
47 | 47 | - Michel Panckoucke for reporting and fixing a bug |
48 | 48 | - Patrick Cool: fixing security hole |
49 | - |
|
50 | - * @author Roan Embrechts |
|
51 | - * @version 3.0 |
|
52 | - * @package chamilo.auth.ldap |
|
49 | + * @author Roan Embrechts |
|
50 | + * @version 3.0 |
|
51 | + * @package chamilo.auth.ldap |
|
53 | 52 | * Note: |
54 | 53 | * If you are using a firewall, you might need to check port 389 is open in |
55 | 54 | * order for Chamilo to communicate with the LDAP server. |
@@ -211,8 +210,8 @@ discard block |
||
211 | 210 | $language = api_get_setting('platformLanguage'); |
212 | 211 | if (empty($language)) { $language = 'english'; } |
213 | 212 | $_userId = UserManager::create_user($prenom, $nom, $status, |
214 | - $email, $uname, $password, $official_code, |
|
215 | - $language,'', '', 'ldap'); |
|
213 | + $email, $uname, $password, $official_code, |
|
214 | + $language,'', '', 'ldap'); |
|
216 | 215 | |
217 | 216 | //echo "new user added to Chamilo, id = $_userId"; |
218 | 217 | |
@@ -271,7 +270,7 @@ discard block |
||
271 | 270 | // Open anonymous LDAP connection |
272 | 271 | $result=false; |
273 | 272 | $ldap_bind_res = ldap_handle_bind($ds,$result); |
274 | - // Executing the search with the $filter parametr |
|
273 | + // Executing the search with the $filter parametr |
|
275 | 274 | //error_log('Searching for '.$filter.' on LDAP server',0); |
276 | 275 | $sr=ldap_search($ds,$ldap_basedn,$filter); |
277 | 276 | $info = ldap_get_entries($ds, $sr); |
@@ -564,35 +563,35 @@ discard block |
||
564 | 563 | foreach ($UserList as $enreg_user) { |
565 | 564 | $enreg_user = (int) $enreg_user; |
566 | 565 | Database::query("INSERT IGNORE ". |
567 | - " INTO $tbl_session_rel_course_rel_user ". |
|
568 | - "(session_id,c_id,user_id) VALUES ". |
|
569 | - "('$id_session','$enreg_course','$enreg_user')"); |
|
566 | + " INTO $tbl_session_rel_course_rel_user ". |
|
567 | + "(session_id,c_id,user_id) VALUES ". |
|
568 | + "('$id_session','$enreg_course','$enreg_user')"); |
|
570 | 569 | } |
571 | 570 | $sql = "SELECT COUNT(user_id) as nbUsers ". |
572 | - " FROM $tbl_session_rel_course_rel_user " . |
|
573 | - " WHERE session_id='$id_session' ". |
|
574 | - " AND c_id='$enreg_course'"; |
|
571 | + " FROM $tbl_session_rel_course_rel_user " . |
|
572 | + " WHERE session_id='$id_session' ". |
|
573 | + " AND c_id='$enreg_course'"; |
|
575 | 574 | $rs = Database::query($sql); |
576 | 575 | list($nbr_users) = Database::fetch_array($rs); |
577 | 576 | Database::query("UPDATE $tbl_session_rel_course ". |
578 | - " SET nbr_users=$nbr_users " . |
|
579 | - " WHERE session_id='$id_session' ". |
|
580 | - " AND c_id='$enreg_course'"); |
|
577 | + " SET nbr_users=$nbr_users " . |
|
578 | + " WHERE session_id='$id_session' ". |
|
579 | + " AND c_id='$enreg_course'"); |
|
581 | 580 | } |
582 | 581 | foreach ($UserList as $enreg_user) { |
583 | 582 | $enreg_user = (int) $enreg_user; |
584 | 583 | Database::query("INSERT IGNORE INTO $tbl_session_rel_user ". |
585 | - " (session_id, user_id, registered_at) " . |
|
586 | - " VALUES('$id_session','$enreg_user', '" . api_get_utc_datetime() . "')"); |
|
584 | + " (session_id, user_id, registered_at) " . |
|
585 | + " VALUES('$id_session','$enreg_user', '" . api_get_utc_datetime() . "')"); |
|
587 | 586 | } |
588 | 587 | // We update the number of users in the session |
589 | 588 | $sql = "SELECT COUNT(user_id) as nbUsers FROM $tbl_session_rel_user ". |
590 | - " WHERE session_id='$id_session' ". |
|
591 | - " AND relation_type<>".SESSION_RELATION_TYPE_RRHH." "; |
|
589 | + " WHERE session_id='$id_session' ". |
|
590 | + " AND relation_type<>".SESSION_RELATION_TYPE_RRHH." "; |
|
592 | 591 | $rs = Database::query($sql); |
593 | 592 | list($nbr_users) = Database::fetch_array($rs); |
594 | 593 | Database::query("UPDATE $tbl_session SET nbr_users=$nbr_users ". |
595 | - " WHERE id='$id_session'"); |
|
594 | + " WHERE id='$id_session'"); |
|
596 | 595 | } |
597 | 596 | |
598 | 597 | function syncro_users() { |
@@ -78,16 +78,16 @@ discard block |
||
78 | 78 | // res=-1 -> the user does not exist in the ldap database |
79 | 79 | // res=1 -> invalid password (user does exist) |
80 | 80 | |
81 | - if ($res==1) { //WRONG PASSWORD |
|
81 | + if ($res == 1) { //WRONG PASSWORD |
|
82 | 82 | //$errorMessage = "LDAP User or password incorrect, try again.<br />"; |
83 | 83 | if (isset($log)) unset($log); if (isset($uid)) unset($uid); |
84 | 84 | $loginLdapSucces = false; |
85 | 85 | } |
86 | - if ($res==-1) { //WRONG USERNAME |
|
86 | + if ($res == -1) { //WRONG USERNAME |
|
87 | 87 | //$errorMessage = "LDAP User or password incorrect, try again.<br />"; |
88 | 88 | $login_ldap_success = false; |
89 | 89 | } |
90 | - if ($res==0) { //LOGIN & PASSWORD OK - SUCCES |
|
90 | + if ($res == 0) { //LOGIN & PASSWORD OK - SUCCES |
|
91 | 91 | //$errorMessage = "Successful login w/ LDAP.<br>"; |
92 | 92 | $login_ldap_success = true; |
93 | 93 | } |
@@ -103,30 +103,30 @@ discard block |
||
103 | 103 | * @author Stefan De Wannemacker |
104 | 104 | * @author Roan Embrechts |
105 | 105 | */ |
106 | -function ldap_find_user_info ($login) { |
|
106 | +function ldap_find_user_info($login) { |
|
107 | 107 | //error_log('Entering ldap_find_user_info('.$login.')',0); |
108 | 108 | global $ldap_host, $ldap_port, $ldap_basedn, $ldap_rdn, $ldap_pass, $ldap_search_dn; |
109 | 109 | // basic sequence with LDAP is connect, bind, search, |
110 | 110 | // interpret search result, close connection |
111 | 111 | |
112 | 112 | //echo "Connecting ..."; |
113 | - $ldap_connect = ldap_connect( $ldap_host, $ldap_port); |
|
113 | + $ldap_connect = ldap_connect($ldap_host, $ldap_port); |
|
114 | 114 | ldap_set_version($ldap_connect); |
115 | 115 | if ($ldap_connect) { |
116 | 116 | //echo " Connect to LDAP server successful "; |
117 | 117 | //echo "Binding ..."; |
118 | 118 | $ldap_bind = false; |
119 | - $ldap_bind_res = ldap_handle_bind($ldap_connect,$ldap_bind); |
|
119 | + $ldap_bind_res = ldap_handle_bind($ldap_connect, $ldap_bind); |
|
120 | 120 | if ($ldap_bind_res) { |
121 | 121 | //echo " LDAP bind successful... "; |
122 | 122 | //echo " Searching for uid... "; |
123 | 123 | // Search surname entry |
124 | 124 | //OLD: $sr=ldap_search($ldapconnect,"dc=rug, dc=ac, dc=be", "uid=$login"); |
125 | 125 | //echo "<p> ldapDc = '$LDAPbasedn' </p>"; |
126 | - if(!empty($ldap_search_dn)) { |
|
127 | - $sr=ldap_search($ldap_connect, $ldap_search_dn, "uid=$login"); |
|
126 | + if (!empty($ldap_search_dn)) { |
|
127 | + $sr = ldap_search($ldap_connect, $ldap_search_dn, "uid=$login"); |
|
128 | 128 | } else { |
129 | - $sr=ldap_search($ldap_connect, $ldap_basedn, "uid=$login"); |
|
129 | + $sr = ldap_search($ldap_connect, $ldap_basedn, "uid=$login"); |
|
130 | 130 | } |
131 | 131 | //echo " Search result is ".$sr; |
132 | 132 | //echo " Number of entries returned is ".ldap_count_entries($ldapconnect,$sr); |
@@ -177,25 +177,25 @@ discard block |
||
177 | 177 | $password1 = $ldap_pass_placeholder; |
178 | 178 | $official_code = ''; |
179 | 179 | |
180 | - define ("STUDENT",5); |
|
181 | - define ("COURSEMANAGER",1); |
|
180 | + define("STUDENT", 5); |
|
181 | + define("COURSEMANAGER", 1); |
|
182 | 182 | |
183 | 183 | $tutor_field = api_get_setting('ldap_filled_tutor_field'); |
184 | 184 | $tutor_value = api_get_setting('ldap_filled_tutor_field_value'); |
185 | - if(empty($tutor_field)) { |
|
185 | + if (empty($tutor_field)) { |
|
186 | 186 | $status = STUDENT; |
187 | 187 | } else { |
188 | - if(empty($tutor_value)) { |
|
188 | + if (empty($tutor_value)) { |
|
189 | 189 | //in this case, we are assuming that the admin didn't give a criteria |
190 | 190 | // so that if the field is not empty, it is a tutor |
191 | - if(!empty($info_array[$tutor_field])) { |
|
191 | + if (!empty($info_array[$tutor_field])) { |
|
192 | 192 | $status = COURSEMANAGER; |
193 | 193 | } else { |
194 | 194 | $status = STUDENT; |
195 | 195 | } |
196 | 196 | } else { |
197 | 197 | //the tutor_value is filled, so we need to check the contents of the LDAP field |
198 | - if (is_array($info_array[$tutor_field]) && in_array($tutor_value,$info_array[$tutor_field])) { |
|
198 | + if (is_array($info_array[$tutor_field]) && in_array($tutor_value, $info_array[$tutor_field])) { |
|
199 | 199 | $status = COURSEMANAGER; |
200 | 200 | } else { |
201 | 201 | $status = STUDENT; |
@@ -212,7 +212,7 @@ discard block |
||
212 | 212 | if (empty($language)) { $language = 'english'; } |
213 | 213 | $_userId = UserManager::create_user($prenom, $nom, $status, |
214 | 214 | $email, $uname, $password, $official_code, |
215 | - $language,'', '', 'ldap'); |
|
215 | + $language, '', '', 'ldap'); |
|
216 | 216 | |
217 | 217 | //echo "new user added to Chamilo, id = $_userId"; |
218 | 218 | |
@@ -246,58 +246,58 @@ discard block |
||
246 | 246 | * @param string password given by user |
247 | 247 | * @return int 0 if authentication succeeded, 1 if password was incorrect, -1 if it didn't belong to LDAP |
248 | 248 | */ |
249 | -function ldap_authentication_check ($uname, $passwd) { |
|
249 | +function ldap_authentication_check($uname, $passwd) { |
|
250 | 250 | //error_log('Entering ldap_authentication_check('.$uname.','.$passwd.')',0); |
251 | - global $ldap_host, $ldap_port, $ldap_basedn, $ldap_host2, $ldap_port2,$ldap_rdn,$ldap_pass; |
|
251 | + global $ldap_host, $ldap_port, $ldap_basedn, $ldap_host2, $ldap_port2, $ldap_rdn, $ldap_pass; |
|
252 | 252 | //error_log('Entering ldap_authentication_check('.$uname.','.$passwd.')',0); |
253 | 253 | // Establish anonymous connection with LDAP server |
254 | 254 | // Etablissement de la connexion anonyme avec le serveur LDAP |
255 | - $ds=ldap_connect($ldap_host,$ldap_port); |
|
255 | + $ds = ldap_connect($ldap_host, $ldap_port); |
|
256 | 256 | ldap_set_version($ds); |
257 | 257 | |
258 | 258 | $test_bind = false; |
259 | - $test_bind_res = ldap_handle_bind($ds,$test_bind); |
|
259 | + $test_bind_res = ldap_handle_bind($ds, $test_bind); |
|
260 | 260 | //if problem, use the replica |
261 | - if ($test_bind_res===false) { |
|
262 | - $ds=ldap_connect($ldap_host2,$ldap_port2); |
|
261 | + if ($test_bind_res === false) { |
|
262 | + $ds = ldap_connect($ldap_host2, $ldap_port2); |
|
263 | 263 | ldap_set_version($ds); |
264 | 264 | } else { |
265 | 265 | //error_log('Connected to server '.$ldap_host); |
266 | 266 | } |
267 | - if ($ds!==false) { |
|
267 | + if ($ds !== false) { |
|
268 | 268 | //Creation of filter containing values input by the user |
269 | 269 | // Here it might be necessary to use $filter="(samaccountName=$uname)"; - see http://support.chamilo.org/issues/4675 |
270 | - $filter="(uid=$uname)"; |
|
270 | + $filter = "(uid=$uname)"; |
|
271 | 271 | // Open anonymous LDAP connection |
272 | - $result=false; |
|
273 | - $ldap_bind_res = ldap_handle_bind($ds,$result); |
|
272 | + $result = false; |
|
273 | + $ldap_bind_res = ldap_handle_bind($ds, $result); |
|
274 | 274 | // Executing the search with the $filter parametr |
275 | 275 | //error_log('Searching for '.$filter.' on LDAP server',0); |
276 | - $sr=ldap_search($ds,$ldap_basedn,$filter); |
|
276 | + $sr = ldap_search($ds, $ldap_basedn, $filter); |
|
277 | 277 | $info = ldap_get_entries($ds, $sr); |
278 | - $dn=($info[0]["dn"]); |
|
278 | + $dn = ($info[0]["dn"]); |
|
279 | 279 | // debug !! echo"<br> dn = $dn<br> pass = $passwd<br>"; |
280 | 280 | // closing 1st connection |
281 | 281 | ldap_close($ds); |
282 | 282 | } |
283 | 283 | |
284 | 284 | // test the Distinguish Name from the 1st connection |
285 | - if ($dn=="") { |
|
286 | - return (-1); // doesn't belong to the addressbook |
|
285 | + if ($dn == "") { |
|
286 | + return (-1); // doesn't belong to the addressbook |
|
287 | 287 | } |
288 | 288 | //bug ldap.. if password empty, return 1! |
289 | - if ($passwd=="") { |
|
289 | + if ($passwd == "") { |
|
290 | 290 | return(1); |
291 | 291 | } |
292 | 292 | // Opening 2nd LDAP connection : Connection user for password check |
293 | - $ds=ldap_connect($ldap_host,$ldap_port); |
|
293 | + $ds = ldap_connect($ldap_host, $ldap_port); |
|
294 | 294 | ldap_set_version($ds); |
295 | 295 | if (!$test_bind) { |
296 | - $ds=ldap_connect($ldap_host2,$ldap_port2); |
|
296 | + $ds = ldap_connect($ldap_host2, $ldap_port2); |
|
297 | 297 | ldap_set_version($ds); |
298 | 298 | } |
299 | 299 | // return in case of wrong password connection error |
300 | - if (@ldap_bind( $ds, $dn , $passwd) === false) { |
|
300 | + if (@ldap_bind($ds, $dn, $passwd) === false) { |
|
301 | 301 | return (1); // invalid password |
302 | 302 | } else {// connection successfull |
303 | 303 | return (0); |
@@ -311,7 +311,7 @@ discard block |
||
311 | 311 | function ldap_set_version(&$resource) { |
312 | 312 | //error_log('Entering ldap_set_version(&$resource)',0); |
313 | 313 | global $ldap_version; |
314 | - if ($ldap_version>2) { |
|
314 | + if ($ldap_version > 2) { |
|
315 | 315 | if (ldap_set_option($resource, LDAP_OPT_PROTOCOL_VERSION, 3)) { |
316 | 316 | //ok - don't do anything |
317 | 317 | } else { |
@@ -325,14 +325,14 @@ discard block |
||
325 | 325 | * @param resource The LDAP bind handler we will be modifying |
326 | 326 | * @return boolean Status of the bind assignment. True for success, false for failure. |
327 | 327 | */ |
328 | -function ldap_handle_bind(&$ldap_handler,&$ldap_bind) { |
|
328 | +function ldap_handle_bind(&$ldap_handler, &$ldap_bind) { |
|
329 | 329 | //error_log('Entering ldap_handle_bind(&$ldap_handler,&$ldap_bind)',0); |
330 | - global $ldap_rdn,$ldap_pass, $extldap_config; |
|
330 | + global $ldap_rdn, $ldap_pass, $extldap_config; |
|
331 | 331 | $ldap_rdn = $extldap_config['admin_dn']; |
332 | 332 | $ldap_pass = $extldap_config['admin_password']; |
333 | 333 | if (!empty($ldap_rdn) and !empty($ldap_pass)) { |
334 | 334 | //error_log('Trying authenticated login :'.$ldap_rdn.'/'.$ldap_pass,0); |
335 | - $ldap_bind = ldap_bind($ldap_handler,$ldap_rdn,$ldap_pass); |
|
335 | + $ldap_bind = ldap_bind($ldap_handler, $ldap_rdn, $ldap_pass); |
|
336 | 336 | if (!$ldap_bind) { |
337 | 337 | //error_log('Authenticated login failed',0); |
338 | 338 | //try in anonymous mode, you never know... |
@@ -358,40 +358,40 @@ discard block |
||
358 | 358 | |
359 | 359 | global $ldap_basedn, $ldap_host, $ldap_port, $ldap_rdn, $ldap_pass, $ldap_search_dn, $extldap_user_correspondance; |
360 | 360 | |
361 | - $keyword_firstname = isset($_GET['keyword_firstname']) ? trim(Database::escape_string($_GET['keyword_firstname'])): ''; |
|
361 | + $keyword_firstname = isset($_GET['keyword_firstname']) ? trim(Database::escape_string($_GET['keyword_firstname'])) : ''; |
|
362 | 362 | $keyword_lastname = isset($_GET['keyword_lastname']) ? trim(Database::escape_string($_GET['keyword_lastname'])) : ''; |
363 | 363 | $keyword_username = isset($_GET['keyword_username']) ? trim(Database::escape_string($_GET['keyword_username'])) : ''; |
364 | 364 | $keyword_type = isset($_GET['keyword_type']) ? Database::escape_string($_GET['keyword_type']) : ''; |
365 | 365 | |
366 | - $ldap_query=array(); |
|
366 | + $ldap_query = array(); |
|
367 | 367 | |
368 | 368 | if ($keyword_username != "") { |
369 | 369 | $ldap_query[] = str_replace('%username%', $keyword_username, $ldap_search_dn); |
370 | 370 | } else { |
371 | - if ($keyword_lastname!=""){ |
|
372 | - $ldap_query[]="(".$extldap_user_correspondance['lastname']."=".$keyword_lastname."*)"; |
|
371 | + if ($keyword_lastname != "") { |
|
372 | + $ldap_query[] = "(".$extldap_user_correspondance['lastname']."=".$keyword_lastname."*)"; |
|
373 | 373 | } |
374 | - if ($keyword_firstname!="") { |
|
375 | - $ldap_query[]="(".$extldap_user_correspondance['firstname']."=".$keyword_firstname."*)"; |
|
374 | + if ($keyword_firstname != "") { |
|
375 | + $ldap_query[] = "(".$extldap_user_correspondance['firstname']."=".$keyword_firstname."*)"; |
|
376 | 376 | } |
377 | 377 | } |
378 | - if ($keyword_type !="" && $keyword_type !="all") { |
|
379 | - $ldap_query[]="(employeeType=".$keyword_type.")"; |
|
378 | + if ($keyword_type != "" && $keyword_type != "all") { |
|
379 | + $ldap_query[] = "(employeeType=".$keyword_type.")"; |
|
380 | 380 | } |
381 | 381 | |
382 | - if (count($ldap_query)>1){ |
|
383 | - $str_query.="(& "; |
|
384 | - foreach ($ldap_query as $query){ |
|
385 | - $str_query.=" $query"; |
|
382 | + if (count($ldap_query) > 1) { |
|
383 | + $str_query .= "(& "; |
|
384 | + foreach ($ldap_query as $query) { |
|
385 | + $str_query .= " $query"; |
|
386 | 386 | } |
387 | - $str_query.=" )"; |
|
387 | + $str_query .= " )"; |
|
388 | 388 | } else { |
389 | - $str_query= count($ldap_query) > 0 ? $ldap_query[0] : null; |
|
389 | + $str_query = count($ldap_query) > 0 ? $ldap_query[0] : null; |
|
390 | 390 | } |
391 | 391 | |
392 | 392 | $ds = ldap_connect($ldap_host, $ldap_port); |
393 | 393 | ldap_set_version($ds); |
394 | - if ($ds && count($ldap_query)>0) { |
|
394 | + if ($ds && count($ldap_query) > 0) { |
|
395 | 395 | $r = false; |
396 | 396 | $res = ldap_handle_bind($ds, $r); |
397 | 397 | //$sr = ldap_search($ds, "ou=test-ou,$ldap_basedn", $str_query); |
@@ -401,7 +401,7 @@ discard block |
||
401 | 401 | return $info; |
402 | 402 | |
403 | 403 | } else { |
404 | - if (count($ldap_query)!=0) |
|
404 | + if (count($ldap_query) != 0) |
|
405 | 405 | Display :: display_error_message(get_lang('LDAPConnectionError')); |
406 | 406 | return array(); |
407 | 407 | } |
@@ -414,7 +414,7 @@ discard block |
||
414 | 414 | */ |
415 | 415 | function ldap_get_number_of_users() { |
416 | 416 | $info = ldap_get_users(); |
417 | - if (count($info)>0) { |
|
417 | + if (count($info) > 0) { |
|
418 | 418 | return $info['count']; |
419 | 419 | } else { |
420 | 420 | return 0; |
@@ -434,9 +434,9 @@ discard block |
||
434 | 434 | $is_western_name_order = api_is_western_name_order(); |
435 | 435 | if (isset($_GET['submit'])) { |
436 | 436 | $info = ldap_get_users(); |
437 | - if ($info['count']>0) { |
|
438 | - for ($key = 0; $key < $info["count"]; $key ++) { |
|
439 | - $user=array(); |
|
437 | + if ($info['count'] > 0) { |
|
438 | + for ($key = 0; $key < $info["count"]; $key++) { |
|
439 | + $user = array(); |
|
440 | 440 | // Get uid from dn |
441 | 441 | //YW: this might be a variation between LDAP 2 and LDAP 3, but in LDAP 3, the uid is in |
442 | 442 | //the corresponding index of the array |
@@ -470,9 +470,9 @@ discard block |
||
470 | 470 | * @return string Some HTML-code with modify-buttons |
471 | 471 | * @author Mustapha Alouani |
472 | 472 | */ |
473 | -function modify_filter($user_id,$url_params, $row) { |
|
474 | - $query_string="id[]=".$row[0]; |
|
475 | - if (!empty($_GET['id_session'])){ |
|
473 | +function modify_filter($user_id, $url_params, $row) { |
|
474 | + $query_string = "id[]=".$row[0]; |
|
475 | + if (!empty($_GET['id_session'])) { |
|
476 | 476 | $query_string .= '&id_session='.Security::remove_XSS($_GET['id_session']); |
477 | 477 | } |
478 | 478 | //$url_params_id="id=".$row[0]; |
@@ -497,7 +497,7 @@ discard block |
||
497 | 497 | $firstname = api_convert_encoding($data['cn'][0], api_get_system_encoding(), 'UTF-8'); |
498 | 498 | $email = $data['mail'][0]; |
499 | 499 | // Get uid from dn |
500 | - $dn_array=ldap_explode_dn($data['dn'],1); |
|
500 | + $dn_array = ldap_explode_dn($data['dn'], 1); |
|
501 | 501 | $username = $dn_array[0]; // uid is first key |
502 | 502 | $outab[] = $data['edupersonprimaryaffiliation'][0]; // Here, "student" |
503 | 503 | //$val = ldap_get_values_len($ds, $entry, "userPassword"); |
@@ -505,29 +505,29 @@ discard block |
||
505 | 505 | //$password = $val[0]; |
506 | 506 | // TODO the password, if encrypted at the source, will be encrypted twice, which makes it useless. Try to fix that. |
507 | 507 | $password = $data['userPassword'][0]; |
508 | - $structure=$data['edupersonprimaryorgunitdn'][0]; |
|
509 | - $array_structure=explode(",", $structure); |
|
510 | - $array_val=explode("=", $array_structure[0]); |
|
511 | - $etape=$array_val[1]; |
|
512 | - $array_val=explode("=", $array_structure[1]); |
|
513 | - $annee=$array_val[1]; |
|
508 | + $structure = $data['edupersonprimaryorgunitdn'][0]; |
|
509 | + $array_structure = explode(",", $structure); |
|
510 | + $array_val = explode("=", $array_structure[0]); |
|
511 | + $etape = $array_val[1]; |
|
512 | + $array_val = explode("=", $array_structure[1]); |
|
513 | + $annee = $array_val[1]; |
|
514 | 514 | // To ease management, we add the step-year (etape-annee) code |
515 | - $official_code=$etape."-".$annee; |
|
516 | - $auth_source='ldap'; |
|
515 | + $official_code = $etape."-".$annee; |
|
516 | + $auth_source = 'ldap'; |
|
517 | 517 | // No expiration date for students (recover from LDAP's shadow expiry) |
518 | - $expiration_date=''; |
|
519 | - $active=1; |
|
520 | - if(empty($status)){$status = 5;} |
|
521 | - if(empty($phone)){$phone = '';} |
|
522 | - if(empty($picture_uri)){$picture_uri = '';} |
|
518 | + $expiration_date = ''; |
|
519 | + $active = 1; |
|
520 | + if (empty($status)) {$status = 5; } |
|
521 | + if (empty($phone)) {$phone = ''; } |
|
522 | + if (empty($picture_uri)) {$picture_uri = ''; } |
|
523 | 523 | // Adding user |
524 | 524 | $user_id = 0; |
525 | 525 | if (UserManager::is_username_available($username)) { |
526 | - $user_id = UserManager::create_user($firstname,$lastname,$status,$email,$username,$password,$official_code,api_get_setting('platformLanguage'),$phone,$picture_uri,$auth_source,$expiration_date,$active); |
|
526 | + $user_id = UserManager::create_user($firstname, $lastname, $status, $email, $username, $password, $official_code, api_get_setting('platformLanguage'), $phone, $picture_uri, $auth_source, $expiration_date, $active); |
|
527 | 527 | } else { |
528 | 528 | if ($update_if_exists) { |
529 | 529 | $user = api_get_user_info($username); |
530 | - $user_id=$user['user_id']; |
|
530 | + $user_id = $user['user_id']; |
|
531 | 531 | UserManager::update_user($user_id, $firstname, $lastname, $username, null, null, $email, $status, $official_code, $phone, $picture_uri, $expiration_date, $active); |
532 | 532 | } |
533 | 533 | } |
@@ -544,21 +544,21 @@ discard block |
||
544 | 544 | |
545 | 545 | // Database Table Definitions |
546 | 546 | $tbl_session = Database::get_main_table(TABLE_MAIN_SESSION); |
547 | - $tbl_session_rel_class = Database::get_main_table(TABLE_MAIN_SESSION_CLASS); |
|
547 | + $tbl_session_rel_class = Database::get_main_table(TABLE_MAIN_SESSION_CLASS); |
|
548 | 548 | $tbl_session_rel_course = Database::get_main_table(TABLE_MAIN_SESSION_COURSE); |
549 | 549 | $tbl_session_rel_course_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER); |
550 | 550 | $tbl_course = Database::get_main_table(TABLE_MAIN_COURSE); |
551 | 551 | $tbl_user = Database::get_main_table(TABLE_MAIN_USER); |
552 | 552 | $tbl_session_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_USER); |
553 | - $tbl_class = Database::get_main_table(TABLE_MAIN_CLASS); |
|
554 | - $tbl_class_user = Database::get_main_table(TABLE_MAIN_CLASS_USER); |
|
553 | + $tbl_class = Database::get_main_table(TABLE_MAIN_CLASS); |
|
554 | + $tbl_class_user = Database::get_main_table(TABLE_MAIN_CLASS_USER); |
|
555 | 555 | |
556 | 556 | $id_session = (int) $id_session; |
557 | 557 | // Once users are imported in the users base, we can assign them to the session |
558 | - $result=Database::query("SELECT c_id FROM $tbl_session_rel_course WHERE session_id ='$id_session'"); |
|
559 | - $CourseList=array(); |
|
560 | - while ($row=Database::fetch_array($result)) { |
|
561 | - $CourseList[]=$row['c_id']; |
|
558 | + $result = Database::query("SELECT c_id FROM $tbl_session_rel_course WHERE session_id ='$id_session'"); |
|
559 | + $CourseList = array(); |
|
560 | + while ($row = Database::fetch_array($result)) { |
|
561 | + $CourseList[] = $row['c_id']; |
|
562 | 562 | } |
563 | 563 | foreach ($CourseList as $enreg_course) { |
564 | 564 | foreach ($UserList as $enreg_user) { |
@@ -569,21 +569,21 @@ discard block |
||
569 | 569 | "('$id_session','$enreg_course','$enreg_user')"); |
570 | 570 | } |
571 | 571 | $sql = "SELECT COUNT(user_id) as nbUsers ". |
572 | - " FROM $tbl_session_rel_course_rel_user " . |
|
572 | + " FROM $tbl_session_rel_course_rel_user ". |
|
573 | 573 | " WHERE session_id='$id_session' ". |
574 | 574 | " AND c_id='$enreg_course'"; |
575 | 575 | $rs = Database::query($sql); |
576 | 576 | list($nbr_users) = Database::fetch_array($rs); |
577 | 577 | Database::query("UPDATE $tbl_session_rel_course ". |
578 | - " SET nbr_users=$nbr_users " . |
|
578 | + " SET nbr_users=$nbr_users ". |
|
579 | 579 | " WHERE session_id='$id_session' ". |
580 | 580 | " AND c_id='$enreg_course'"); |
581 | 581 | } |
582 | 582 | foreach ($UserList as $enreg_user) { |
583 | 583 | $enreg_user = (int) $enreg_user; |
584 | 584 | Database::query("INSERT IGNORE INTO $tbl_session_rel_user ". |
585 | - " (session_id, user_id, registered_at) " . |
|
586 | - " VALUES('$id_session','$enreg_user', '" . api_get_utc_datetime() . "')"); |
|
585 | + " (session_id, user_id, registered_at) ". |
|
586 | + " VALUES('$id_session','$enreg_user', '".api_get_utc_datetime()."')"); |
|
587 | 587 | } |
588 | 588 | // We update the number of users in the session |
589 | 589 | $sql = "SELECT COUNT(user_id) as nbUsers FROM $tbl_session_rel_user ". |
@@ -598,13 +598,13 @@ discard block |
||
598 | 598 | function syncro_users() { |
599 | 599 | global $ldap_basedn, $ldap_host, $ldap_port, $ldap_rdn, $ldap_pass, $ldap_search_dn; |
600 | 600 | echo "Connecting ..."; |
601 | - $ldap_connect = ldap_connect( $ldap_host, $ldap_port); |
|
601 | + $ldap_connect = ldap_connect($ldap_host, $ldap_port); |
|
602 | 602 | ldap_set_version($ldap_connect); |
603 | 603 | if ($ldap_connect) { |
604 | 604 | //echo " Connect to LDAP server successful "; |
605 | 605 | //echo "Binding ..."; |
606 | 606 | $ldap_bind = false; |
607 | - $ldap_bind_res = ldap_handle_bind($ldap_connect,$ldap_bind); |
|
607 | + $ldap_bind_res = ldap_handle_bind($ldap_connect, $ldap_bind); |
|
608 | 608 | if ($ldap_bind_res) { |
609 | 609 | //echo " LDAP bind successful... "; |
610 | 610 | //echo " Searching for uid... "; |
@@ -612,7 +612,7 @@ discard block |
||
612 | 612 | //OLD: $sr=ldap_search($ldapconnect,"dc=rug, dc=ac, dc=be", "uid=$login"); |
613 | 613 | //echo "<p> ldapDc = '$LDAPbasedn' </p>"; |
614 | 614 | $all_user_query = "uid=*"; |
615 | - if(!empty($ldap_search_dn)) { |
|
615 | + if (!empty($ldap_search_dn)) { |
|
616 | 616 | $sr = ldap_search($ldap_connect, $ldap_search_dn, $all_user_query); |
617 | 617 | } else { |
618 | 618 | $sr = ldap_search($ldap_connect, $ldap_basedn, $all_user_query); |
@@ -620,7 +620,7 @@ discard block |
||
620 | 620 | //echo " Number of entries returned is ".ldap_count_entries($ldapconnect,$sr); |
621 | 621 | //echo " Getting entries ..."; |
622 | 622 | $info = ldap_get_entries($ldap_connect, $sr); |
623 | - for ($key = 0; $key < $info['count']; $key ++) { |
|
623 | + for ($key = 0; $key < $info['count']; $key++) { |
|
624 | 624 | $user_id = ldap_add_user_by_array($info[$key], false); |
625 | 625 | if ($user_id) { |
626 | 626 | echo "User #$user_id created "; |
@@ -34,7 +34,7 @@ discard block |
||
34 | 34 | */ |
35 | 35 | public function __construct() |
36 | 36 | { |
37 | - $this->protocol = api_get_setting('sso_authentication_protocol'); |
|
37 | + $this->protocol = api_get_setting('sso_authentication_protocol'); |
|
38 | 38 | // There can be multiple domains, so make sure to take only the first |
39 | 39 | // This might be later extended with a decision process |
40 | 40 | $domains = explode(',', api_get_setting('sso_authentication_domain')); |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | $this->auth_uri = api_get_setting('sso_authentication_auth_uri'); |
43 | 43 | $this->deauth_uri = api_get_setting('sso_authentication_unauth_uri'); |
44 | 44 | //cut the string to avoid recursive URL construction in case of failure |
45 | - $this->referer = $this->protocol.$_SERVER['HTTP_HOST'].substr($_SERVER['REQUEST_URI'],0,strpos($_SERVER['REQUEST_URI'],'sso')); |
|
45 | + $this->referer = $this->protocol.$_SERVER['HTTP_HOST'].substr($_SERVER['REQUEST_URI'], 0, strpos($_SERVER['REQUEST_URI'], 'sso')); |
|
46 | 46 | $this->deauth_url = $this->protocol.$this->domain.$this->deauth_uri; |
47 | 47 | $this->master_url = $this->protocol.$this->domain.$this->auth_uri; |
48 | 48 | $this->referrer_uri = base64_encode($_SERVER['REQUEST_URI']); |
@@ -130,11 +130,11 @@ discard block |
||
130 | 130 | ) { |
131 | 131 | //error_log('user n password are ok'); |
132 | 132 | //Check if the account is active (not locked) |
133 | - if ($uData['active']=='1') { |
|
133 | + if ($uData['active'] == '1') { |
|
134 | 134 | // check if the expiration date has not been reached |
135 | 135 | if (empty($uData['expiration_date']) |
136 | 136 | or $uData['expiration_date'] > date('Y-m-d H:i:s') |
137 | - or $uData['expiration_date']=='0000-00-00 00:00:00') { |
|
137 | + or $uData['expiration_date'] == '0000-00-00 00:00:00') { |
|
138 | 138 | |
139 | 139 | //If Multiple URL is enabled |
140 | 140 | if (api_get_multiple_access_url()) { |
@@ -168,11 +168,11 @@ discard block |
||
168 | 168 | // the user credentials are OK, which |
169 | 169 | // should be protection enough |
170 | 170 | // against evil URL spoofing... |
171 | - $sso_target = api_get_path(WEB_PATH) . base64_decode($sso['ruri']); |
|
171 | + $sso_target = api_get_path(WEB_PATH).base64_decode($sso['ruri']); |
|
172 | 172 | } else { |
173 | - $sso_target = isset($sso['target']) ? $sso['target'] : api_get_path(WEB_PATH) . 'index.php'; |
|
173 | + $sso_target = isset($sso['target']) ? $sso['target'] : api_get_path(WEB_PATH).'index.php'; |
|
174 | 174 | } |
175 | - header('Location: '. $sso_target); |
|
175 | + header('Location: '.$sso_target); |
|
176 | 176 | exit; |
177 | 177 | } else { |
178 | 178 | // user does not have permission for this site |
@@ -286,9 +286,9 @@ discard block |
||
286 | 286 | $userId = intval($userId); |
287 | 287 | |
288 | 288 | if ($asAdmin && api_is_platform_admin(true)) { |
289 | - return api_get_path(WEB_CODE_PATH) . "admin/user_edit.php?user_id=$userId"; |
|
289 | + return api_get_path(WEB_CODE_PATH)."admin/user_edit.php?user_id=$userId"; |
|
290 | 290 | } |
291 | 291 | |
292 | - return api_get_path(WEB_CODE_PATH) . 'auth/profile.php'; |
|
292 | + return api_get_path(WEB_CODE_PATH).'auth/profile.php'; |
|
293 | 293 | } |
294 | 294 | } |
@@ -90,7 +90,7 @@ |
||
90 | 90 | |
91 | 91 | /** |
92 | 92 | * Validates the received active connection data with the database |
93 | - * @return bool Return the loginFailed variable value to local.inc.php |
|
93 | + * @return null|false Return the loginFailed variable value to local.inc.php |
|
94 | 94 | */ |
95 | 95 | public function check_user() |
96 | 96 | { |
@@ -22,11 +22,11 @@ discard block |
||
22 | 22 | */ |
23 | 23 | class ssoDrupal |
24 | 24 | { |
25 | - public $protocol; // 'http://', |
|
26 | - public $domain; // 'localhost/project/drupal', |
|
27 | - public $auth_uri; // '/?q=user', |
|
25 | + public $protocol; // 'http://', |
|
26 | + public $domain; // 'localhost/project/drupal', |
|
27 | + public $auth_uri; // '/?q=user', |
|
28 | 28 | public $deauth_uri; // '/?q=logout', |
29 | - public $referer; // http://my.chamilo.com/main/auth/profile.php |
|
29 | + public $referer; // http://my.chamilo.com/main/auth/profile.php |
|
30 | 30 | |
31 | 31 | /** |
32 | 32 | * Instanciates the object, initializing all relevant URL strings |
@@ -123,9 +123,9 @@ discard block |
||
123 | 123 | && ($sso['username'] == $uData['username'])) { |
124 | 124 | |
125 | 125 | //Check if the account is active (not locked) |
126 | - if ($uData['active']=='1') { |
|
126 | + if ($uData['active'] == '1') { |
|
127 | 127 | // check if the expiration date has not been reached |
128 | - if (empty($uData['expiration_date']) OR $uData['expiration_date'] > date('Y-m-d H:i:s') OR $uData['expiration_date']=='0000-00-00 00:00:00') { |
|
128 | + if (empty($uData['expiration_date']) OR $uData['expiration_date'] > date('Y-m-d H:i:s') OR $uData['expiration_date'] == '0000-00-00 00:00:00') { |
|
129 | 129 | |
130 | 130 | //If Multiple URL is enabled |
131 | 131 | if (api_get_multiple_access_url()) { |
@@ -158,11 +158,11 @@ discard block |
||
158 | 158 | // the user credentials are OK, which |
159 | 159 | // should be protection enough |
160 | 160 | // against evil URL spoofing... |
161 | - $sso_target = api_get_path(WEB_PATH) . base64_decode($sso['ruri']); |
|
161 | + $sso_target = api_get_path(WEB_PATH).base64_decode($sso['ruri']); |
|
162 | 162 | } else { |
163 | - $sso_target = isset($sso['target']) ? $sso['target'] : api_get_path(WEB_PATH) . 'index.php'; |
|
163 | + $sso_target = isset($sso['target']) ? $sso['target'] : api_get_path(WEB_PATH).'index.php'; |
|
164 | 164 | } |
165 | - header('Location: '. $sso_target); |
|
165 | + header('Location: '.$sso_target); |
|
166 | 166 | exit; |
167 | 167 | } else { |
168 | 168 | // user does not have permission for this site |
@@ -279,12 +279,12 @@ discard block |
||
279 | 279 | // If this is an administrator, allow him to make some changes in |
280 | 280 | // the Chamilo profile |
281 | 281 | if ($asAdmin && api_is_platform_admin(true)) { |
282 | - return api_get_path(WEB_CODE_PATH) . "admin/user_edit.php?user_id=$userId"; |
|
282 | + return api_get_path(WEB_CODE_PATH)."admin/user_edit.php?user_id=$userId"; |
|
283 | 283 | } |
284 | 284 | // If the user doesn't match a Drupal user, give the normal profile |
285 | 285 | // link |
286 | 286 | if ($drupalUserIdData === false) { |
287 | - return api_get_path(WEB_CODE_PATH) . 'auth/profile.php'; |
|
287 | + return api_get_path(WEB_CODE_PATH).'auth/profile.php'; |
|
288 | 288 | } |
289 | 289 | // In all other cases, generate a link to the Drupal profile edition |
290 | 290 | $drupalUserId = $drupalUserIdData['value']; |
@@ -48,7 +48,7 @@ discard block |
||
48 | 48 | |
49 | 49 | /* 2.Get the chamilo username and password from your system or from webservices */ |
50 | 50 | |
51 | - $account['username'] = 'jbrion525'; //username in Chamilo |
|
51 | + $account['username'] = 'jbrion525'; //username in Chamilo |
|
52 | 52 | $account['password'] = sha1(sha1('jbrion525')); //encrypted password with assuming that the first encrypted method is sha1 in chamilo |
53 | 53 | |
54 | 54 | $master_auth_uri = $my_chamilo_server.'/?q=user'; |
@@ -64,9 +64,9 @@ discard block |
||
64 | 64 | ); |
65 | 65 | |
66 | 66 | $cookie = base64_encode(serialize($sso)); |
67 | - $url = chamilo_sso_protocol() . $master_auth_uri; |
|
68 | - $params = 'sso_referer='. urlencode($url) .'&sso_cookie='. urlencode($cookie); |
|
69 | - $final_url = filter_xss($_GET['sso_referer']) .'?'. $params; |
|
67 | + $url = chamilo_sso_protocol().$master_auth_uri; |
|
68 | + $params = 'sso_referer='.urlencode($url).'&sso_cookie='.urlencode($cookie); |
|
69 | + $final_url = filter_xss($_GET['sso_referer']).'?'.$params; |
|
70 | 70 | |
71 | 71 | //If your user exists redirect to chamilo and set the account in a session to check it later |
72 | 72 | $_SESSION['my_server_user_session'] = $account; |
@@ -15,7 +15,7 @@ |
||
15 | 15 | * @license see /license.txt |
16 | 16 | * @author Laurent Opprecht <[email protected]>, Nicolas Rod for the University of Geneva |
17 | 17 | */ |
18 | -include_once(dirname(__FILE__) . '/init.php'); |
|
18 | +include_once(dirname(__FILE__).'/init.php'); |
|
19 | 19 | |
20 | 20 | /* |
21 | 21 | ============================================================================== |
@@ -8,7 +8,7 @@ |
||
8 | 8 | * @license see /license.txt |
9 | 9 | * @author Laurent Opprecht <[email protected]>, Nicolas Rod for the University of Geneva |
10 | 10 | */ |
11 | -include_once(dirname(__FILE__) . '/../init.php'); |
|
11 | +include_once(dirname(__FILE__).'/../init.php'); |
|
12 | 12 | |
13 | 13 | if (!ShibbolethTest::is_enabled()) |
14 | 14 | { |