From cdda6b98d785f103d9be6643a99a882c0d65b64c Mon Sep 17 00:00:00 2001 From: fantu <fantu@ispconfig3> Date: Sun, 21 Dec 2008 04:51:07 -0500 Subject: [PATCH] fix parse error --- interface/web/client/client_template_edit.php | 30 ++++++++++++++++++++++++++---- 1 files changed, 26 insertions(+), 4 deletions(-) diff --git a/interface/web/client/client_template_edit.php b/interface/web/client/client_template_edit.php index 6ae4588..bf27959 100644 --- a/interface/web/client/client_template_edit.php +++ b/interface/web/client/client_template_edit.php @@ -52,20 +52,42 @@ class page_action extends tform_actions { + function onBeforeUpdate() { + global $app; + + if(isset($this->dataRecord['template_type'])) { + //* Check if the template_type has been changed + $rec = $app->db->queryOneRecord("SELECT template_type from client_template WHERE template_id = ".$this->id); + if($rec['template_type'] != $this->dataRecord['template_type']) { + //* Add a error message and switch back to old server + $app->tform->errorMessage .= $app->lng('The template type can not be changed.'); + $this->dataRecord['template_type'] = $rec['template_type']; + } + unset($rec); + } + } + + /* This function is called automatically right after the data was successful updated in the database. */ function onAfterUpdate() { global $app; - + /* * the template has changed. apply the new data to all clients */ - $sql = "SELECT client_id FROM client WHERE template_master = " . $this->id; + if ($this->dataRecord["template_type"] == 'm'){ + $sql = "SELECT client_id FROM client WHERE template_master = " . $this->id; + } else { + $sql = "SELECT client_id FROM client WHERE template_additional LIKE '%/" . $this->id . '/%"'; + } $clients = $app->db->queryAllRecords($sql); - foreach ($clients as $client){ - applyClientTemplates($client['client_id']); + if (is_array($clients)){ + foreach ($clients as $client){ + applyClientTemplates($client['client_id']); + } } } } -- Gitblit v1.9.1