From 21206c45bf44d91bbefcafc70a4a5d499554e4bf Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Sun, 31 Aug 2008 05:36:11 -0400 Subject: [PATCH] - Added the readonly attribute to tabs. - Clients that are not resellers can not change the basic web settings anymore. --- interface/lib/classes/tform_actions.inc.php | 2 +- interface/lib/classes/tform.inc.php | 8 ++++++++ interface/web/sites/form/web_domain.tform.php | 12 ++++++++++++ 3 files changed, 21 insertions(+), 1 deletions(-) diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php index 9f920c6..3d017aa 100644 --- a/interface/lib/classes/tform.inc.php +++ b/interface/lib/classes/tform.inc.php @@ -1024,6 +1024,14 @@ return $_SESSION["s"]["form"]["tab"]; } + function isReadonlyTab($tab) { + if(isset($this->formDef['tabs'][$tab]['readonly']) && $this->formDef['tabs'][$tab]['readonly'] == true) { + return true; + } else { + return false; + } + } + // translation function for forms, tries the form wordbook first and if this fails, it tries the global wordbook function lng($msg) { diff --git a/interface/lib/classes/tform_actions.inc.php b/interface/lib/classes/tform_actions.inc.php index 023595e..812c792 100644 --- a/interface/lib/classes/tform_actions.inc.php +++ b/interface/lib/classes/tform_actions.inc.php @@ -168,7 +168,7 @@ function onUpdateSave($sql) { global $app; - if(!empty($sql)) { + if(!empty($sql) && !$app->tform->isReadonlyTab($app->tform->getCurrentTab())) { $app->db->query($sql); if($app->db->errorMessage != '') die($app->db->errorMessage); } diff --git a/interface/web/sites/form/web_domain.tform.php b/interface/web/sites/form/web_domain.tform.php index 44f2193..d9e19f9 100644 --- a/interface/web/sites/form/web_domain.tform.php +++ b/interface/web/sites/form/web_domain.tform.php @@ -50,10 +50,19 @@ $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete +// Clients may not change the website basic settings if they are not resellers +if($app->auth->has_clients($_SESSION['s']['user']['userid']) || $app->auth->is_admin()) { + $web_domain_edit_readonly = false; +} else { + $web_domain_edit_readonly = true; +} + + $form["tabs"]['domain'] = array ( 'title' => "Domain", 'width' => 100, 'template' => "templates/web_domain_edit.htm", + 'readonly' => $web_domain_edit_readonly, 'fields' => array ( ################################## # Begin Datatable fields @@ -188,6 +197,7 @@ 'title' => "Redirect", 'width' => 100, 'template' => "templates/web_domain_redirect.htm", + 'readonly' => false, 'fields' => array ( ################################## # Begin Datatable fields @@ -216,6 +226,7 @@ 'title' => "SSL", 'width' => 100, 'template' => "templates/web_domain_ssl.htm", + 'readonly' => false, 'fields' => array ( ################################## # Begin Datatable fields @@ -302,6 +313,7 @@ 'title' => "Options", 'width' => 100, 'template' => "templates/web_domain_advanced.htm", + 'readonly' => false, 'fields' => array ( ################################## # Begin Datatable fields -- Gitblit v1.9.1