From ad955792a8ade5c0015aa3d68f86b1035c1acc31 Mon Sep 17 00:00:00 2001 From: Marius Cramer <m.cramer@pixcept.de> Date: Wed, 22 Jan 2014 11:30:52 -0500 Subject: [PATCH] Fixed bug from previous commit --- interface/web/client/client_edit.php | 76 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 76 insertions(+), 0 deletions(-) diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php index efbf8ab..2e4f943 100644 --- a/interface/web/client/client_edit.php +++ b/interface/web/client/client_edit.php @@ -92,6 +92,11 @@ } } } + + //* Resellers shall not be able to create another reseller + if($_SESSION["s"]["user"]["typ"] == 'user') { + $this->dataRecord['limit_client'] = 0; + } if($this->id != 0) { $this->oldTemplatesAssigned = $app->db->queryAllRecords('SELECT * FROM `client_template_assigned` WHERE `client_id` = ' . $this->id); @@ -171,7 +176,51 @@ $app->tpl->setVar('template_additional_list', $text); $app->tpl->setVar('app_module', 'client'); + + //* Set the 'customer no' default value + if($this->id == 0) { + + if($app->auth->is_admin()) { + //* Logged in User is admin + //* get the system config + $app->uses('getconf'); + $system_config = $app->getconf->get_global_config(); + if($system_config['misc']['customer_no_template'] != '') { + + //* Set customer no default + $customer_no = $app->functions->intval($system_config['misc']['customer_no_start']+$system_config['misc']['customer_no_counter']); + $customer_no_string = str_replace('[CUSTOMER_NO]',$customer_no,$system_config['misc']['customer_no_template']); + $app->tpl->setVar('customer_no',$customer_no_string); + + //* save new counter value + /* + $system_config['misc']['customer_no_counter']++; + $system_config_str = $app->ini_parser->get_ini_string($system_config); + $app->db->datalogUpdate('sys_ini', "config = '".$app->db->quote($system_config_str)."'", 'sysini_id', 1); + */ + } + } else { + //* Logged in user must be a reseller + //* get the record of the reseller + $client_group_id = $app->functions->intval($_SESSION["s"]["user"]["default_group"]); + $reseller = $app->db->queryOneRecord("SELECT client.client_id, client.customer_no_template, client.customer_no_counter, client.customer_no_start FROM sys_group,client WHERE client.client_id = sys_group.client_id and sys_group.groupid = ".$client_group_id); + + if($reseller['customer_no_template'] != '') { + //* Set customer no default + $customer_no = $app->functions->intval($reseller['customer_no_start']+$reseller['customer_no_counter']); + $customer_no_string = str_replace('[CUSTOMER_NO]',$customer_no,$reseller['customer_no_template']); + $app->tpl->setVar('customer_no',$customer_no_string); + + //* save new counter value + /* + $customer_no_counter = $app->functions->intval($reseller['customer_no_counter']+1); + $app->db->query("UPDATE client SET customer_no_counter = $customer_no_counter WHERE client_id = ".$app->functions->intval($reseller['client_id'])); + */ + } + } + } + parent::onShowEnd(); } @@ -232,6 +281,33 @@ $app->uses('client_templates'); $app->client_templates->update_client_templates($this->id, $this->_template_additional); } + + if($this->dataRecord['customer_no'] == $this->dataRecord['customer_no_org']) { + if($app->auth->is_admin()) { + //* Logged in User is admin + //* get the system config + $app->uses('getconf'); + $system_config = $app->getconf->get_global_config(); + if($system_config['misc']['customer_no_template'] != '') { + + //* save new counter value + $system_config['misc']['customer_no_counter']++; + $system_config_str = $app->ini_parser->get_ini_string($system_config); + $app->db->datalogUpdate('sys_ini', "config = '".$app->db->quote($system_config_str)."'", 'sysini_id', 1); + } + } else { + //* Logged in user must be a reseller + //* get the record of the reseller + $client_group_id = $app->functions->intval($_SESSION["s"]["user"]["default_group"]); + $reseller = $app->db->queryOneRecord("SELECT client.client_id, client.customer_no_template, client.customer_no_counter, client.customer_no_start FROM sys_group,client WHERE client.client_id = sys_group.client_id and sys_group.groupid = ".$client_group_id); + + if($reseller['customer_no_template'] != '') { + //* save new counter value + $customer_no_counter = $app->functions->intval($reseller['customer_no_counter']+1); + $app->db->query("UPDATE client SET customer_no_counter = $customer_no_counter WHERE client_id = ".$app->functions->intval($reseller['client_id'])); + } + } + } parent::onAfterInsert(); } -- Gitblit v1.9.1