Changeset 2094
- Timestamp:
- 03/01/10 10:29:06 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/workflow/inc/class.so_userinterface.inc.php
r2085 r2094 474 474 $ldapResult[$entries[$i]['uidnumber'][0]] = array('cn' => $entries[$i]['cn'][0], 'telephoneNumber' => $entries[$i]['telephonenumber'][0]); 475 475 476 /* we will need to search into database 'cache' for users deleted in ldap */ 477 $cachedLDAP = $GLOBALS[ 'workflow' ][ 'factory' ] -> newInstance( 'CachedLDAP' ); 478 $cachedLDAP -> setOperationMode( $cachedLDAP -> OPERATION_MODE_DATABASE ); 479 476 480 /* filling return array with employee's information */ 477 481 $employees = array(); 478 482 for ($i = 0; $i < count($result); $i++) { 479 $employees []= array( 480 'area' => $result[$i]['area'], 481 'area_id' => $result[$i]['area_id'], 482 'funcionario_id' => $result[$i]['funcionario_id'], 483 'cn' => empty($ldapResult[$result[$i]['funcionario_id']]['cn']) ? $result[$i]['funcionario_id'] : $ldapResult[$result[$i]['funcionario_id']]['cn'], 484 'telephoneNumber' => empty($ldapResult[$result[$i]['funcionario_id']]['telephoneNumber']) ? '': $ldapResult[$result[$i]['funcionario_id']]['telephoneNumber'] 485 ); 483 484 $employee = array(); 485 486 /* user deleted in ldap. Let's try to find him into database 'cache' */ 487 if (empty($ldapResult[$result[$i]['funcionario_id']]['cn'])) { 488 $entry = $cachedLDAP->getEntryByID($result[$i]['funcionario_id']); 489 490 $employee['removed'] = is_null($entry['last_update']); 491 492 if ($entry && !empty($entry['cn'])) 493 $employee['cn'] = $entry['cn']; 494 /* we cant find it anywhere */ 495 else 496 $employee['cn'] = $result[$i]['funcionario_id']; 497 } 498 else 499 $employee['cn'] = $ldapResult[$result[$i]['funcionario_id']]['cn']; 500 501 $employee['area'] = $result[$i]['area']; 502 $employee['area_id'] = $result[$i]['area_id']; 503 $employee['funcionario_id'] = $result[$i]['funcionario_id']; 504 $employee['telephoneNumber'] = empty($ldapResult[$result[$i]['funcionario_id']]['telephoneNumber']) ? '': $ldapResult[$result[$i]['funcionario_id']]['telephoneNumber']; 505 506 $employees []= $employee; 486 507 } 487 508
Note: See TracChangeset
for help on using the changeset viewer.