Started using help and write comments into file
This commit is contained in:
parent
399e837b84
commit
ce7665a2ba
|
@ -23,6 +23,7 @@ $Id$
|
|||
LDAP Account Manager help topics.
|
||||
*/
|
||||
|
||||
|
||||
$helpArray = array (
|
||||
// 0 - 99
|
||||
// any developer
|
||||
|
@ -148,7 +149,131 @@ $helpArray = array (
|
|||
"370" => array ("ext" => "FALSE", "Headline" => _("Profile Editor - Primary Group"),
|
||||
"Text" => _("This is primary group for the Samba machine account.")),
|
||||
"371" => array ("ext" => "FALSE", "Headline" => _("Profile Editor - Domain"),
|
||||
"Text" => _("This is the Windows domain name."))
|
||||
"Text" => _("This is the Windows domain name.")),
|
||||
"400" => array ("ext" => "FALSE", "Headline" => _("Username"),
|
||||
"Text" => _("Username of the user which should be created. Valid characters are: a-z,0-9, .-_. Lam doesn't allow a number as first
|
||||
character because it's impossible to create a homedirectory starting with a number. Lam doesn't allow capital letters A-Z because it
|
||||
can cause several problems.")),
|
||||
"401" => array ("ext" => "FALSE", "Headline" => _("UID Number"),
|
||||
"Text" => _("If empty UID Number will be generated automaticly. Valid values are between ")."$_SESSION['config']->get_minUID()"._(" and ")."$_SESSION['config']->get_maxUID()"."."),
|
||||
"402" => array ("ext" => "FALSE", "Headline" => _("Additional Groupmembership"),
|
||||
"Text" => _("Can be left empty. Hold the CTRL-key to (de)select multiple groups.")),
|
||||
"403" => array ("ext" => "FALSE", "Headline" => _("Home Directory"),
|
||||
"Text" => _("$user and $group are replaced with username or primary groupname.")),
|
||||
"404" => array ("ext" => "FALSE", "Headline" => _("Gecos"),
|
||||
"Text" => _("User descriptopn. If left empty sur- and givename will be used.")),
|
||||
"405" => array ("ext" => "FALSE", "Headline" => _("Login shell"),
|
||||
"Text" => _("To disable login use /bin/false.")),
|
||||
"406" => array ("ext" => "FALSE", "Headline" => _("Primary Group"),
|
||||
"Text" => _("The Primary Group the user should be member of.")),
|
||||
"407" => array ("ext" => "FALSE", "Headline" => _("Groupname"),
|
||||
"Text" => _("Groupname of the group which should be created. Valid characters are: a-z,0-9, .-_. Lam doesn't allow a number as first
|
||||
character because it's impossible to create a homedirectory starting with a number. Lam doesn't allow capital letters A-Z because it
|
||||
can cause several problems.")),
|
||||
"408" => array ("ext" => "FALSE", "Headline" => _("GID Number"),
|
||||
"Text" => _("If empty GID Number will be generated automaticly. Valid values are between ")."$_SESSION['config']->get_minGID()"._(" and ")."$_SESSION['config']->get_maxGID()"."."),
|
||||
"409" => array ("ext" => "FALSE", "Headline" => _("Gecos"),
|
||||
"Text" => _("Group descriptopn. If left empty groupname will be used.")),
|
||||
"410" => array ("ext" => "FALSE", "Headline" => _("Hostname"),
|
||||
"Text" => _("Groupname of the group which should be created. Valid characters are: a-z,0-9, .-_$. Lam doesn't allow a number as first
|
||||
character because it's impossible to create a homedirectory starting with a number. Lam doesn't allow capital letters A-Z because it
|
||||
can cause several problems. Hostnames are always ending with $. If last character isn't $ it will be added.")),
|
||||
"411" => array ("ext" => "FALSE", "Headline" => _("UID Number"),
|
||||
"Text" => _("If empty UID Number will be generated automaticly. Valid values are between ")."$_SESSION['config']->get_minMachine()"._(" and ")."$_SESSION['config']->get_maxMachine()"."."),
|
||||
"412" => array ("ext" => "FALSE", "Headline" => _("Primary Group"),
|
||||
"Text" => _("The Prmary Group the host should be member of.")),
|
||||
"413" => array ("ext" => "FALSE", "Headline" => _("Gecos"),
|
||||
"Text" => _("Host descriptopn. If left empty hostname will be used.")),
|
||||
"414" => array ("ext" => "FALSE", "Headline" => _("Password Warn"),
|
||||
"Text" => _("Days before password is to expire that user is warned of pending password expiration. Value must be 0<.")),
|
||||
"415" => array ("ext" => "FALSE", "Headline" => _("Password Expire"),
|
||||
"Text" => _("Number of days a user can login even his password has expired. -1=always")),
|
||||
"416" => array ("ext" => "FALSE", "Headline" => _("Maximum Passwordage"),
|
||||
"Text" => _("Number of days after a user has to change his password again Value must be 0<.")),
|
||||
"417" => array ("ext" => "FALSE", "Headline" => _("Minimum Passwordage"),
|
||||
"Text" => _("Number of days a user has to wait until he\'s allowed to change his password again. Value must be 0<.")),
|
||||
"418" => array ("ext" => "FALSE", "Headline" => _("Expire date"),
|
||||
"Text" => _("Account expire date.")),
|
||||
"419" => array ("ext" => "FALSE", "Headline" => _("Password Warn"),
|
||||
"Text" => _("Days before password is to expire that host is warned of pending password expiration. Value must be 0<.")),
|
||||
"420" => array ("ext" => "FALSE", "Headline" => _("Password Expire"),
|
||||
"Text" => _("Number of days a host can login even his password has expired. -1=always")),
|
||||
"421" => array ("ext" => "FALSE", "Headline" => _("Maximum Passwordage"),
|
||||
"Text" => _("Number of days after a host has to change his password again Value must be 0< and should be higher as the value on client-side.")),
|
||||
"422" => array ("ext" => "FALSE", "Headline" => _("Minimum Passwordage"),
|
||||
"Text" => _("Number of days a host has to wait until he\'s allowed to change his password again. Value must be 0<.")),
|
||||
"423" => array ("ext" => "FALSE", "Headline" => _("Expire Date"),
|
||||
"Text" => _("Account expire date.")),
|
||||
"424" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"425" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"426" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"427" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"428" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"429" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"430" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"431" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"432" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"433" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"434" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"435" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"436" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"437" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"438" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"439" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"440" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"441" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"442" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"443" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"444" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"445" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"446" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"447" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"448" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"449" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"450" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"451" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"452" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"453" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"454" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"455" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"456" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"457" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _("")),
|
||||
"458" => array ("ext" => "FALSE", "Headline" => _(""),
|
||||
"Text" => _(""))
|
||||
/* This is a sample help entry. Just copy this line an modify the vakues between the [] brackets.
|
||||
Help text is located in the array:
|
||||
"[Helpnumber]" => array ("ext" => "FALSE", "Headline" => _("[Headline]"), "Text" => _("[Text]"), "SeeAlso" => "[SeeAlso link]"),
|
||||
|
|
|
@ -547,7 +547,7 @@ function loaduser($dn) { // Will load all needed values from an existing account
|
|||
if ($attr['gecos'][0]) $return->general_gecos = $attr['gecos'][0];
|
||||
if ($attr['description'][0]) $return->general_gecos = $attr['description'][0];
|
||||
if ($attr['gidNumber'][0]) {
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('uidNumber'));
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('gidNumber', 'cn'));
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
while ($entry) {
|
||||
$attr2 = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
|
@ -555,7 +555,7 @@ function loaduser($dn) { // Will load all needed values from an existing account
|
|||
$entry = ldap_next_entry($_SESSION['ldap']->server(), $entry);
|
||||
}
|
||||
}
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('memberUid'));
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('memberUid', 'cn'));
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
while ($entry) {
|
||||
$attr2 = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
|
@ -590,7 +590,8 @@ function loaduser($dn) { // Will load all needed values from an existing account
|
|||
if ($attr['title'][0]) $return->personal_title = $attr['title'][0];
|
||||
if ($attr['mail'][0]) $return->personal_mail = $attr['mail'][0];
|
||||
if ($attr['telephoneNumber'][0]) $return->personal_telephoneNumber = $attr['telephoneNumber'][0];
|
||||
if ($attr['mobile'][0]) $return->personal_mobileTelephoneNumber = $attr['mobile'][0];
|
||||
if ($attr['mobilemobileTelephoneNumber'][0]) $return->personal_mobileTelephoneNumber = $attr['mobilemobileTelephoneNumber'][0];
|
||||
else if ($attr['mobile'][0]) $return->personal_mobileTelephoneNumber = $attr['mobile'][0];
|
||||
if ($attr['facsimileTelephoneNumber'][0]) $return->personal_facsimileTelephoneNumber = $attr['facsimileTelephoneNumber'][0];
|
||||
if ($attr['street'][0]) $return->personal_street = $attr['street'][0];
|
||||
if ($attr['postalCode'][0]) $return->personal_postalCode = $attr['postalCode'][0];
|
||||
|
@ -621,7 +622,7 @@ function loadhost($dn) { // Will load all needed values from an existing account
|
|||
if ($attr['gecos'][0]) $return->general_gecos = $attr['gecos'][0];
|
||||
if ($attr['description'][0]) $return->general_gecos = $attr['description'][0];
|
||||
if ($attr['gidNumber'][0]) {
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('uidNumber'));
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('gidNumber', 'cn'));
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
while ($entry) {
|
||||
$attr2 = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
|
@ -629,7 +630,7 @@ function loadhost($dn) { // Will load all needed values from an existing account
|
|||
$entry = ldap_next_entry($_SESSION['ldap']->server(), $entry);
|
||||
}
|
||||
}
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('memberUid'));
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), "objectclass=PosixGroup", array('memberUid', 'cn'));
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
while ($entry) {
|
||||
$attr2 = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
|
@ -713,7 +714,7 @@ function createuser($values) { // Will create the LDAP-Account
|
|||
if ($values->personal_title!='') $attr['title'] = $values->personal_title;
|
||||
if ($values->personal_mail!='') $attr['mail'] = $values->personal_mail;
|
||||
if ($values->personal_telephoneNumber!='') $attr['telephoneNumber'] = $values->personal_telephoneNumber;
|
||||
if ($values->personal_mobileTelephoneNumber!='') $attr['mobile'] = $values->personal_mobileTelephoneNumber;
|
||||
if ($values->personal_mobileTelephoneNumber!='') $attr['mobilemobileTelephoneNumber'] = $values->personal_mobileTelephoneNumber;
|
||||
if ($values->personal_facsimileTelephoneNumber!='') $attr['facsimileTelephoneNumber'] = $values->personal_facsimileTelephoneNumber;
|
||||
if ($values->personal_street!='') $attr['street'] = $values->personal_street;
|
||||
if ($values->personal_postalCode!='') $attr['postalCode'] = $values->personal_postalCode;
|
||||
|
@ -763,16 +764,6 @@ function createuser($values) { // Will create the LDAP-Account
|
|||
setquotas($values->general_username,'user');
|
||||
addhomedir($values->general_username);
|
||||
}
|
||||
// Add user to groups
|
||||
$result = ldap_search($_SESSION['ldap']->server(), 'cn='.$values->general_group.','.$_SESSION['config']->get_GroupSuffix(), "objectclass=posixGroup");
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
$group = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
if ($group['memberUid']) array_shift($group['memberUid']);
|
||||
if (! in_array($values->general_username, $group)) {
|
||||
$toadd['memberUid'] = $values->general_username;
|
||||
$success = ldap_mod_add($_SESSION['ldap']->server(), 'cn='.$values->general_group.','.$_SESSION['config']->get_GroupSuffix(), $toadd);
|
||||
if (!$success) return 4;
|
||||
}
|
||||
// Add User to Additional Groups
|
||||
if ($values->general_groupadd)
|
||||
foreach ($values->general_groupadd as $group2) {
|
||||
|
@ -864,9 +855,9 @@ function modifyuser($values,$values_old) { // Will modify the LDAP-Account
|
|||
if (($values->personal_telephoneNumber != $values_old->personal_telephoneNumber) && ($values->personal_telephoneNumber ==''))
|
||||
$attr_rem['telephoneNumber'] = $values_old->personal_telephoneNumber;
|
||||
if (($values->personal_mobileTelephoneNumber != $values_old->personal_mobileTelephoneNumber) && ($values->personal_mobileTelephoneNumber!=''))
|
||||
$attr['mobiler'] = $values->personal_mobileTelephoneNumber;
|
||||
$attr['mobileTelephoneNumber'] = $values->personal_mobileTelephoneNumber;
|
||||
if (($values->personal_mobileTelephoneNumber != $values_old->personal_mobileTelephoneNumber) && ($values->personal_mobileTelephoneNumber==''))
|
||||
$attr_rem['mobile'] = $values_old->personal_mobileTelephoneNumber;
|
||||
$attr_rem['mobilemobileTelephoneNumber'] = $values_old->personal_mobileTelephoneNumber;
|
||||
if (($values->personal_facsimileTelephoneNumber != $values_old->personal_facsimileTelephoneNumber) && ($values->personal_facsimileTelephoneNumber!=''))
|
||||
$attr['facsimileTelephoneNumber'] = $values->personal_facsimileTelephoneNumber;
|
||||
if (($values->personal_facsimileTelephoneNumber != $values_old->personal_facsimileTelephoneNumber) && ($values->personal_facsimileTelephoneNumber==''))
|
||||
|
@ -927,12 +918,7 @@ function modifyuser($values,$values_old) { // Will modify the LDAP-Account
|
|||
}
|
||||
if (!$success) return 5;
|
||||
// Write Groupmemberchips
|
||||
if ($values->general_groupadd) {
|
||||
$allgroups = $values->general_groupadd;
|
||||
if (!in_array($values->general_group, $allgroups)) $allgroups[] = $values->general_group;
|
||||
}
|
||||
else $allgroups[0] = $values->general_group;
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), 'objectClass=PosixGroup');
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), 'objectClass=PosixGroup', array('memberUid', 'cn'));
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
while ($entry) {
|
||||
$modifygroup=0;
|
||||
|
@ -940,13 +926,13 @@ function modifyuser($values,$values_old) { // Will modify the LDAP-Account
|
|||
if ($attr2['memberUid']) {
|
||||
array_shift($attr2['memberUid']);
|
||||
foreach ($attr2['memberUid'] as $nam) {
|
||||
if ( ($nam==$values->general_username) && !in_array($nam, $allgroups)) {
|
||||
if ( ($nam==$values->general_username) && !in_array($attr2['cn'][0], $values->general_groupadd)) {
|
||||
$todelete['memberUid'] = $nam;
|
||||
$success = ldap_mod_del($_SESSION['ldap']->server(), ldap_get_dn($_SESSION['ldap']->server(), $entry) ,$todelete);
|
||||
if (!$success) return 5;
|
||||
}
|
||||
}
|
||||
if (!in_array($values->general_username, $attr2['memberUid']) && in_array($attr2['cn'][0], $allgroups)) {
|
||||
if (!in_array($values->general_username, $attr2['memberUid']) && in_array($attr2['cn'][0], $values->general_groupadd) && ($attr2['cn'][0]!=$values->general_group)) {
|
||||
$toadd['memberUid'] = $attr2['memberUid'];
|
||||
$toadd['memberUid'][] = $values->general_username;
|
||||
$success = ldap_mod_replace($_SESSION['ldap']->server(), ldap_get_dn($_SESSION['ldap']->server(), $entry), $toadd);
|
||||
|
@ -954,7 +940,7 @@ function modifyuser($values,$values_old) { // Will modify the LDAP-Account
|
|||
}
|
||||
}
|
||||
else {
|
||||
if (in_array($attr2['cn'][0], $allgroups)) {
|
||||
if (in_array($attr2['cn'][0], $values->general_groupadd) && ($attr2['cn'][0]!=$values->general_group)) {
|
||||
$toadd['memberUid'] = $values->general_username;
|
||||
$success = ldap_mod_add($_SESSION['ldap']->server(), ldap_get_dn($_SESSION['ldap']->server(), $entry), $toadd);
|
||||
if (!$success) return 5;
|
||||
|
@ -1022,16 +1008,6 @@ function createhost($values) { // Will create the LDAP-Account
|
|||
if ($values->smb_domain!='') $attr['domain'] = $values->smb_domain; // sambaAccount_may
|
||||
$success = ldap_add($_SESSION['ldap']->server(),$values->general_dn, $attr);
|
||||
if (!$success) return 4;
|
||||
// Add host to groups
|
||||
$result = ldap_search($_SESSION['ldap']->server(), 'cn='.$values->general_group.','.$_SESSION['config']->get_GroupSuffix(), "objectclass=posixGroup");
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
$group = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
if ($group['memberUid']) array_shift($group['memberUid']);
|
||||
if (! in_array($values->general_username, $group)) {
|
||||
$toadd['memberUid'] = $values->general_username;
|
||||
$success = ldap_mod_add($_SESSION['ldap']->server(), 'cn='.$values->general_group.','.$_SESSION['config']->get_GroupSuffix(), $toadd);
|
||||
if (!$success) return 4;
|
||||
}
|
||||
// Add Host to Additional Groups
|
||||
if ($values->general_groupadd)
|
||||
foreach ($values->general_groupadd as $group2) {
|
||||
|
@ -1137,12 +1113,6 @@ function modifyhost($values,$values_old) { // Will modify the LDAP-Account
|
|||
if ($success) $success = ldap_mod_replace($_SESSION['ldap']->server(),$values->general_dn, $attr);
|
||||
}
|
||||
if (!$success) return 5;
|
||||
// Write Groupmemberchips
|
||||
if ($values->general_groupadd) {
|
||||
$allgroups = $values->general_groupadd;
|
||||
if (!in_array($values->general_group, $allgroups)) $allgroups[] = $values->general_group;
|
||||
}
|
||||
else $allgroups[0] = $values->general_group;
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $_SESSION['config']->get_GroupSuffix(), 'objectClass=PosixGroup');
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
while ($entry) {
|
||||
|
@ -1151,13 +1121,13 @@ function modifyhost($values,$values_old) { // Will modify the LDAP-Account
|
|||
if ($attr2['memberUid']) {
|
||||
array_shift($attr2['memberUid']);
|
||||
foreach ($attr2['memberUid'] as $nam) {
|
||||
if ( ($nam==$values->general_username) && !in_array($nam, $allgroups)) {
|
||||
if ( ($nam==$values->general_username) && !in_array($nam, $values->general_groupadd)) {
|
||||
$todelete['memberUid'] = $nam;
|
||||
$success = ldap_mod_del($_SESSION['ldap']->server(), ldap_get_dn($_SESSION['ldap']->server(), $entry) ,$todelete);
|
||||
if (!$success) return 5;
|
||||
}
|
||||
}
|
||||
if (!in_array($values->general_username, $attr2['memberUid']) && in_array($attr2['cn'][0], $allgroups)) {
|
||||
if (!in_array($values->general_username, $attr2['memberUid']) && in_array($attr2['cn'][0], $values->general_groupadd)) {
|
||||
$toadd['memberUid'] = $attr2['memberUid'];
|
||||
$toadd['memberUid'][] = $values->general_username;
|
||||
$success = ldap_mod_replace($_SESSION['ldap']->server(), ldap_get_dn($_SESSION['ldap']->server(), $entry), $toadd);
|
||||
|
@ -1165,7 +1135,7 @@ function modifyhost($values,$values_old) { // Will modify the LDAP-Account
|
|||
}
|
||||
}
|
||||
else {
|
||||
if (in_array($attr2['cn'][0], $allgroups)) {
|
||||
if (in_array($attr2['cn'][0], $values->general_groupadd)) {
|
||||
$toadd['memberUid'] = $values->general_username;
|
||||
$success = ldap_mod_add($_SESSION['ldap']->server(), ldap_get_dn($_SESSION['ldap']->server(), $entry), $toadd);
|
||||
if (!$success) return 5;
|
||||
|
|
|
@ -23,21 +23,28 @@ $Id$
|
|||
LDAP Account Manager displays table for creating or modifying accounts in LDAP
|
||||
*/
|
||||
|
||||
include_once('../lib/account.inc'); // File with custom functions
|
||||
include_once('../lib/account.inc'); // File with all account-funtions
|
||||
include_once('../lib/config.inc'); // File with configure-functions
|
||||
include_once('../lib/ldap.inc'); // LDAP-functions
|
||||
include_once('../lib/profiles.inc'); // functions to load and save profiles
|
||||
include_once('../lib/status.inc'); // Return error-message
|
||||
include_once('../lib/pdf.inc'); // Return a pdf-file
|
||||
|
||||
|
||||
$error = "0";
|
||||
initvars($_GET['type'], $_GET['DN']); // Initialize all needed vars
|
||||
|
||||
switch ($_POST['select']) {
|
||||
switch ($_POST['select']) { // Select which part of page should be loaded and check values
|
||||
// general = startpage, general account paramters
|
||||
// unix = page with all shadow-options and password
|
||||
// samba = page with all samba-related parameters e.g. smbpassword
|
||||
// quota = page with all quota-related parameters e.g. hard file quota
|
||||
// personal = page with all personal-related parametergs, e.g. phone number
|
||||
// final = last page shown before account is created/modified
|
||||
// if account is modified commands might be ran are shown
|
||||
// finish = page shown after account has been created/modified
|
||||
case 'general':
|
||||
if (!$_POST['load']) { // No Profile was loaded
|
||||
// Write all values in temporary object
|
||||
// Write all general values into $_SESSION['account'] if no profile should be loaded
|
||||
if (!$_POST['load']) {
|
||||
if ($_POST['f_general_username']) $_SESSION['account']->general_username = $_POST['f_general_username'];
|
||||
else $_SESSION['account']->general_username = $_POST['f_general_username'];
|
||||
if ($_POST['f_general_surname']) $_SESSION['account']->general_surname = $_POST['f_general_surname'];
|
||||
|
@ -48,12 +55,13 @@ switch ($_POST['select']) {
|
|||
else $_SESSION['account']->general_uidNumber = "";
|
||||
if ($_POST['f_general_group']) $_SESSION['account']->general_group = $_POST['f_general_group'];
|
||||
if ($_POST['f_general_groupadd']) $_SESSION['account']->general_groupadd = $_POST['f_general_groupadd'];
|
||||
else $_SESSION['account']->general_groupadd = '';
|
||||
if ($_POST['f_general_homedir']) $_SESSION['account']->general_homedir = $_POST['f_general_homedir'];
|
||||
else $_SESSION['account']->general_homedir = "";
|
||||
if ($_POST['f_general_shell']) $_SESSION['account']->general_shell = $_POST['f_general_shell'];
|
||||
if ($_POST['f_general_gecos']) $_SESSION['account']->general_gecos = $_POST['f_general_gecos'];
|
||||
else $_SESSION['account']->general_gecos = "";
|
||||
// Check Values
|
||||
// Check if values are OK and set automatic values. if not error-variable will be set
|
||||
if ($_SESSION['account_old']) $values = checkglobal($_SESSION['account'], $_SESSION['type2'], $_SESSION['account_old']); // account.inc
|
||||
else $values = checkglobal($_SESSION['account'], $_SESSION['type2']); // account.inc
|
||||
if (is_object($values)) {
|
||||
|
@ -61,7 +69,7 @@ switch ($_POST['select']) {
|
|||
if ($val) $_SESSION['account']->$key = $val;
|
||||
}
|
||||
else $error = $values;
|
||||
// Check which part Site should be displayd
|
||||
// Check which part Site should be displayed next
|
||||
if ($_POST['next'] && ($error=="0"))
|
||||
switch ($_SESSION['type2']) {
|
||||
case 'user': $select_local = 'unix'; break;
|
||||
|
@ -71,10 +79,9 @@ switch ($_POST['select']) {
|
|||
}
|
||||
break;
|
||||
case 'unix':
|
||||
// Write all values in temporary object
|
||||
// Write all general values into $_SESSION['account']
|
||||
if ($_POST['f_unix_password']) $_SESSION['account']->unix_password = $_POST['f_unix_password'];
|
||||
else $_SESSION['account']->unix_password = '';
|
||||
if ($_POST['genpass']) { $_SESSION['account']->unix_password = genpasswd(); }
|
||||
if ($_POST['f_unix_password_no']) $_SESSION['account']->unix_password_no = true;
|
||||
else $_SESSION['account']->unix_password_no = false;
|
||||
if ($_POST['f_unix_pwdwarn']) $_SESSION['account']->unix_pwdwarn = $_POST['f_unix_pwdwarn'];
|
||||
|
@ -90,20 +97,27 @@ switch ($_POST['select']) {
|
|||
if ($_POST['f_unix_pwdexpire_yea']) $_SESSION['account']->unix_pwdexpire_yea = $_POST['f_unix_pwdexpire_yea'];
|
||||
if ($_POST['f_unix_deactivated']) $_SESSION['account']->unix_deactivated = $_POST['f_unix_deactivated'];
|
||||
else $_SESSION['account']->unix_deactivated = false;
|
||||
// Check Values
|
||||
// Check which part Site should be displayd
|
||||
if ($_POST['genpass']) $select_local = 'unix';
|
||||
if ($_POST['genpass']) {
|
||||
// Generate a random password if generate-button was pressed
|
||||
$_SESSION['account']->unix_password = genpasswd();
|
||||
// Keep unix-page acitve
|
||||
$select_local = 'unix';
|
||||
}
|
||||
// Check if values are OK and set automatic values. if not error-variable will be set
|
||||
else $error = checkunix($_SESSION['account'], $_SESSION['type2']); // account.inc
|
||||
// Check which part Site should be displayd
|
||||
// Reset password if reset button was pressed. Button only vissible if account should be modified
|
||||
if ($_POST['respass']) {
|
||||
$_SESSION['account']->unix_password_no=true;
|
||||
$_SESSION['account']->smb_password_no=true;
|
||||
}
|
||||
if (($_POST['next']) && ($error=="0")) $select_local = 'samba';
|
||||
else $select_local = 'unix';
|
||||
// Check which part Site should be displayed next
|
||||
if ($_POST['back']) $select_local = 'general';
|
||||
else if (($_POST['next']) && ($error=="0")) $select_local = 'samba';
|
||||
else $select_local = 'unix';
|
||||
break;
|
||||
case 'samba':
|
||||
// Write all values in temporary object
|
||||
// Write all general values into $_SESSION['account']
|
||||
if ($_POST['f_smb_password']) $_SESSION['account']->smb_password = $_POST['f_smb_password'];
|
||||
else $_SESSION['account']->smb_password = "";
|
||||
if ($_POST['f_smb_password_no']) $_SESSION['account']->smb_password_no = true;
|
||||
|
@ -131,25 +145,25 @@ switch ($_POST['select']) {
|
|||
else $_SESSION['account']->smb_flagsD = false;
|
||||
if ($_POST['f_smb_flagsX']) $_SESSION['account']->smb_flagsX = $_POST['f_smb_flagsX'];
|
||||
else $_SESSION['account']->smb_flagsX = false;
|
||||
// Check Values
|
||||
// Check if values are OK and set automatic values. if not error-variable will be set
|
||||
$values = checksamba($_SESSION['account'], $_SESSION['type2']); // account.inc
|
||||
if (is_object($values)) {
|
||||
while (list($key, $val) = each($values)) // Set only defined values
|
||||
if ($val) $_SESSION['account']->$key = $val;
|
||||
}
|
||||
else $error = $values;
|
||||
// Check which part Site should be displayd
|
||||
// Check which part Site should be displayed next
|
||||
if ($_POST['back']) $select_local = 'unix';
|
||||
if ($_POST['next']) {
|
||||
else if ($_POST['next'])
|
||||
if ($error=="0")
|
||||
switch ($_SESSION['type2']) {
|
||||
case 'user': $select_local = 'quota'; break;
|
||||
case 'host': $select_local = 'final'; break;
|
||||
}
|
||||
else $select_local = 'samba';
|
||||
}
|
||||
break;
|
||||
case 'quota':
|
||||
// Write all general values into $_SESSION['account']
|
||||
$i=0;
|
||||
while ($_SESSION['account']->quota[$i][0]) {
|
||||
$_SESSION['account']->quota[$i][2] = $_POST['f_quota_'.$i.'_2'];
|
||||
|
@ -158,28 +172,29 @@ switch ($_POST['select']) {
|
|||
$_SESSION['account']->quota[$i][7] = $_POST['f_quota_'.$i.'_7'];
|
||||
$i++;
|
||||
}
|
||||
// Check if values are OK and set automatic values. if not error-variable will be set
|
||||
$values = checkquota($_SESSION['account'], $_SESSION['type2']); // account.inc
|
||||
if (is_object($values)) {
|
||||
while (list($key, $val) = each($values)) // Set only defined values
|
||||
if ($val) $_SESSION['account']->$key = $val;
|
||||
}
|
||||
else $error = $values;
|
||||
// Check which part Site should be displayd
|
||||
// Check which part Site should be displayed next
|
||||
if ($_POST['back'])
|
||||
switch ($_SESSION['type2']) {
|
||||
case 'user': $select_local = 'samba'; break;
|
||||
case 'group': $select_local = 'general'; break;
|
||||
}
|
||||
if ($_POST['next']) {
|
||||
else if ($_POST['next'])
|
||||
if ($error=="0")
|
||||
switch ($_SESSION['type2']) {
|
||||
case 'user': $select_local = 'personal'; break;
|
||||
case 'group': $select_local = 'final'; break;
|
||||
}
|
||||
else $select_local = 'quota';
|
||||
}
|
||||
break;
|
||||
case 'personal':
|
||||
// Write all general values into $_SESSION['account']
|
||||
if ($_POST['f_personal_title']) $_SESSION['account']->personal_title = $_POST['f_personal_title'];
|
||||
else $_SESSION['account']->personal_title = "";
|
||||
if ($_POST['f_personal_mail']) $_SESSION['account']->personal_mail = $_POST['f_personal_mail'];
|
||||
|
@ -198,19 +213,24 @@ switch ($_POST['select']) {
|
|||
else $_SESSION['account']->personal_postalAddress = "";
|
||||
if ($_POST['f_personal_employeeType']) $_SESSION['account']->personal_employeeType = $_POST['f_personal_employeeType'];
|
||||
else $_SESSION['account']->personal_employeeType = "";
|
||||
// Check which part Site should be displayd
|
||||
// Check if values are OK and set automatic values. if not error-variable will be set
|
||||
$values = checkpersonal($_SESSION['account'], $_SESSION['type2']); // account.inc
|
||||
if (is_object($values)) {
|
||||
while (list($key, $val) = each($values)) // Set only defined values
|
||||
if ($val) $_SESSION['account']->$key = $val;
|
||||
}
|
||||
else $error = $values;
|
||||
if ($_POST['back'] && ($error=="0")) $select_local = 'quota';
|
||||
if ($_POST['next'] && ($error=="0")) $select_local = 'final';
|
||||
// Check which part Site should be displayed next
|
||||
if ($_POST['back']) $select_local = 'quota';
|
||||
else if ($_POST['next'])
|
||||
if ($error=="0") $select_local = 'final';
|
||||
else $select_local = 'personal';
|
||||
break;
|
||||
case 'final':
|
||||
// Write all general values into $_SESSION['account']
|
||||
if ($_POST['f_final_changegids']) $_SESSION['final_changegids'] = $_POST['f_final_changegids'] ;
|
||||
if ($_POST['back'] && ($error=="0"))
|
||||
// Check which part Site should be displayed next
|
||||
if ($_POST['back'])
|
||||
switch ($_SESSION['type2']) {
|
||||
case 'user': $select_local = 'personal'; break;
|
||||
case 'group': $select_local = 'quota'; break;
|
||||
|
@ -218,6 +238,7 @@ switch ($_POST['select']) {
|
|||
}
|
||||
break;
|
||||
case 'finish':
|
||||
// Check if pdf-file should be created
|
||||
if ($_POST['outputpdf']) createpdf($_SESSION['account']);
|
||||
break;
|
||||
}
|
||||
|
@ -225,6 +246,7 @@ switch ($_POST['select']) {
|
|||
|
||||
|
||||
if ( $_POST['create'] ) { // Create-Button was pressed
|
||||
// Create or modify an account
|
||||
switch ($_SESSION['type2']) {
|
||||
case 'user':
|
||||
if ($_SESSION['account_old']) $result = modifyuser($_SESSION['account'],$_SESSION['account_old']);
|
||||
|
@ -245,51 +267,60 @@ if ( $_POST['create'] ) { // Create-Button was pressed
|
|||
}
|
||||
|
||||
|
||||
// Set selected page to general if no page was defined. should only true if account.php wasn't called by itself
|
||||
if (!$select_local) $select_local='general';
|
||||
// Reset variables if recreate-button was pressed
|
||||
if ($_POST['createagain']) {
|
||||
$select_local='general';
|
||||
$_SESSION['account']="";
|
||||
}
|
||||
// Set selected page to backmain (Back to main listmenu)
|
||||
if ($_POST['backmain']) {
|
||||
$select_local='backmain';
|
||||
}
|
||||
|
||||
// Set selected page to load (load profile)
|
||||
if ($_POST['load']) $select_local='load';
|
||||
// Set selected page to save (save profile)
|
||||
if ($_POST['save']) $select_local='save';
|
||||
|
||||
|
||||
// Write HTML-Header and part of Table
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">';
|
||||
echo '<html><head><title>';
|
||||
echo _('Create new Account');
|
||||
echo '</title>
|
||||
<link rel="stylesheet" type="text/css" href="../style/layout.css">
|
||||
<meta http-equiv="pragma" content="no-cache">
|
||||
<meta http-equiv="cache-control" content="no-cache">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">';
|
||||
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"
|
||||
\"http://www.w3.org/TR/html4/loose.dtd\">\n";
|
||||
echo "<html><head><title>";
|
||||
echo _("Create new Account");
|
||||
echo "</title>\n
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"../style/layout.css\">\n
|
||||
<meta http-equiv=\"pragma\" content=\"no-cache\">\n
|
||||
<meta http-equiv=\"cache-control\" content=\"no-cache\">\n
|
||||
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\">";
|
||||
|
||||
switch ($select_local) {
|
||||
// backmain = back to lists
|
||||
// load = load profile
|
||||
// save = save profile
|
||||
case 'backmain':
|
||||
// unregister sessionvar and select which list should be shown
|
||||
if (session_is_registered("shelllist")) session_unregister("shelllist");
|
||||
if (session_is_registered("account")) session_unregister("account");
|
||||
if (session_is_registered("account_old")) session_unregister("account_old");
|
||||
switch ( $_SESSION['type2'] ) {
|
||||
case 'user' :
|
||||
if (session_is_registered("type2")) session_unregister("type2");
|
||||
echo '<meta http-equiv="refresh" content="0; URL=lists/listusers.php">';
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=lists/listusers.php\">\n";
|
||||
break;
|
||||
case 'group' :
|
||||
if (session_is_registered("type2")) session_unregister("type2");
|
||||
echo '<meta http-equiv="refresh" content="0; URL=lists/listgroups.php">';
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=lists/listgroups.php\">\n";
|
||||
break;
|
||||
case 'host' :
|
||||
if (session_is_registered("type2")) session_unregister("type2");
|
||||
echo '<meta http-equiv="refresh" content="0; URL=lists/listhosts.php">';
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=lists/listhosts.php\">\n";
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 'load':
|
||||
// load profile
|
||||
switch ( $_SESSION['type2'] ) {
|
||||
case 'user':
|
||||
$_SESSION['account'] = loadUserProfile($_POST['f_general_selectprofile']);
|
||||
|
@ -301,9 +332,11 @@ switch ($select_local) {
|
|||
$_SESSION['account'] = loadGroupProfile($_POST['f_general_selectprofile']);
|
||||
break;
|
||||
}
|
||||
// select general page after group has been loaded
|
||||
$select_local='general';
|
||||
break;
|
||||
case 'save':
|
||||
// save profile
|
||||
switch ( $_SESSION['type2'] ) {
|
||||
case 'user':
|
||||
saveUserProfile($_SESSION['account'], $_POST['f_finish_safeProfile']);
|
||||
|
@ -315,54 +348,73 @@ switch ($select_local) {
|
|||
saveGroupProfile($_SESSION['account'], $_POST['f_finish_safeProfile']);
|
||||
break;
|
||||
}
|
||||
// select last page displayed before user is created
|
||||
$select_local='final';
|
||||
break;
|
||||
}
|
||||
|
||||
echo '</head><body>
|
||||
<form action="account.php" method="post">';
|
||||
if ($error != "0") StatusMessage('ERROR', _('Invalid Value!'), $error);
|
||||
echo '<table rules="all" class="account" width="100%">';
|
||||
echo "</head><body>\n";
|
||||
echo "<form action=\"account.php\" method=\"post\">\n";
|
||||
if ($error != "0") StatusMessage("ERROR", _("Invalid Value!"), $error);
|
||||
echo "<table rules=\"all\" class=\"account\" width=\"100%\">\n";
|
||||
|
||||
|
||||
switch ($select_local) {
|
||||
switch ($select_local) { // Select which part of page will be loaded
|
||||
// general = startpage, general account paramters
|
||||
// unix = page with all shadow-options and password
|
||||
// samba = page with all samba-related parameters e.g. smbpassword
|
||||
// quota = page with all quota-related parameters e.g. hard file quota
|
||||
// personal = page with all personal-related parametergs, e.g. phone number
|
||||
// final = last page shown before account is created/modified
|
||||
// if account is modified commands might be ran are shown
|
||||
// finish = page shown after account has been created/modified
|
||||
case 'general':
|
||||
// General Account Settings
|
||||
// load list of all groups
|
||||
$groups = findgroups();
|
||||
// Show page info
|
||||
echo '<tr><td><input name="select" type="hidden" value="general">';
|
||||
echo _('General Properties');
|
||||
echo '</td></tr>';
|
||||
echo "</td></tr>\n";
|
||||
switch ( $_SESSION['type2'] ) {
|
||||
case 'user':
|
||||
// load list of profiles
|
||||
$profilelist = getUserProfiles();
|
||||
// Create HTML-page
|
||||
echo '<tr><td>';
|
||||
echo _('Username');
|
||||
echo '</td><td>
|
||||
<input name="f_general_username" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->general_username . '">
|
||||
</td></tr><tr><td>';
|
||||
echo _('Username*');
|
||||
echo "</td>\n<td>".
|
||||
'<input name="f_general_username" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->general_username . '">
|
||||
</td><td>
|
||||
<a href="help.php?HelpNumber=400" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('UID Number');
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_uidNumber" type="text" size="6" maxlength="6" value="' . $_SESSION['account']->general_uidNumber . '">
|
||||
</td><td>';
|
||||
echo _('If empty UID Number will be generated automaticly.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo _('Surname');
|
||||
echo '</td><td>
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=401" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Surname*');
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_surname" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->general_surname . '">
|
||||
</td></tr><tr><td>';
|
||||
echo _('Given name');
|
||||
echo '</td><td>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Given name*');
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_givenname" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->general_givenname . '">
|
||||
</td></tr><tr><td>';
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Primary Group');
|
||||
echo '</td><td><select name="f_general_group">';
|
||||
echo '</td>'."\n".'<td><select name="f_general_group">';
|
||||
// loop trough existing groups
|
||||
foreach ($groups as $group) {
|
||||
if ($_SESSION['account']->general_group == $group) echo '<option selected>' . $group;
|
||||
else echo '<option>' . $group;
|
||||
}
|
||||
echo '</select></td></tr><tr><td>';
|
||||
echo '</select></td><td>
|
||||
<a href="help.php?HelpNumber=406" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Additional Groupmembership');
|
||||
echo '</td><td><select name="f_general_groupadd[]" size="3" multiple>';
|
||||
echo '</td>'."\n".'<td><select name="f_general_groupadd[]" size="3" multiple>';
|
||||
// loop though existing groups for additional groups
|
||||
foreach ($groups as $group) {
|
||||
if ($_SESSION['account']->general_groupadd) {
|
||||
if (in_array($group, $_SESSION['account']->general_groupadd)) echo '<option selected>'.$group;
|
||||
|
@ -370,77 +422,89 @@ switch ($select_local) {
|
|||
}
|
||||
else echo '<option>'.$group;
|
||||
}
|
||||
echo '</select></td><td>';
|
||||
echo _('Can be left empty. Hold the CTRL-key to select multiple groups.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</select></td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=402" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Home Directory');
|
||||
echo '</td><td><input name="f_general_homedir" type="text" size="30" value="' . $_SESSION['account']->general_homedir . '">
|
||||
</td><td>';
|
||||
echo _('$user and $group are replaced with username or primary groupname.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_general_homedir" type="text" size="30" value="' . $_SESSION['account']->general_homedir . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=403" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Gecos');
|
||||
echo '</td><td><input name="f_general_gecos" type="text" size="30" value="' . $_SESSION['account']->general_gecos . '">
|
||||
</td><td>';
|
||||
echo _('User descriptopn. If left empty sur- and givename will be used.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_general_gecos" type="text" size="30" value="' . $_SESSION['account']->general_gecos . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=404" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Login Shell');
|
||||
echo '</td><td><select name="f_general_shell" >';
|
||||
echo '</td>'."\n".'<td><select name="f_general_shell" >';
|
||||
// loop through shells
|
||||
foreach ($_SESSION['shelllist'] as $shell)
|
||||
if ($_SESSION['account']->general_shell==trim($shell)) echo '<option selected>'.$shell;
|
||||
else echo '<option>'.$shell;
|
||||
echo '</select></td><td>';
|
||||
echo _('To disable login use /bin/false.');
|
||||
echo '</td></tr><tr><td><select name="f_general_selectprofile">';
|
||||
echo '</select></td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=405" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td><select name="f_general_selectprofile">';
|
||||
// loop through profiles
|
||||
foreach ($profilelist as $profile) echo '<option>' . $profile;
|
||||
echo '</select>
|
||||
<input name="load" type="submit" value="'; echo _('Load Profile'); echo '">
|
||||
</td><td>';
|
||||
</td>'."\n".'<td>';
|
||||
break;
|
||||
case 'group':
|
||||
// load list of profiles
|
||||
$profilelist = getGroupProfiles();
|
||||
// Create HTML-page
|
||||
echo '<tr><td>';
|
||||
echo _('Groupname');
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_username" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->general_username . '">
|
||||
</td></tr><tr><td>';
|
||||
</td><td>
|
||||
<a href="help.php?HelpNumber=407" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('GID Number');
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_uidNumber" type="text" size="6" maxlength="6" value="' . $_SESSION['account']->general_uidNumber . '">
|
||||
</td><td>';
|
||||
echo _('If empty GID Number will be generated automaticly.');
|
||||
echo '</td></tr><tr><td>';
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=408" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Gecos');
|
||||
echo '</td><td><input name="f_general_gecos" type="text" size="30" value="' . $_SESSION['account']->general_gecos . '">
|
||||
</td><td>';
|
||||
echo _('User descriptopn. If left empty groupname will be used.');
|
||||
echo '</td></tr><tr><td><select name="f_general_selectprofile" >';
|
||||
echo '</td>'."\n".'<td><input name="f_general_gecos" type="text" size="30" value="' . $_SESSION['account']->general_gecos . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=409" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td><select name="f_general_selectprofile" >';
|
||||
foreach ($profilelist as $profile) echo '<option>' . $profile;
|
||||
echo '</select>
|
||||
<input name="load" type="submit" value="'; echo _('Load Profile'); echo '">
|
||||
</td><td>';
|
||||
</td>'."\n".'<td>';
|
||||
break;
|
||||
case 'host':
|
||||
// load list of profiles
|
||||
$profilelist = getHostProfiles();
|
||||
// Create HTML-page
|
||||
echo '<tr><td>';
|
||||
echo _('Hostname');
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_username" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->general_username . '">
|
||||
</td></tr><tr><td>';
|
||||
</td><td>
|
||||
<a href="help.php?HelpNumber=410" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('UID Number');
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_general_uidNumber" type="text" size="6" maxlength="6" value="' . $_SESSION['account']->general_uidNumber . '">
|
||||
</td><td>';
|
||||
echo _('If empty UID Number will be generated automaticly.');
|
||||
echo '</td></tr><tr><td>';
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=411" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Primary Group');
|
||||
echo '</td><td><select name="f_general_group">';
|
||||
echo '</td>'."\n".'<td><select name="f_general_group">';
|
||||
foreach ($groups as $group) {
|
||||
if ($_SESSION['account']->general_group == $group) echo '<option selected>' . $group;
|
||||
else echo '<option>' . $group;
|
||||
}
|
||||
echo '</select></td></tr><tr><td>';
|
||||
echo '</select></td><td>
|
||||
<a href="help.php?HelpNumber=412" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Additional Groupmembership');
|
||||
echo '</td><td><select name="f_general_groupadd[]" size="3" multiple>';
|
||||
echo '</td>'."\n".'<td><select name="f_general_groupadd[]" size="3" multiple>';
|
||||
foreach ($groups as $group) {
|
||||
if ($_SESSION['account']->general_groupadd) {
|
||||
if (in_array($group, $_SESSION['account']->general_groupadd)) echo '<option selected>'.$group;
|
||||
|
@ -448,65 +512,65 @@ switch ($select_local) {
|
|||
}
|
||||
else echo '<option>'.$group;
|
||||
}
|
||||
echo '</select></td><td>';
|
||||
echo _('Can be left empty. Hold the CTRL-key to select multiple groups.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</select></td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=402" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Gecos');
|
||||
echo '</td><td><input name="f_general_gecos" type="text" size="30" value="' . $_SESSION['account']->general_gecos . '">
|
||||
</td><td>';
|
||||
echo _('Host descriptopn. If left empty hostname will be used.');
|
||||
echo '</td></tr><tr><td><select name="f_general_selectprofile">';
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=413" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td><select name="f_general_selectprofile">';
|
||||
foreach ($profilelist as $profile) echo '<option>' . $profile;
|
||||
echo '</select>
|
||||
<input name="load" type="submit" value="'; echo _('Load Profile'); echo '">
|
||||
</td><td>';
|
||||
</td>'."\n".'<td>';
|
||||
break;
|
||||
}
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="next" type="submit" value="'; echo _('next'); echo '">
|
||||
</td></tr>';
|
||||
</td></tr>'."\n";
|
||||
break;
|
||||
case 'unix':
|
||||
// Unix Password Settings
|
||||
echo '<tr><td><input name="select" type="hidden" value="unix">';
|
||||
echo _('Unix Properties');
|
||||
echo '</td></tr>';
|
||||
echo '</td></tr>'."\n".'';
|
||||
switch ( $_SESSION['type2'] ) {
|
||||
case 'user' :
|
||||
echo '<tr><td>';
|
||||
echo _('Password');
|
||||
echo '</td><td>
|
||||
echo '</td>'."\n".'<td>
|
||||
<input name="f_unix_password" type="text" size="20" maxlength="20" value="' . $_SESSION['account']->unix_password . '">
|
||||
</td><td>
|
||||
</td>'."\n".'<td>
|
||||
<input name="genpass" type="submit" value="';
|
||||
echo _('Generate Password'); echo '">
|
||||
</td></tr><tr><td>';
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Use no Password.');
|
||||
echo '</td><td><input name="f_unix_password_no" type="checkbox"';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_password_no" type="checkbox"';
|
||||
if ($_SESSION['account']->unix_password_no) echo ' checked ';
|
||||
echo '></td></tr><tr><td>';
|
||||
echo '></td></tr>'."\n".'<tr><td>';
|
||||
echo _('Password Warn');
|
||||
echo '</td><td><input name="f_unix_pwdwarn" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdwarn . '">
|
||||
</td><td>';
|
||||
echo _('Number of days a user will be warned when password will expire. Value must be 0<.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdwarn" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdwarn . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=414" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Password Expire');
|
||||
echo '</td><td><input name="f_unix_pwdallowlogin" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdallowlogin . '">
|
||||
</td><td>';
|
||||
echo _('Number of days a user can login even his password has expired. -1=always');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdallowlogin" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdallowlogin . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=415" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Maximum Passwordage');
|
||||
echo '</td><td><input name="f_unix_pwdmaxage" type="text" size="5" maxlength="5" value="' . $_SESSION['account']->unix_pwdmaxage . '">
|
||||
</td><td>';
|
||||
echo _('Number of days after a user has to change his password again Value must be 0<.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdmaxage" type="text" size="5" maxlength="5" value="' . $_SESSION['account']->unix_pwdmaxage . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=416" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Minimum Passwordage');
|
||||
echo '</td><td><input name="f_unix_pwdminage" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdminage . '">
|
||||
</td><td>';
|
||||
echo _('Number of days a user has to wait until he\'s allowed to change his password again. Value must be 0<.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdminage" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdminage . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=417" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Expire Date');
|
||||
echo '</td><td><select name="f_unix_pwdexpire_day">';
|
||||
echo '</td>'."\n".'<td><select name="f_unix_pwdexpire_day">';
|
||||
for ( $i=1; $i<=31; $i++ ) {
|
||||
if ($_SESSION['account']->unix_pwdexpire_day==$i) echo "<option selected> $i";
|
||||
else echo "<option> $i";
|
||||
|
@ -521,13 +585,13 @@ switch ($select_local) {
|
|||
if ($_SESSION['account']->unix_pwdexpire_yea==$i) echo "<option selected> $i";
|
||||
else echo "<option> $i";
|
||||
}
|
||||
echo '</select></td><td>';
|
||||
echo _('Account expire date.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</select></td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=418" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Account deactivated');
|
||||
echo '</td><td><input name="f_unix_deactivated" type="checkbox"';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_deactivated" type="checkbox"';
|
||||
if ($_SESSION['account']->unix_deactivated) echo ' checked ';
|
||||
echo '></td></tr>';
|
||||
echo '></td></tr>'."\n";
|
||||
break;
|
||||
case 'host' :
|
||||
echo '<input name="f_unix_password_no" type="hidden" value="';
|
||||
|
@ -535,34 +599,34 @@ switch ($select_local) {
|
|||
echo '">';
|
||||
echo '<tr><td>';
|
||||
echo _('Password');
|
||||
echo '</td><td></td><td>';
|
||||
echo '</td>'."\n".'<td></td>'."\n".'<td>';
|
||||
if ($_SESSION['account_old']) {
|
||||
echo '<input name="respass" type="submit" value="';
|
||||
echo _('Reset Password'); echo '">';
|
||||
}
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Password Warn');
|
||||
echo '</td><td><input name="f_unix_pwdwarn" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdwarn . '">
|
||||
</td><td>';
|
||||
echo _('Number of host a user will be warned when password will expire. Value must be 0<.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdwarn" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdwarn . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=419" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Password Expire');
|
||||
echo '</td><td><input name="f_unix_pwdallowlogin" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdallowlogin . '">
|
||||
</td><td>';
|
||||
echo _('Number of days a host can login even his password has expired. -1=always');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdallowlogin" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdallowlogin . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=420" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Maximum Passwordage');
|
||||
echo '</td><td><input name="f_unix_pwdmaxage" type="text" size="5" maxlength="5" value="' . $_SESSION['account']->unix_pwdmaxage . '">
|
||||
</td><td>';
|
||||
echo _('Number of days after a host has to change his password again Value must be 0< and should be higher as the value on client-side.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdmaxage" type="text" size="5" maxlength="5" value="' . $_SESSION['account']->unix_pwdmaxage . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=421" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Minimum Passwordage');
|
||||
echo '</td><td><input name="f_unix_pwdminage" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdminage . '">
|
||||
</td><td>';
|
||||
echo _('Number of days a user has to wait until he\'s allowed to change his password again. Value must be 0<.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_pwdminage" type="text" size="4" maxlength="4" value="' . $_SESSION['account']->unix_pwdminage . '">
|
||||
</td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=422" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Expire Date');
|
||||
echo '</td><td><select name="f_unix_pwdexpire_day">';
|
||||
echo '</td>'."\n".'<td><select name="f_unix_pwdexpire_day">';
|
||||
for ( $i=1; $i<=31; $i++ ) {
|
||||
if ($_SESSION['account']->unix_pwdexpire_day==$i) echo "<option selected> $i";
|
||||
else echo "<option> $i";
|
||||
|
@ -577,24 +641,24 @@ switch ($select_local) {
|
|||
if ($_SESSION['account']->unix_pwdexpire_yea==$i) echo "<option selected> $i";
|
||||
else echo "<option> $i";
|
||||
}
|
||||
echo '</select></td><td>';
|
||||
echo _('Account expire date.');
|
||||
echo '</td></tr><tr><td>';
|
||||
echo '</select></td>'."\n".'<td>
|
||||
<a href="help.php?HelpNumber=422" target="lamhelp">'._('Help').'</a>
|
||||
</td></tr>'."\n".'<tr><td>';
|
||||
echo _('Account deactivated');
|
||||
echo '</td><td><input name="f_unix_deactivated" type="checkbox"';
|
||||
echo '</td>'."\n".'<td><input name="f_unix_deactivated" type="checkbox"';
|
||||
if ($_SESSION['account']->unix_deactivated) echo ' checked ';
|
||||
echo '></td></tr>';
|
||||
echo '></td></tr>'."\n";
|
||||
break;
|
||||
}
|
||||
echo '<tr><td>
|
||||
<input name="back" type="submit" value="'; echo _('back'); echo '">
|
||||
</td><td></td><td>
|
||||
</td>'."\n".'<td></td>'."\n".'<td>
|
||||
<input name="next" type="submit" value="'; echo _('next'); echo '">
|
||||
</td></tr>';
|
||||
</td></tr>'."\n";
|
||||
break;
|
||||
case 'samba':
|
||||
// Samba Settings
|
||||
echo '<tr><td><input name="select" type="hidden" value="samba">'; echo _('Samba Properties'); echo '</td></tr>';
|
||||
echo '<tr><td><input name="select" type="hidden" value="samba">'; echo _('Samba Properties'); echo '</td></tr>'."\n";
|
||||
switch ( $_SESSION['type2'] ) {
|
||||
case 'user':
|
||||
echo '<tr><td>';
|
||||
|
|
|
@ -103,14 +103,17 @@ if ($_POST['delete_yes']) {
|
|||
case 'group':
|
||||
$temp=explode(',', $dn);
|
||||
$groupname = str_replace('cn=', '', $temp[0]);
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $dn, 'objectClass=*');
|
||||
if (!$result) $error = _('Could not delete group: ').$dn;
|
||||
$result = ldap_search($_SESSION['ldap']->server(), $dn, 'objectClass=*', array('gidNumber');
|
||||
$entry = ldap_first_entry($_SESSION['ldap']->server(), $result);
|
||||
$attr = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
if ($attr['memberUid']) $error = _('Could not delete group. Still users in group: ').$dn;
|
||||
else {
|
||||
while ($entry) {
|
||||
$attr2 = ldap_get_attributes($_SESSION['ldap']->server(), $entry);
|
||||
if ($attr2['gidNumber']==getgid($groupname)) $error = _('Could not delete group. Still users in group: ').$dn;
|
||||
$entry = ldap_next_entry($_SESSION['ldap']->server(), $entry);
|
||||
}
|
||||
if (!$error) {
|
||||
if ($_SESSION['config']->scriptServer) remquotas($groupname, $_POST['type5']);
|
||||
$success = ldap_delete($_SESSION['ldap']->server(), $dn);
|
||||
if (!$success) $error = _('Could not delete group: ').$dn;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue