steffen: server/kolab-webadmin/kolab-webadmin/www/admin/sharedfolder index.php.in, 1.2, 1.3 sf.php.in, 1.4, 1.5
cvs at kolab.org
cvs at kolab.org
Tue Jul 11 18:02:26 CEST 2006
Author: steffen
Update of /kolabrepository/server/kolab-webadmin/kolab-webadmin/www/admin/sharedfolder
In directory doto:/tmp/cvs-serv4752/kolab-webadmin/www/admin/sharedfolder
Modified Files:
index.php.in sf.php.in
Log Message:
Patch from wrobel + foldertype fixes etc.
Index: index.php.in
===================================================================
RCS file: /kolabrepository/server/kolab-webadmin/kolab-webadmin/www/admin/sharedfolder/index.php.in,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- index.php.in 21 Apr 2006 10:41:38 -0000 1.2
+++ index.php.in 11 Jul 2006 16:02:24 -0000 1.3
@@ -34,6 +34,7 @@
}
// Get all entries & dynamically split the letters with growing entries
+$entries = array();
if( !$errors ) {
if (isset($_SESSION['base_dn'])) $base_dn = $_SESSION['base_dn'];
else $base_dn = 'k=kolab';
@@ -60,9 +61,10 @@
$deleted = array_key_exists('kolabDeleteflag',$attrs)?$attrs['kolabDeleteflag'][0]:"FALSE";
$kolabhomeserver = $attrs['kolabHomeServer'][0];
- $folderTypeMap = array ( '' => _('None'), 'mail' => _('Mails'), 'task' => _('Tasks'), 'journal' => _('Journals'),
- 'event' => _('Events'), 'contact' => _('Contacts'), 'note' => _('Notes'));
- $folderType = $folderTypeMap[$attrs['folderType'][0]];
+ $folderTypeMap = array ( '' => _('Unspecified'), 'mail' => _('Mails'), 'task' => _('Tasks'), 'journal' => _('Journals'),
+ 'event' => _('Events'), 'contact' => _('Contacts'), 'note' => _('Notes'));
+ if( in_array('kolabFolderType',$attrs) ) $folderType = $folderTypeMap[$attrs['kolabFolderType'][0]];
+ else $folderType = $folderTypeMap[''];
$entries[] = array( 'dn' => $dn,
'cn' => $cn,
Index: sf.php.in
===================================================================
RCS file: /kolabrepository/server/kolab-webadmin/kolab-webadmin/www/admin/sharedfolder/sf.php.in,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- sf.php.in 10 Jun 2006 18:46:58 -0000 1.4
+++ sf.php.in 11 Jul 2006 16:02:24 -0000 1.5
@@ -32,18 +32,21 @@
else $cn = $ldap_object['cn'];
$form->entries['cn']['value'] = $cn;
- if (is_array($ldap_object['cyrus-userquota'])) $userquota = $ldap_object['cyrus-userquota'][0];
- else $userquota = $ldap_object['cyrus-userquota'];
+ if( in_array('cyrus-userquota',$ldap_object)) {
+ if (is_array($ldap_object['cyrus-userquota'])) $userquota = $ldap_object['cyrus-userquota'][0];
+ else $userquota = $ldap_object['cyrus-userquota'];
+ } else $userquota = "";
$form->entries['cyrus-userquota']['value'] = $userquota;
if (is_array($ldap_object['kolabHomeServer'])) $kolabhomeserver = $ldap_object['kolabHomeServer'][0];
$form->entries['kolabhomeserver']['value'] = $kolabhomeserver;
- if (is_array($ldap_object['kolabFolderType']))
- $form->entries['foldertype']['value'] = $ldap_object['kolabFolderType'][0];
- else
- $form->entries['foldertype']['value'] = '';
-
+ if( in_array('kolabFolderType',$ldap_object)) {
+ if (is_array($ldap_object['kolabFolderType']))
+ $form->entries['foldertype']['value'] = $ldap_object['kolabFolderType'][0];
+ else
+ $form->entries['foldertype']['value'] = '';
+ } else $form->entries['foldertype']['value'] = '';
$form->entries['action']['value'] = 'save';
//debug("got userquota=$userquota<br/>cn=$cn<br/>");
$aclcount = 0;
@@ -87,21 +90,12 @@
return "$mail $perm";
}
- $regs = array();
- if( ereg('(.*)@(.*)', $uid, $regs ) ) {
- $cn = $regs[1];
- $res = $ldap->search( $_SESSION['base_dn'], '(&(cn='.$ldap->escape($cn).')(objectClass=kolabGroupOfNames))',
- array('dn') );
- if( $ldap->count($res) == 1 ) {
- $objects = $ldap->getEntries();
- $dcs = array_filter( split(',', $objects[0]['dn']), create_function( '$str', 'return !strncmp( "dc=", $str, 3 );') );
- $dcs = array_map( create_function( '$str', 'return substr($str,3);'), $dcs );
- $domain = join( '.', $dcs );
- if( $domain == $regs[2] ) {
- // All OK, we have a group
- return "group:$uid $perm";
- }
- }
+ $res = $ldap->search( $_SESSION['base_dn'], '(&(cn='.$ldap->escape($uid).')(objectClass=kolabGroupOfNames))',
+ array('dn') );
+ if( $ldap->count($res) == 1 ) {
+ // Ok, we have a group
+ $ldap->freeSearchResult();
+ return "group:$uid $perm";
}
$errors[] = sprintf(_("No UID or GID %s"), $uid);
return false;
@@ -236,10 +230,10 @@
} else array_push($errors, sprintf(_("LDAP Error: could not read %s: %s"), $dn,
ldap_error($ldap->connection)));
} else {
- if (!ldap_modify($ldap->connection, $dn, $ldap_object))
+ if (!ldap_modify($ldap->connection, $dn, $ldap_object)) {
array_push($errors, sprintf(_("LDAP Error: could not modify object %s: %s"), $dn,
ldap_error($ldap->connection)));
- else $messages[] = _('Shared folder updated');
+ } else $messages[] = _('Shared folder updated');
}
}
} else {
More information about the commits
mailing list