Changeset 5821 for trunk/expressoMail1_2/inc/class.ldap_functions.inc.php
- Timestamp:
- 03/26/12 16:24:32 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/inc/class.ldap_functions.inc.php
r5513 r5821 87 87 $this->ldap_host = $_SESSION['phpgw_info']['expressomail']['server']['ldap_host']; 88 88 $this->ldap_context = $_SESSION['phpgw_info']['expressomail']['server']['ldap_context']; 89 $this->ds = ldap_connect($this->ldap_host); 90 ldap_set_option($this->ds, LDAP_OPT_PROTOCOL_VERSION, 3); 91 ldap_set_option($this->ds, LDAP_OPT_REFERRALS, $refer); 92 ldap_bind($this->ds, $_SESSION['phpgw_info']['expressomail']['server']['ldap_root_dn'],$_SESSION['phpgw_info']['expressomail']['server']['ldap_root_pw']); 93 89 90 if($_SESSION['phpgw_info']['expressomail']['server']['ldap_master_host'] && 91 $_SESSION['phpgw_info']['expressomail']['server']['ldap_master_root_dn'] && 92 $_SESSION['phpgw_info']['expressomail']['server']['ldap_master_root_pw']) { 93 $this->ds = ldap_connect($_SESSION['phpgw_info']['expressomail']['server']['ldap_master_host']); 94 ldap_set_option($this->ds, LDAP_OPT_PROTOCOL_VERSION, 3); 95 ldap_set_option($this->ds, LDAP_OPT_REFERRALS,0); 96 ldap_bind($this->ds, $_SESSION['phpgw_info']['expressomail']['server']['ldap_master_root_dn'], $_SESSION['phpgw_info']['expressomail']['server']['ldap_master_root_pw']); 97 }else{ 98 $this->ds = ldap_connect($this->ldap_host); 99 ldap_set_option($this->ds, LDAP_OPT_PROTOCOL_VERSION, 3); 100 ldap_set_option($this->ds, LDAP_OPT_REFERRALS, $refer); 101 ldap_bind($this->ds, $_SESSION['phpgw_info']['expressomail']['server']['ldap_root_dn'],$_SESSION['phpgw_info']['expressomail']['server']['ldap_root_pw']); 102 } 94 103 } 95 104 … … 1156 1165 return $return; 1157 1166 } 1167 1168 function save_telephoneNumber($params){ 1169 $return = array(); 1170 if($_SESSION['phpgw_info']['user']['preferences']['expressoMail']['blockpersonaldata']){ 1171 $return['error'] = $this->functions->getLang("You can't modify your Commercial Telephone."); 1172 return $return; 1173 } 1174 $old_telephone = 0; 1175 $pattern = '/\([0-9]{2,3}\)[0-9]{4}-[0-9]{4}$/'; 1176 if ((strlen($params['number']) != 0) && (!preg_match($pattern, $params['number']))) 1177 { 1178 $return['error'] = $this->functions->getLang('The format of telephone number is invalid'); 1179 return $return; 1180 } 1181 if($params['number'] != $_SESSION['phpgw_info']['user']['preferences']['expressoMail']['telephone_number']) { 1182 $old_telephone = $_SESSION['phpgw_info']['user']['preferences']['expressoMail']['telephone_number']; 1183 $this->ldapRootConnect(false); 1184 if(strlen($_SESSION['phpgw_info']['user']['preferences']['expressoMail']['telephone_number']) == 0) { 1185 $info['telephonenumber'] = $params['number']; 1186 $result = @ldap_mod_add($this->ds, $_SESSION['phpgw_info']['expressomail']['user']['account_dn'], $info); 1187 } 1188 else { 1189 $info['telephonenumber'] = $params['number']; 1190 $result = @ldap_mod_replace($this->ds, $_SESSION['phpgw_info']['expressomail']['user']['account_dn'], $info); 1191 } 1192 $_SESSION['phpgw_info']['user']['preferences']['expressoMail']['telephone_number'] = $info['telephonenumber']; 1193 // Log updated telephone number by user action 1194 include_once('class.db_functions.inc.php'); 1195 $db_functions = new db_functions(); 1196 $db_functions->write_log('modified user telephone',"User changed its own telephone number in preferences $old_telephone => ".$info['telephonenumber']); 1197 unset($info['telephonenumber']); 1198 } 1199 return $return['ok'] = true; 1200 } 1158 1201 } 1159 1202 ?>
Note: See TracChangeset
for help on using the changeset viewer.