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/tools.inc.php |   30 ++++++++++++++++++++++++++----
 1 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/interface/web/client/tools.inc.php b/interface/web/client/tools.inc.php
index d98392f..d66afc1 100644
--- a/interface/web/client/tools.inc.php
+++ b/interface/web/client/tools.inc.php
@@ -28,13 +28,14 @@
 */
 
 function applyClientTemplates($clientId){
-	global $app;
+	global $app,$page;
 	/*
 	 * Get the master-template for the client
 	 */
-	$sql = "SELECT template_master FROM client WHERE client_id = " . intval($clientId);
+	$sql = "SELECT template_master, template_additional FROM client WHERE client_id = " . intval($clientId);
 	$record = $app->db->queryOneRecord($sql);
 	$masterTemplateId = $record['template_master'];
+	$additionalTemplateStr = $record['template_additional'];
 
 	/*
 	 * if the master-Template is custom there is NO changing
@@ -42,13 +43,34 @@
 	if ($masterTemplateId > 0){
 		$sql = "SELECT * FROM client_template WHERE template_id = " . intval($masterTemplateId);
 		$limits = $app->db->queryOneRecord($sql);
+	} else {
+		$limits = $page->dataRecord;
 	}
 
 	/*
-	 * TODO: Process the additional tempaltes here (add them to the limits
+	 * Process the additional tempaltes here (add them to the limits
 	 * if != -1)
-	 * (like $limits['limit_database'] += $limitAdditional)
 	 */
+	$addTpl = explode('/', $additionalTemplateStr);
+	foreach ($addTpl as $item){
+		if (trim($item) != ''){
+			$sql = "SELECT * FROM client_template WHERE template_id = " . intval($item);
+			$addLimits = $app->db->queryOneRecord($sql);
+			/* maybe the template is deleted in the meantime */
+			if (is_array($addLimits)){
+				foreach($addLimits as $k => $v){
+					if ($limits[$k] > -1){
+						if ($v == -1) {
+							$limits[$k] = -1;
+						}
+						else {
+							$limits[$k] += $v;
+						}
+					}
+				}
+			}
+		}
+	}
 
 	/*
 	 * Write all back to the database

--
Gitblit v1.9.1