From 621a74653da615f82bc81a9f3c63ed4cb0f9bb4a Mon Sep 17 00:00:00 2001 From: Joshua Fernandes Date: Sat, 22 Apr 2017 16:54:47 +0530 Subject: [PATCH] requested changes --- application/controllers/Config.php | 1 + application/controllers/Giftcards.php | 17 ++++++++++---- application/controllers/Sales.php | 6 +++-- application/language/ar-EG/config_lang.php | 3 +++ application/language/de-CH/config_lang.php | 3 +++ application/language/de/config_lang.php | 3 +++ application/language/en/config_lang.php | 3 +++ application/language/es/config_lang.php | 3 +++ application/language/fr/config_lang.php | 1 + application/language/hr-HR/config_lang.php | 3 +++ application/language/hu-HU/config_lang.php | 3 +++ application/language/id/config_lang.php | 3 +++ application/language/nl-BE/config_lang.php | 1 + application/language/pt-BR/config_lang.php | 2 ++ application/language/ru/config_lang.php | 3 +++ application/language/sv/config_lang.php | 3 +++ application/language/th/config_lang.php | 3 +++ application/language/tr/config_lang.php | 3 +++ application/language/zh/config_lang.php | 3 +++ application/views/configs/general_config.php | 20 ++++++++++++++++ application/views/giftcards/form.php | 24 +++++++++++++++++--- database/3.0.2_to_3.1.0.sql | 8 +++++++ database/giftcard_random.sql | 3 --- database/tables.sql | 5 ++-- 24 files changed, 112 insertions(+), 15 deletions(-) delete mode 100644 database/giftcard_random.sql diff --git a/application/controllers/Config.php b/application/controllers/Config.php index 708d86c93..e6d05cf8d 100644 --- a/application/controllers/Config.php +++ b/application/controllers/Config.php @@ -271,6 +271,7 @@ class Config extends Secure_Controller 'custom9_name' => $this->input->post('custom9_name'), 'custom10_name' => $this->input->post('custom10_name'), 'statistics' => $this->input->post('statistics') != NULL, + 'giftcard_number' => $this->input->post('giftcard_number'), ); $result = $this->Appconfig->batch_save($batch_save_data); diff --git a/application/controllers/Giftcards.php b/application/controllers/Giftcards.php index 61b23e999..16e871702 100644 --- a/application/controllers/Giftcards.php +++ b/application/controllers/Giftcards.php @@ -12,7 +12,8 @@ class Giftcards extends Secure_Controller public function index() { $data['table_headers'] = $this->xss_clean(get_giftcards_manage_table_headers()); - + var_dump($this->Giftcard->get_max_number()); + exit(); $this->load->view('giftcards/manage', $data); } @@ -64,7 +65,12 @@ class Giftcards extends Secure_Controller $data['selected_person_name'] = ($giftcard_id > 0 && isset($giftcard_info->person_id)) ? $giftcard_info->first_name . ' ' . $giftcard_info->last_name : ''; $data['selected_person_id'] = $giftcard_info->person_id; - $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : ''; + if($this->config->item('giftcard_number') == "random"){ + $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : ''; + } + else{ + $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : $this->Giftcard->get_max_number()->giftcard_number + 1; + } $data['giftcard_id'] = $giftcard_id; $data['giftcard_value'] = $giftcard_info->value; @@ -75,11 +81,12 @@ class Giftcards extends Secure_Controller public function save($giftcard_id = -1) { - if($giftcard_id == -1): + if($giftcard_id == -1 && trim($this->input->post('giftcard_number')) == ''){ $giftcard_number = $this->Giftcard->generate_unique_giftcard_name($this->input->post('value')); - else: + } + else{ $giftcard_number = $this->input->post('giftcard_number'); - endif; + } $giftcard_data = array( 'record_time' => date('Y-m-d H:i:s'), 'giftcard_number' => $giftcard_number, diff --git a/application/controllers/Sales.php b/application/controllers/Sales.php index 9814999f5..00c3c8024 100644 --- a/application/controllers/Sales.php +++ b/application/controllers/Sales.php @@ -197,10 +197,12 @@ class Sales extends Secure_Controller $data = array(); $payment_type = $this->input->post('payment_type'); - if($payment_type != $this->lang->line('sales_giftcard')) + if($payment_type != $this->lang->line('sales_giftcard')){ $this->form_validation->set_rules('amount_tendered', 'lang:sales_amount_tendered', 'trim|required|callback_numeric'); - else + } + else{ $this->form_validation->set_rules('amount_tendered', 'lang:sales_amount_tendered', 'trim|required'); + } if($this->form_validation->run() == FALSE) { if($payment_type == $this->lang->line('sales_giftcard')) diff --git a/application/language/ar-EG/config_lang.php b/application/language/ar-EG/config_lang.php index cd1aa0e3a..ca8ecd725 100644 --- a/application/language/ar-EG/config_lang.php +++ b/application/language/ar-EG/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "فاصل الاف"; $lang["config_timezone"] = "المنطقة الزمنية"; $lang["config_top"] = "علوى"; $lang["config_website"] = "موقع الشركة"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/de-CH/config_lang.php b/application/language/de-CH/config_lang.php index 10ea8b090..838c1a38c 100644 --- a/application/language/de-CH/config_lang.php +++ b/application/language/de-CH/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Tausendertrennzeichen"; $lang["config_timezone"] = "Zeitzone"; $lang["config_top"] = "Top"; $lang["config_website"] = "Website"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/de/config_lang.php b/application/language/de/config_lang.php index 70fa91ac5..ef497031d 100644 --- a/application/language/de/config_lang.php +++ b/application/language/de/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Tausendertrennzeichen"; $lang["config_timezone"] = "Zeitzone"; $lang["config_top"] = "Top"; $lang["config_website"] = "Website"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/en/config_lang.php b/application/language/en/config_lang.php index 35537e98b..3c9cfd181 100644 --- a/application/language/en/config_lang.php +++ b/application/language/en/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Thousands Separator"; $lang["config_timezone"] = "Timezone"; $lang["config_top"] = "Top"; $lang["config_website"] = "Website"; +$lang["config_giftcard_number"] = "Gift Card Number"; +$lang["config_giftcard_series"] = "Generate in Series"; +$lang["config_giftcard_random"] = "Generate Random"; \ No newline at end of file diff --git a/application/language/es/config_lang.php b/application/language/es/config_lang.php index caa5a9c20..28be18bc6 100644 --- a/application/language/es/config_lang.php +++ b/application/language/es/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Separador de miles"; $lang["config_timezone"] = "Zona Horaria"; $lang["config_top"] = "Arriba"; $lang["config_website"] = "Sitio Web"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/fr/config_lang.php b/application/language/fr/config_lang.php index f0dafb2c9..499b3c3cc 100644 --- a/application/language/fr/config_lang.php +++ b/application/language/fr/config_lang.php @@ -219,3 +219,4 @@ $lang["config_thousands_separator"] = "Thousands Separator"; $lang["config_timezone"] = "Fuseau Horaire"; $lang["config_top"] = "Top"; $lang["config_website"] = "Site-web"; +$lang["config_giftcard_number"] = ""; \ No newline at end of file diff --git a/application/language/hr-HR/config_lang.php b/application/language/hr-HR/config_lang.php index afe64b4e6..56fad0935 100644 --- a/application/language/hr-HR/config_lang.php +++ b/application/language/hr-HR/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Razdjelnik za tisućice"; $lang["config_timezone"] = "Vremenska zona"; $lang["config_top"] = "Top"; $lang["config_website"] = "web strana"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/hu-HU/config_lang.php b/application/language/hu-HU/config_lang.php index 7265ae24f..f74029809 100644 --- a/application/language/hu-HU/config_lang.php +++ b/application/language/hu-HU/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Ezres elválasztó"; $lang["config_timezone"] = "Időzóna"; $lang["config_top"] = "Felül"; $lang["config_website"] = "Weboldal"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/id/config_lang.php b/application/language/id/config_lang.php index d277e34fb..34f580878 100644 --- a/application/language/id/config_lang.php +++ b/application/language/id/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Pemisah Ribuan"; $lang["config_timezone"] = "Zona Waktu"; $lang["config_top"] = "Atas"; $lang["config_website"] = "Situs Perusahaan"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/nl-BE/config_lang.php b/application/language/nl-BE/config_lang.php index 02ec92d5d..4221ec4b0 100755 --- a/application/language/nl-BE/config_lang.php +++ b/application/language/nl-BE/config_lang.php @@ -219,3 +219,4 @@ $lang["config_thousands_separator"] = "duizenden Separator"; $lang["config_timezone"] = "Tijdzone"; $lang["config_top"] = "Top"; $lang["config_website"] = "Website"; +$lang["config_giftcard_number"] = ""; \ No newline at end of file diff --git a/application/language/pt-BR/config_lang.php b/application/language/pt-BR/config_lang.php index 805e5ce25..1a2311b7b 100644 --- a/application/language/pt-BR/config_lang.php +++ b/application/language/pt-BR/config_lang.php @@ -219,3 +219,5 @@ $lang["config_thousands_separator"] = "Separador de milhar"; $lang["config_timezone"] = "Fuso horário"; $lang["config_top"] = "Topo"; $lang["config_website"] = "Site da internet"; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/ru/config_lang.php b/application/language/ru/config_lang.php index 9f8bbb344..9306d4c85 100644 --- a/application/language/ru/config_lang.php +++ b/application/language/ru/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Thousands Separator"; $lang["config_timezone"] = "Часовой пояс"; $lang["config_top"] = "Top"; $lang["config_website"] = "Веб-сайт"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/sv/config_lang.php b/application/language/sv/config_lang.php index 009e34bbf..97bcbedc4 100644 --- a/application/language/sv/config_lang.php +++ b/application/language/sv/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = ""; $lang["config_timezone"] = ""; $lang["config_top"] = ""; $lang["config_website"] = ""; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/th/config_lang.php b/application/language/th/config_lang.php index d303fdb48..fa4942f7a 100644 --- a/application/language/th/config_lang.php +++ b/application/language/th/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "ตัวคั่นหลักพั $lang["config_timezone"] = "โซนเวลา"; $lang["config_top"] = "ด้านบน"; $lang["config_website"] = "เว็บไซต์"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/tr/config_lang.php b/application/language/tr/config_lang.php index 0ba3883af..f1ed870ec 100644 --- a/application/language/tr/config_lang.php +++ b/application/language/tr/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Thousands Separator"; $lang["config_timezone"] = "Saat Dilimi"; $lang["config_top"] = "Üst"; $lang["config_website"] = "Website"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/language/zh/config_lang.php b/application/language/zh/config_lang.php index a8ebb1965..501e9020a 100755 --- a/application/language/zh/config_lang.php +++ b/application/language/zh/config_lang.php @@ -219,3 +219,6 @@ $lang["config_thousands_separator"] = "Thousands Separator"; $lang["config_timezone"] = "時區"; $lang["config_top"] = "Top"; $lang["config_website"] = "網站"; +$lang["config_giftcard_number"] = ""; +$lang["config_giftcard_series"] = ""; +$lang["config_giftcard_random"] = ""; \ No newline at end of file diff --git a/application/views/configs/general_config.php b/application/views/configs/general_config.php index 49f99b886..b8a3405c3 100644 --- a/application/views/configs/general_config.php +++ b/application/views/configs/general_config.php @@ -147,6 +147,26 @@ +
+ lang->line('config_giftcard_number'), 'giftcard_number', array('class' => 'control-label col-xs-2')); ?> +
+ + +
+
+
lang->line('config_statistics'), 'statistics', array('class' => 'control-label col-xs-2')); ?>
diff --git a/application/views/giftcards/form.php b/application/views/giftcards/form.php index 0bc575f0b..210927c79 100644 --- a/application/views/giftcards/form.php +++ b/application/views/giftcards/form.php @@ -17,9 +17,14 @@
- + config->item('giftcard_number') == "series"){ + $class = " required"; + } + ?>
- lang->line('giftcards_giftcard_number'), 'name', array('class'=>'control-label col-xs-3')); ?> + lang->line('giftcards_giftcard_number'), 'name', array('class'=>'control-label col-xs-3'.$class)); ?>
'giftcard_number', @@ -29,7 +34,6 @@ );?>
-
lang->line('giftcards_card_value'), 'name', array('class'=>'required control-label col-xs-3')); ?> @@ -102,6 +106,13 @@ $(document).ready(function() }, rules: { + config->item('giftcard_number') == "series"){ ?> + giftcard_number: + { + required:true, + number:true + }, + value: { required:true, @@ -110,6 +121,13 @@ $(document).ready(function() }, messages: { + config->item('giftcard_number') == "series"){ ?> + giftcard_number: + { + required:"lang->line('giftcards_number_required'); ?>", + number:"lang->line('giftcards_number'); ?>" + }, + value: { required:"lang->line('giftcards_value_required'); ?>", diff --git a/database/3.0.2_to_3.1.0.sql b/database/3.0.2_to_3.1.0.sql index ec9465759..fc07c4509 100644 --- a/database/3.0.2_to_3.1.0.sql +++ b/database/3.0.2_to_3.1.0.sql @@ -216,3 +216,11 @@ ALTER TABLE `ospos_people` INSERT INTO `ospos_app_config` (`key`, `value`) VALUES ('financial_year','1'); + +-- alter giftcard field number to be varchar + +ALTER TABLE `ospos_giftcards` CHANGE `giftcard_number` `giftcard_number` VARCHAR(255) NULL; + +-- add support for select between gitcard number series or random + +INSERT INTO `ospos_app_config` (`key`, `value`) VALUES ('giftcard_number', 'series'); \ No newline at end of file diff --git a/database/giftcard_random.sql b/database/giftcard_random.sql deleted file mode 100644 index d210f282c..000000000 --- a/database/giftcard_random.sql +++ /dev/null @@ -1,3 +0,0 @@ --- alter giftcard field number to be varchar - -ALTER TABLE `ospos_giftcards` CHANGE `giftcard_number` `giftcard_number` VARCHAR(255) NULL; \ No newline at end of file diff --git a/database/tables.sql b/database/tables.sql index fe99ce183..0f007fe9a 100644 --- a/database/tables.sql +++ b/database/tables.sql @@ -94,7 +94,8 @@ INSERT INTO `ospos_app_config` (`key`, `value`) VALUES ('customer_reward_enable',''), ('default_origin_tax_code', ''), ('cash_decimals', '2'), -('financial_year','1'); +('financial_year','1'), +('giftcard_number', 'series'); -- -------------------------------------------------------- @@ -154,7 +155,7 @@ INSERT INTO `ospos_employees` (`username`, `password`, `person_id`, `deleted`, ` CREATE TABLE `ospos_giftcards` ( `record_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `giftcard_id` int(11) NOT NULL AUTO_INCREMENT, - `giftcard_number` int(10) NOT NULL, + `giftcard_number` VARCHAR(255) NULL, `value` decimal(15,2) NOT NULL, `deleted` int(1) NOT NULL DEFAULT '0', `person_id` INT(10) DEFAULT NULL,