Ignore:
Timestamp:
11/03/11 13:21:19 (12 years ago)
Author:
wmerlotto
Message:

Ticket #2305 - Enviando alteracoes, desenvolvidas internamente na Prognus, do modulo calendar.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/calendar/inc/class.bogroup_access.inc.php

    r580 r5132  
    2222        } 
    2323 
    24         public final function search_user($params){                      
    25                 $objLdap = new ldap_functions(); 
    26                 $objLdap -> ldapRootConnect(); 
    27                 $ldap = $objLdap -> ds;          
    28                 $search = $params['search']; 
    29                 $accounttype = $params['type']; 
    30                 $justthese = array("cn","uid", "uidNumber","gidNumber"); 
    31         $users_list=ldap_search($ldap, $_SESSION['phpgw_info']['expressomail']['server']['ldap_context'], "(&(phpgwAccountType=$accounttype) (|(cn=*$search*)(mail=$search*)) )", $justthese);           
    32         if (ldap_count_entries($ldap, $users_list) == 0) 
     24        public final function search_user($params) 
    3325        { 
    34                 $return['status'] = 'false'; 
    35                 $return['msg'] = 'Nenhum resultado encontrado.'; 
    36                 return $return; 
    37         }        
    38         ldap_sort($ldap, $users_list, "cn");             
    39         $entries = ldap_get_entries($ldap, $users_list);                 
     26            $server = $_SESSION['phpgw_info']['expressomail']['server']; 
     27 
     28            $t = $params['type']; 
     29 
     30            $ldapService = ServiceLocator::getService('ldap'); 
     31 
     32            $ldapService->connect( $server['ldap_host'], $server['ldap_root_dn'], $server['ldap_root_pw'] ); 
     33 
     34            $entries = $ldapService->accountSearch($params['search'], array('cn', $t.'idNumber', $t.'id' ), $server['ldap_context'], $t, 'cn'); 
     35 
    4036                $options = ''; 
    41                 for ($i=0; $i<$entries['count']; $i++) 
     37 
     38            foreach( $entries as $value ) 
    4239                { 
    43                         $value = $entries[$i][$accounttype == "u" ? 'uidnumber' : 'gidnumber'][0];               
    44                         if($entries[$i]['mail'][0]) 
    45                                 $mail = "(".$entries[$i]['mail'][0].")"; 
    46                         $options .= "<option value=" . $value. ">" . $entries[$i]['cn'][0] . " $mail" . "</option>"; 
     40                $id = $value[$t.'id'] ? $value[$t.'id'] : $value[$t.'idnumber']; 
     41 
     42                $options .= '<option value='.$value[ $t.'idnumber' ].'>'.$value['cn'].'('.$id.')</option>'; 
    4743                }        
     44 
    4845        return $options;                 
    4946        }  
Note: See TracChangeset for help on using the changeset viewer.