X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fpersonal%2Fposix%2Fclass_posixAccount.inc;h=6a66a4f6cc7e9f39e6c7904906a8460a25759fa1;hb=31f5c6913649a183107e45126b93e3c953ec0efc;hp=12d537833164c42d3b1734b84183fabd00a47078;hpb=50a63964d7cfb12ca05978b418aa8d2c6d3c07ac;p=gosa.git diff --git a/plugins/personal/posix/class_posixAccount.inc b/plugins/personal/posix/class_posixAccount.inc index 12d537833..6a66a4f6c 100644 --- a/plugins/personal/posix/class_posixAccount.inc +++ b/plugins/personal/posix/class_posixAccount.inc @@ -230,14 +230,15 @@ class posixAccount extends plugin $obj= $this->parent->by_object['sambaAccount']; } if (isset($obj) && $obj->is_account == TRUE && - isset($this->parent->by_object['sambaAccount'])){ + ((isset($this->parent->by_object['sambaAccount']))&&($this->parent->by_object['sambaAccount']->is_account)) + ||(isset($this->parent->by_object['environment'] ))&&($this->parent->by_object['environment'] ->is_account)){ /* Samba3 dependency on posix accounts are enabled in the moment, because I need to rely on unique uidNumbers. There'll be a better solution later on. */ $display= $this->show_header(_("Remove posix account"), - _("This account has unix features enabled. To disable them, you'll need to remove the samba account first."), TRUE); + _("This account has unix features enabled. To disable them, you'll need to remove the samba / environment account first."), TRUE); } else { $display= $this->show_header(_("Remove posix account"), _("This account has posix features enabled. You can disable them by clicking below.")); @@ -668,6 +669,7 @@ class posixAccount extends plugin /* Save data to LDAP, depending on is_account we save or delete */ function save() { + /* include global link_info */ $ldap= $this->config->get_ldap_link(); @@ -748,7 +750,10 @@ class posixAccount extends plugin /* Fill gecos */ if (isset($this->parent) && $this->parent != NULL){ - $this->gecos= $this->parent->by_object['user']->cn; + $this->gecos= rewrite($this->parent->by_object['user']->cn); + if (!preg_match('/[a-z0-9 -]/i', $this->gecos)){ + $this->gecos= ""; + } } /* Call parents save to prepare $this->attrs */ @@ -783,6 +788,10 @@ class posixAccount extends plugin $thid->attrs['gosaDefaultPrinter']=array(); } + foreach(array("shadowMin","shadowMax","shadowWarning","shadowInactive") as $attr){ + $this->attrs[$attr] = (int) $this->attrs[$attr]; + } + /* Save data to LDAP */ $ldap->cd($this->dn); $ldap->modify($this->attrs); @@ -931,15 +940,6 @@ class posixAccount extends plugin return ($message); } - - /* Add posix user to some groups */ - function addGroup2 ($groups){ - print "Haleluja".$groups; - print_a($this->groupMembership); - $this->groupMembership[$this->glist[$groups]['dn']]= $this->glist[$groups]['cn'][0]; - } - - function addGroup ($groups) { /* include global link_info */