steffen: server/kolab-webadmin/kolab-webadmin/php/admin/include ldap.class.php, 1.5, 1.6

cvs at intevation.de cvs at intevation.de
Wed Jul 14 02:49:08 CEST 2004


Author: steffen

Update of /kolabrepository/server/kolab-webadmin/kolab-webadmin/php/admin/include
In directory doto:/tmp/cvs-serv1952/kolab-webadmin/php/admin/include

Modified Files:
	ldap.class.php 
Log Message:
use uids for distribution lists

Index: ldap.class.php
===================================================================
RCS file: /kolabrepository/server/kolab-webadmin/kolab-webadmin/php/admin/include/ldap.class.php,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- ldap.class.php	7 Jul 2004 11:45:47 -0000	1.5
+++ ldap.class.php	14 Jul 2004 00:49:06 -0000	1.6
@@ -1,6 +1,6 @@
 <?php
 /*
- *  Copyright (c) 2004 Klarälvdalens Datakonsult AB
+ *  Copyright (c) 2004 KlarÃ��¤lvdalens Datakonsult AB
  *
  *    Written by Steffen Hansen <steffen at klaralvdalens-datakonsult.se>
  *
@@ -134,9 +134,28 @@
     }
   }
 
+  function uidForDn( $dn ) {
+	global $errors;
+    $res = ldap_read( $this->connection, $dn,
+					  '(objectclass=*)',
+					  array( 'uid' ) );
+	if( $res ) {
+	  $entries = ldap_get_entries( $this->connection, $res );
+	  ldap_free_result( $res );
+	  if( $entries['count'] == 1 ) {
+		return $entries[0]['uid'][0];
+	  } else {
+		$errors[] = "No such object $dn";
+	  }
+	} else {
+	  $errors[] = "Problem searching for DN $dn: ".ldap_error($this->connection);
+	}
+    return false;	
+  }
+
   function dnForUid( $uid ) {
     if( $this->search( $_SESSION['base_dn'],
-		       '(&(objectclass=inetOrgPerson)(uid='.$this->escape($uid).'))' ) ) {
+		       '(&(objectclass=kInetOrgPerson)(uid='.$this->escape($uid).'))' ) ) {
       $entry = $this->firstEntry();
       if( $entry ) {
 	return ldap_get_dn( $this->connection, $entry );





More information about the commits mailing list