From 9c80ebdc8f87577272e3dd65788cb0e5c3800675 Mon Sep 17 00:00:00 2001 From: Roland Gruber Date: Tue, 9 Mar 2004 14:29:47 +0000 Subject: [PATCH] first changes to support new profile structure --- lam/templates/profedit/profilegroup.php | 158 --------- lam/templates/profedit/profilehost.php | 131 ------- lam/templates/profedit/profilemain.php | 10 +- lam/templates/profedit/profilepage.php | 184 ++++++++++ lam/templates/profedit/profileuser.php | 435 ------------------------ 5 files changed, 189 insertions(+), 729 deletions(-) delete mode 100644 lam/templates/profedit/profilegroup.php delete mode 100644 lam/templates/profedit/profilehost.php create mode 100644 lam/templates/profedit/profilepage.php delete mode 100644 lam/templates/profedit/profileuser.php diff --git a/lam/templates/profedit/profilegroup.php b/lam/templates/profedit/profilegroup.php deleted file mode 100644 index 26803d32..00000000 --- a/lam/templates/profedit/profilegroup.php +++ /dev/null @@ -1,158 +0,0 @@ -server()) { - metaRefresh("../login.php"); - exit; -} - -// load quota list -if ($_SESSION['config']->get_scriptPath()) { - $tempacc = new account(); - $tempacc->type = "group"; - $acct_q = getquotas(array($tempacc)); -} - -// print header -echo $_SESSION['header']; -echo "\n\n"; -echo "
\n"; - -$acct = new Account(); - -// check if profile should be edited -if ($_GET['edit']) { - $acct = loadGroupProfile($_GET['edit']); -} - -// display formular -echo ("
\n"); - -if ($_SESSION['config']->is_samba3()) { - // Samba part - echo ("
" . _("Samba") . "\n"); - echo ("\n"); - - // domain - echo ("\n"); - echo ("\n"); - echo "\n"; - echo ("\n"); - echo ("\n"); - - echo ("
" . _("Domain") . ": " . _("Help") . "
\n"); - echo ("
\n"); -} - - -// Quota settings if script is given -if ($_SESSION['config']->get_scriptPath()) { - echo ("
"); - echo "
"._('Quota properties')."\n"; - echo "\n"; - // description line - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - // help line - echo "'."\n". - "'."\n". - "'."\n". - "'."\n". - "'."\n". - ''."\n"; - // quota settings - for ($i = 0; $i < (sizeof($acct_q[0]->quota)); $i++) { - // load values from profile - for ($k = 0; $k < sizeof($acct->quota); $k++) { - // check for equal mountpoints - if ($acct->quota[$k][0] == $acct_q[0]->quota[$i][0]) { - $acct_q[0]->quota[$i][2] = $acct->quota[$i][2]; - $acct_q[0]->quota[$i][3] = $acct->quota[$i][3]; - $acct_q[0]->quota[$i][6] = $acct->quota[$i][6]; - $acct_q[0]->quota[$i][7] = $acct->quota[$i][7]; - } - } - echo "\n"; - echo '\n"; // mountpoint - echo '\n"; // blocks soft limit - echo '\n"; // blocks hard limit - echo '\n"; // inodes soft limit - echo '\n"; // inodes hard limit - echo "\n"; - } - echo "
" . _('Mountpoint') . "  " . _('Soft block limit') . "  " . _('Hard block limit') . "  " . _('Soft inode limit') . "  " . _('Hard inode limit') . "  
"._('Help').'"._('Help').'"._('Help').'"._('Help').'"._('Help').'
' . $acct_q[0]->quota[$i][0] . "quota[$i][0] . "\">
\n"; - // save number of mountpoints - echo "quota)) . "\">\n"; - echo "
\n"; -} - -echo ("

\n"); - -// profile name and submit/abort buttons -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("
" . _("Profile name") . ":" . _("Help") . "
 
\n"); -echo (" 
\n"); - -echo ("
\n"); diff --git a/lam/templates/profedit/profilehost.php b/lam/templates/profedit/profilehost.php deleted file mode 100644 index f0c34e46..00000000 --- a/lam/templates/profedit/profilehost.php +++ /dev/null @@ -1,131 +0,0 @@ -server()) { - metaRefresh("../login.php"); - exit; -} - -// print header -echo $_SESSION['header']; -echo "\n\n"; -echo "
\n"; - -$acct = new Account(); - -// check if profile should be edited -if ($_GET['edit']) { - $acct = loadHostProfile($_GET['edit']); -} - -// search available groups -$groups = findgroups(); - -// display formular -echo ("
\n"); - - -// Unix part -echo ("
" . _("Host attributes") . "\n"); -echo ("\n"); - -// primary group -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// domain -echo ("\n"); -echo ("\n"); -if ($_SESSION['config']->is_samba3()) { - echo "\n"; -} -else { - echo ("\n"); -} -echo ("\n"); -echo ("\n"); - -echo ("
" . _("Primary group") . ": " . _("Help") . "
   
" . _("Domain") . ": smb_domain . "\" name=\"smb_domain\">" . _("Help") . "
\n"); -echo ("
\n"); - - -echo ("

\n"); - -// profile name and submit/abort buttons -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("
" . _("Profile name") . ":" . _("Help") . "
 
\n"); -echo (" 
\n"); - -echo ("
\n"); - - - -?> diff --git a/lam/templates/profedit/profilemain.php b/lam/templates/profedit/profilemain.php index 3dd0e10e..2e86a612 100644 --- a/lam/templates/profedit/profilemain.php +++ b/lam/templates/profedit/profilemain.php @@ -53,7 +53,7 @@ if ($_POST['forward'] == "yes") { } // edit user profile elseif($_POST['profile'] == "edituser") { - metaRefresh("profileuser.php?type=user&edit=" . $_POST['e_user']); + metaRefresh("profilepage.php?type=user&edit=" . $_POST['e_user']); } // delete user profile elseif($_POST['profile'] == "deluser") { @@ -62,11 +62,11 @@ if ($_POST['forward'] == "yes") { if ($_SESSION['config']->is_samba3() || $_SESSION['config']->get_scriptPath()) { // create new group profile if ($_POST['profile'] == "newgroup") { - metaRefresh("profilegroup.php"); + metaRefresh("profilepage.php?type=group"); } // edit group profile elseif($_POST['profile'] == "editgroup") { - metaRefresh("profilegroup.php?edit=" . $_POST['e_group']); + metaRefresh("profilepage.php?type=group&edit=" . $_POST['e_group']); } // delete group profile elseif($_POST['profile'] == "delgroup") { @@ -75,11 +75,11 @@ if ($_POST['forward'] == "yes") { } // create new host profile if ($_POST['profile'] == "newhost") { - metaRefresh("profilehost.php"); + metaRefresh("profilepage.php?type=host"); } // edit host profile elseif($_POST['profile'] == "edithost") { - metaRefresh("profilehost.php?edit=" . $_POST['e_host']); + metaRefresh("profilepage.php?type=host&edit=" . $_POST['e_host']); } // delete user profile elseif($_POST['profile'] == "delhost") { diff --git a/lam/templates/profedit/profilepage.php b/lam/templates/profedit/profilepage.php new file mode 100644 index 00000000..704c2a4b --- /dev/null +++ b/lam/templates/profedit/profilepage.php @@ -0,0 +1,184 @@ +server()) { + metaRefresh("../login.php"); + exit; +} + +// print header +echo $_SESSION['header']; +echo "\n\n"; +echo "
\n"; + +// check if account type is valid +$type = $_GET['type']; +if (!(($type == 'user') || ($type == 'group') || ($type == 'host'))) meta_refresh('profilemain.php'); + +// get module options +$options = getProfileOptions($type); + +// load old profile if needed +$old_profile = array(); +if ($_GET['edit']) { + if ($type == "user") $old_options = loadUserProfile($_GET['edit']); + else if ($type == "group") $old_options = loadGroupProfile($_GET['edit']); + else if ($type == "host") $old_options = loadHostProfile($_GET['edit']); +} + +// display formular +echo ("
\n"); + +// display module options +$modules = array_keys($options); +for ($m = 0; $m < sizeof($modules); $m++) { + // ignore modules without options + if (sizeof($options[$modules[$m]]) < 1) continue; + echo "
\n"; + echo "" . getModuleAlias($modules[$m], $type) . "\n"; + echo "\n"; + for ($l = 0; $l < sizeof($options[$modules[$m]]); $l++) { // option lines + echo "\n"; + for ($o = 0; $o < sizeof($options[$modules[$m]][$l]); $o++) { // line parts + echo "\n"; + } + echo "\n"; + } + echo "
"; + print_option($options[$modules[$m]][$l][$o], $modules[$m], $old_profile); + echo "
\n"; + echo "
\n"; +} + +// profile name and submit/abort buttons +echo "

 

"; +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo (""); +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo ("\n"); +echo (""); +echo ("\n"); +echo ("
" . _("Profile name") . ":" . _("Help") . "
 
\n"); +echo (" 
\n"); + +echo ("
\n"); + +// prints out the row of a table including the option name, values and help +// $values: An array formated as module option +// $module_name: The name of the module the options belong to +// $old_profile: A hash array with the values from the loaded profile +function print_option($values, $modulename, $old_profile) { + echo ""; + switch ($values['kind']) { + // text value + case 'text': + echo $values['text'] . "\n"; + break; + // help link + case 'help': + echo "" . _('Help') . "\n"; + break; + // input field + case 'input': + if (($values['type'] == 'text') || ($values['type'] == 'checkbox')) { + if ($values['type'] == 'text') { + $output = "\n"; + // option values + for ($i = 0; $i < sizeof($values['options']); $i++) { + // use values from old profile if given + if (isset($old_profile[$values['name']])) { + if (in_array($values['options'][$i], $old_profile[$values['name']])) { + echo "\n"; + } + else { + echo "\n"; + } + } + // use default values if not in profile + else { + if (in_array($values['options'][$i], $values['options_selected'])) { + echo "\n"; + } + else { + echo "\n"; + } + } + } + echo "\n"; + break; + default: + echo "" . _("Unrecognized type") . ": " . $values['kind'] . "\n"; + break; + } + echo ""; +} + +?> diff --git a/lam/templates/profedit/profileuser.php b/lam/templates/profedit/profileuser.php deleted file mode 100644 index 6e11cdba..00000000 --- a/lam/templates/profedit/profileuser.php +++ /dev/null @@ -1,435 +0,0 @@ -server()) { - metaRefresh("../login.php"); - exit; -} - -// load quota list -if ($_SESSION['config']->get_scriptPath()) { - $tempacc = new account(); - $tempacc->type = "user"; - $acct_q = getquotas(array($tempacc)); -} - -// print header -echo $_SESSION['header']; -echo "\n\n"; -echo "
\n"; - -$acct = new Account(); - -// get list of login shells -$shelllist = file('../../config/shells'); -$hells = array(); -for ($i = 0; $i < sizeof($shelllist); $i++) { - $shelllist[$i] = chop($shelllist[$i]); - $shelllist[$i] = trim($shelllist[$i]); - if ($shelllist[$i] != "") $shells[sizeof($shells)] = $shelllist[$i]; -} - -// check if profile should be edited -if ($_GET['edit']) { - $acct = loadUserProfile($_GET['edit']); -} - -// search available groups -$groups = findgroups(); - -// calculate date for unix password expiry -if ($acct->unix_pwdexpire) { -$tstamp = $acct->unix_pwdexpire; -$tdate = date(dmY, $acct->unix_pwdexpire); -$unix_pwdexpire_day = substr($tdate, 0, 2); -$unix_pwdexpire_mon = substr($tdate, 2, 2); -$unix_pwdexpire_yea = substr($tdate, 4, 4); -} - -// display formular -echo ("
\n"); - - -// Unix part -echo ("
" . _("Unix account") . "\n"); -echo ("\n"); - -// primary group -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// additional groups -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// path to home directory -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// login shell -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// no Unix password -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// Unix: password expiry warn -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// Unix: password expiry -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// maximum password age -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// minimum password age -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// password expire date -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// unix workstations -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// deactivate account -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - - -echo ("
" . _("Primary group") . ": " . _("Help") . "
" . _("Additional groups") . ": " . _("Help") . "
   
" . _("Home Directory") . ": general_homedir . "\" name=\"general_homedir\">" . _("Help") . "
" . _("Login shell") . ": " . _("Help") . "
   
" . _("Set Unix Password") . ": " . _("Help") . "
" . _("Password warning") . ": unix_pwdwarn . "\">" . _("Help") . "
" . _("Password expiry") . ": unix_pwdallowlogin . "\">" . _("Help") . "
" . _("Maximum password age") . ": unix_pwdmaxage . "\">" . _("Help") . "
" . _("Minimum password age") . ": unix_pwdminage . "\">" . _("Help") . "
" . _("Account expires on") . ": \n"); -echo ("\n"); -echo ("\n"); -echo ("" . _("Help") . "
   
" . _("Unix workstations") . ": unix_host . "\">" . _("Help") . "
   
" . _("Account is deactivated") . ": " . _("Help") . "
\n"); -echo ("
\n"); -echo ("
"); - -// Samba part -echo ("
" . _("Samba account") . "\n"); -echo ("\n"); - -// no Samba password -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// use Unix password as Samba password -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// password expires -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// account is disabled -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// drive letter for home directory -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// path to home directory -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// path to profile -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// path to logon scripts -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// workstations -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); - -// empty row -echo ("\n"); - -// domain -echo ("\n"); -echo ("\n"); -if ($_SESSION['config']->is_samba3()) { - echo "\n"; -} -else { - echo ("\n"); -} -echo ("\n"); -echo ("\n"); - -echo ("
" . _("Set Samba password") . ": " . _("Help") . "
" . _("Set Unix password for Samba") . ": " . _("Help") . "
" . _("Password does not expire") . ": " . _("Help") . "
" . _("Account is deactivated") . ": " . _("Help") . "
   
" . _("Home drive") . ": " . _("Help") . "
" . _("Home path") . ": smb_smbhome . "\" name=\"smb_smbhome\">" . _("Help") . "
" . _("Profile path") . ": smb_profilePath . "\" name=\"smb_profilepath\">" . _("Help") . "
" . _("Script path") . ": smb_scriptPath . "\" name=\"smb_scriptPath\">" . _("Help") . "
   
" . _("Workstations") . ": smb_smbuserworkstations . "\" name=\"smb_smbuserworkstations\">" . _("Help") . "
   
" . _("Domain") . ": smb_domain . "\" name=\"smb_domain\">" . _("Help") . "
\n"); -echo ("
\n"); - - -// Quota settings if script is given -if ($_SESSION['config']->get_scriptPath()) { - echo ("
"); - echo "
"._('Quota properties')."\n"; - echo "\n"; - // description line - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - // help line - echo "'."\n". - "'."\n". - "'."\n". - "'."\n". - "'."\n". - ''."\n"; - // quota settings - for ($i = 0; $i < (sizeof($acct_q[0]->quota)); $i++) { - // load values from profile - for ($k = 0; $k < sizeof($acct->quota); $k++) { - // check for equal mountpoints - if ($acct->quota[$k][0] == $acct_q[0]->quota[$i][0]) { - $acct_q[0]->quota[$i][2] = $acct->quota[$i][2]; - $acct_q[0]->quota[$i][3] = $acct->quota[$i][3]; - $acct_q[0]->quota[$i][6] = $acct->quota[$i][6]; - $acct_q[0]->quota[$i][7] = $acct->quota[$i][7]; - } - } - echo "\n"; - echo '\n"; // mountpoint - echo '\n"; // blocks soft limit - echo '\n"; // blocks hard limit - echo '\n"; // inodes soft limit - echo '\n"; // inodes hard limit - echo "\n"; - } - echo "
" . _('Mountpoint') . "  " . _('Soft block limit') . "  " . _('Hard block limit') . "  " . _('Soft inode limit') . "  " . _('Hard inode limit') . "  
"._('Help').'"._('Help').'"._('Help').'"._('Help').'"._('Help').'
' . $acct_q[0]->quota[$i][0] . "quota[$i][0] . "\">
\n"; - // save number of mountpoints - echo "quota)) . "\">\n"; - echo "
\n"; -} - -echo ("

\n"); - -// profile name and submit/abort buttons -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo ("\n"); -echo (""); -echo ("\n"); -echo ("
" . _("Profile name") . ":" . _("Help") . "
 
\n"); -echo (" 
\n"); - -echo ("
\n");