index 15df31eddf43e832923c065455b1919790a598a7..1a82f6d1f8cc5528c84e70a2745808fd5432e381 100644 (file)
$valid_deps['/'] = $cv['base'];
$ldap->search("(&(objectClass=gosaDepartment)(ou=*))",array("dn","ou"));
while($attrs = $ldap->fetch()){
- $valid_deps[$attrs['ou'][0]] = $attrs['dn'];
+ $valid_deps[] = $attrs['dn'];
}
/***********
$valid_deps['/'] = $cv['base'];
$ldap->search("(&(objectClass=gosaDepartment)(ou=*))",array("dn","ou"));
while($attrs = $ldap->fetch()){
- $valid_deps[$attrs['ou'][0]] = $attrs['dn'];
+ $valid_deps[] = $attrs['dn'];
}
/***********
if(!in_array($object_attrs['uid'][0],$attrs_admin_group_new['memberUid'])){
$attrs_admin_group_new['memberUid'][] = $object_attrs['uid'][0];
}
+ if ($cv['rfc2307bis']){
+ $attrs_admin_group_new['member'][] = $dn;
+ }
if($only_ldif){
$this->acl_create_changes = _("Appending user to group administrational group:")." \n";
}
}
- }else{
+ } else {
$group_ou = trim($cv['groupou']);
if(!empty($group_ou)){
}
$new_group_dn = "cn=GOsa Administrators,".$group_ou.$cv['base'];
- $new_group_attrs['objectClass'] = array("gosaObject","posixGroup");
+ if ($cv['rfc2307bis']){
+ $new_group_attrs['objectClass'] = array("gosaObject","posixGroup", "groupOfNames");
+ $new_group_attrs['member'][] = $dn;
+ } else {
+ $new_group_attrs['objectClass'] = array("gosaObject","posixGroup");
+ }
$new_group_attrs['cn'] = "GOsa Administrators";
$new_group_attrs['gosaSubtreeACL'] = ":all";
$new_group_attrs['gidNumber'] = "999";
$ldap->cd($dn);
$res = $ldap->add($new_user);
$this->acl_create_selected = $dn;
- $this->create_admin();
+ $this->create_admin(FALSE, $dn);
if(!$res){
print_red($ldap->get_error());
/* Check if there are references to this object */
- $ldap->search("(&(member=".$dn.")(|(objectClass=gosaGroupOfNames)(objectClass=groupOfNames)))",array('dn'));
+ $ldap->search("(&(member=".LDAP::prepare4filter($dn).")(|(objectClass=gosaGroupOfNames)(objectClass=groupOfNames)))",array('dn'));
$refs = "";
while($attrs = $ldap->fetch()){
$ref_dn = $attrs['dn'];
/* Check if there are references to this object */
- $ldap->search("(&(member=".$dn.")(|(objectClass=gosaGroupOfNames)(objectClass=groupOfNames)))",array('dn'));
+ $ldap->search("(&(member=".LDAP::prepare4filter($dn).")(|(objectClass=gosaGroupOfNames)(objectClass=groupOfNames)))",array('dn'));
$refs = "";
while($attrs = $ldap->fetch()){
$ref_dn = $attrs['dn'];
$this->outside_users[$b_dn]['ldif'] = _("User will be moved from").":<br>\t".$dn."<br>"._("to").":<br>\t".$d_dn;
/* Check if there are references to this object */
- $ldap->search("(&(member=".$dn.")(|(objectClass=gosaGroupOfNames)(objectClass=groupOfNames)))",array('dn'));
+ $ldap->search("(&(member=".LDAP::prepare4filter($dn).")(|(objectClass=gosaGroupOfNames)(objectClass=groupOfNames)))",array('dn'));
$refs = "";
while($attrs = $ldap->fetch()){
$ref_dn = $attrs['dn'];
/* Update object references in gosaGroupOfNames */
$ogs_to_fix = array();
$ldap->cd($cv['base']);
- $ldap->search('(&(objectClass=gosaGroupOfNames)(member='.@LDAP::fix($source).'))', array('cn','member'));
+ $ldap->search('(&(objectClass=gosaGroupOfNames)(member='.@LDAP::prepare4filter($source).'))', array('cn','member'));
while ($attrs= $ldap->fetch()){
$dn = $attrs['dn'];
$attrs = $this->cleanup_array($attrs);
}
}
-// vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
+//vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
?>