diff --git a/application/controllers/Config.php b/application/controllers/Config.php index e7a2cf7ac..483090e6f 100644 --- a/application/controllers/Config.php +++ b/application/controllers/Config.php @@ -304,7 +304,8 @@ class Config extends Secure_Controller 'tax_decimals' => $this->input->post('tax_decimals'), 'quantity_decimals' => $this->input->post('quantity_decimals'), 'country_codes' => $this->input->post('country_codes'), - 'payment_options_order' => $this->input->post('payment_options_order') + 'payment_options_order' => $this->input->post('payment_options_order'), + 'date_or_time_format' => $this->input->post('date_or_time_format') ); $result = $this->Appconfig->batch_save($batch_save_data); diff --git a/application/controllers/Login.php b/application/controllers/Login.php index cdf5f928b..a463ac674 100644 --- a/application/controllers/Login.php +++ b/application/controllers/Login.php @@ -40,6 +40,7 @@ class Login extends CI_Controller $this->tracking_lib->track_event('Stats', 'Tax Decimals', $this->config->item('tax_decimals')); $this->tracking_lib->track_event('Stats', 'Quantity Decimals', $this->config->item('quantity_decimals')); $this->tracking_lib->track_event('Stats', 'Invoice Enable', $this->config->item('invoice_enable')); + $this->tracking_lib->track_event('Stats', 'Date or Time Format', $this->config->item('date_or_time_format')); } redirect('home'); diff --git a/application/controllers/Reports.php b/application/controllers/Reports.php index 6b6f4724d..6ee6b280b 100644 --- a/application/controllers/Reports.php +++ b/application/controllers/Reports.php @@ -64,7 +64,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_sales_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -100,7 +100,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_categories_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -136,7 +136,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_customers_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -172,7 +172,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_suppliers_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -208,7 +208,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_items_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -244,7 +244,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_employees_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -278,7 +278,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_taxes_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -309,7 +309,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_discounts_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -341,7 +341,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_payments_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $this->xss_clean($model->getDataColumns()), 'data' => $tabular_data, 'summary_data' => $summary @@ -409,7 +409,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_sales_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/line', 'labels_1' => $labels, 'series_data_1' => $series, @@ -445,7 +445,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_items_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/hbar', 'labels_1' => $labels, 'series_data_1' => $series, @@ -481,7 +481,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_categories_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/pie', 'labels_1' => $labels, 'series_data_1' => $series, @@ -515,7 +515,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_suppliers_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/pie', 'labels_1' => $labels, 'series_data_1' => $series, @@ -549,7 +549,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_employees_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/pie', 'labels_1' => $labels, 'series_data_1' => $series, @@ -583,7 +583,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_taxes_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/pie', 'labels_1' => $labels, 'series_data_1' => $series, @@ -617,7 +617,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_customers_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/hbar', 'labels_1' => $labels, 'series_data_1' => $series, @@ -653,7 +653,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_discounts_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/bar', 'labels_1' => $labels, 'series_data_1' => $series, @@ -689,7 +689,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_payments_summary_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'chart_type' => 'reports/graphs/pie', 'labels_1' => $labels, 'series_data_1' => $series, @@ -754,7 +754,7 @@ class Reports extends Secure_Controller $customer_info = $this->Customer->get_info($customer_id); $data = array( 'title' => $this->xss_clean($customer_info->first_name . ' ' . $customer_info->last_name . ' ' . $this->lang->line('reports_report')), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $headers, 'summary_data' => $summary_data, 'details_data' => $details_data, @@ -818,7 +818,7 @@ class Reports extends Secure_Controller $employee_info = $this->Employee->get_info($employee_id); $data = array( 'title' => $this->xss_clean($employee_info->first_name . ' ' . $employee_info->last_name . ' ' . $this->lang->line('reports_report')), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $headers, 'summary_data' => $summary_data, 'details_data' => $details_data, @@ -883,7 +883,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $discount . '% ' . $this->lang->line('reports_discount') . ' ' . $this->lang->line('reports_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $headers, 'summary_data' => $summary_data, 'details_data' => $details_data, @@ -975,7 +975,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_detailed_sales_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $headers, 'editable' => 'sales', 'summary_data' => $summary_data, @@ -1062,7 +1062,7 @@ class Reports extends Secure_Controller $data = array( 'title' => $this->lang->line('reports_detailed_receivings_report'), - 'subtitle' => date($this->config->item('dateformat'), strtotime($start_date)) . '-' . date($this->config->item('dateformat'), strtotime($end_date)), + 'subtitle' => $this->_get_subtitle_report(array('start_date' => $start_date, 'end_date' => $end_date)), 'headers' => $headers, 'editable' => 'receivings', 'summary_data' => $summary_data, @@ -1154,5 +1154,21 @@ class Reports extends Secure_Controller $this->load->view('reports/tabular', $data); } + // Returns subtitle for the reports + private function _get_subtitle_report($inputs) + { + $subtitle = ''; + + if(empty($this->config->item('filter_datetime_format'))) + { + $subtitle .= date($this->config->item('dateformat'), strtotime($inputs['start_date'])) . ' - ' .date($this->config->item('dateformat'), strtotime($inputs['end_date'])); + } + else + { + $subtitle .= date($this->config->item('dateformat').' '.$this->config->item('timeformat'), strtotime(rawurldecode($inputs['start_date']))) . ' - ' . date($this->config->item('dateformat').' '.$this->config->item('timeformat'), strtotime(rawurldecode($inputs['end_date']))); + } + + return $subtitle; + } } ?> \ No newline at end of file diff --git a/application/models/Item.php b/application/models/Item.php index eb13a5842..5faaf6c65 100644 --- a/application/models/Item.php +++ b/application/models/Item.php @@ -70,7 +70,14 @@ class Item extends CI_Model $this->db->where('location_id', $filters['stock_location_id']); } - $this->db->where('DATE_FORMAT(trans_date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + if(empty($this->config->item('date_or_time_format'))) + { + $this->db->where('DATE_FORMAT(trans_date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $this->db->where('trans_date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } if(!empty($search)) { diff --git a/application/models/Receiving.php b/application/models/Receiving.php index 4b8b9145e..417fb721f 100644 --- a/application/models/Receiving.php +++ b/application/models/Receiving.php @@ -227,7 +227,14 @@ class Receiving extends CI_Model { if(empty($inputs['receiving_id'])) { - $where = 'WHERE DATE(receiving_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + if(empty($this->config->item('date_or_time_format'))) + { + $where = 'WHERE DATE(receiving_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where = 'WHERE receiving_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } } else { @@ -235,7 +242,7 @@ class Receiving extends CI_Model } $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->dbprefix('receivings_items_temp') . - ' (INDEX(receiving_date), INDEX(receiving_id)) + ' (INDEX(receiving_date), INDEX(receiving_time), INDEX(receiving_id)) ( SELECT DATE(receiving_time) AS receiving_date, diff --git a/application/models/Sale.php b/application/models/Sale.php index 581941ecd..39cfb3d28 100644 --- a/application/models/Sale.php +++ b/application/models/Sale.php @@ -98,6 +98,15 @@ class Sale extends CI_Model */ public function search($search, $filters, $rows = 0, $limit_from = 0, $sort = 'sale_date', $order = 'desc') { + $where = ''; + if (empty($this->config->item('date_or_time_format'))) + { + $where .= 'WHERE DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) . ' '; + } + else + { + $where .= 'WHERE sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date'])) . ' '; + } // NOTE: temporary tables are created to speed up searches due to the fact that are ortogonal to the main query // create a temporary table to contain all the payments per sale item $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->dbprefix('sales_payments_temp') . @@ -109,7 +118,7 @@ class Sale extends CI_Model FROM ' . $this->db->dbprefix('sales_payments') . ' AS payments INNER JOIN ' . $this->db->dbprefix('sales') . ' AS sales ON sales.sale_id = payments.sale_id - WHERE DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) . ' + ' . $where . ' GROUP BY sale_id )' ); @@ -126,7 +135,7 @@ class Sale extends CI_Model ON sales.sale_id = sales_items_taxes.sale_id INNER JOIN ' . $this->db->dbprefix('sales_items') . ' AS sales_items ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line - WHERE DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) . ' + ' . $where . ' GROUP BY sales_items_taxes.sale_id, sales_items_taxes.item_id )' ); @@ -176,7 +185,14 @@ class Sale extends CI_Model $this->db->join('sales_payments_temp AS payments', 'sales.sale_id = payments.sale_id', 'left outer'); $this->db->join('sales_items_taxes_temp AS sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id', 'left outer'); - $this->db->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + if (empty($this->config->item('date_or_time_format'))) + { + $this->db->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $this->db->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } if(!empty($search)) { @@ -250,7 +266,14 @@ class Sale extends CI_Model $this->db->join('people AS customer_p', 'sales.customer_id = customer_p.person_id', 'left'); $this->db->join('customers AS customer', 'sales.customer_id = customer.person_id', 'left'); - $this->db->where('DATE(sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + if (empty($this->config->item('date_or_time_format'))) + { + $this->db->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $this->db->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } if(!empty($search)) { @@ -735,7 +758,14 @@ class Sale extends CI_Model if(empty($inputs['sale_id'])) { - $where = 'WHERE DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + if(empty($this->config->item('date_or_time_format'))) + { + $where = 'WHERE DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where = 'WHERE sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } } else { @@ -760,7 +790,7 @@ class Sale extends CI_Model ); $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->dbprefix('sales_items_temp') . - ' (INDEX(sale_date), INDEX(sale_id)) + ' (INDEX(sale_date), INDEX(sale_time), INDEX(sale_id)) ( SELECT DATE(sales.sale_time) AS sale_date, diff --git a/application/models/reports/Summary_report.php b/application/models/reports/Summary_report.php index 1cb985372..0c59ea55e 100644 --- a/application/models/reports/Summary_report.php +++ b/application/models/reports/Summary_report.php @@ -17,6 +17,16 @@ abstract class Summary_report extends Report private function _common_select(array $inputs) { + $where = ''; + + if(empty($this->config->item('date_or_time_format'))) + { + $where .= 'WHERE DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where .= 'WHERE sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } // create a temporary table to contain all the sum of taxes per sale item $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->dbprefix('sales_items_taxes_temp') . ' (INDEX(sale_id), INDEX(item_id)) @@ -29,7 +39,7 @@ abstract class Summary_report extends Report ON sales.sale_id = sales_items_taxes.sale_id INNER JOIN ' . $this->db->dbprefix('sales_items') . ' AS sales_items ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line - WHERE DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']) . ' + ' . $where . ' GROUP BY sales_items_taxes.sale_id, sales_items_taxes.item_id )' ); @@ -69,7 +79,14 @@ abstract class Summary_report extends Report private function _common_where(array $inputs) { - $this->db->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + if(empty($this->config->item('date_or_time_format'))) + { + $this->db->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $this->db->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } if($inputs['location_id'] != 'all') { diff --git a/application/models/reports/Summary_taxes.php b/application/models/reports/Summary_taxes.php index ff869cf03..7dbafe6f9 100644 --- a/application/models/reports/Summary_taxes.php +++ b/application/models/reports/Summary_taxes.php @@ -21,20 +21,29 @@ class Summary_taxes extends Summary_report public function getData(array $inputs) { - $quantity_cond = ''; + $where = ''; + + if(empty($this->config->item('date_or_time_format'))) + { + $where .= 'WHERE DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where .= 'WHERE sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } if($inputs['sale_type'] == 'sales') { - $quantity_cond = 'AND quantity_purchased > 0'; + $where = 'AND quantity_purchased > 0'; } elseif($inputs['sale_type'] == 'returns') { - $quantity_cond = 'AND quantity_purchased < 0'; + $where = 'AND quantity_purchased < 0'; } if($inputs['location_id'] != 'all') { - $quantity_cond .= 'AND item_location = '. $this->db->escape($inputs['location_id']); + $where .= 'AND item_location = '. $this->db->escape($inputs['location_id']); } if($this->config->item('tax_included')) @@ -64,7 +73,7 @@ class Summary_taxes extends Summary_report ON sales_items.sale_id = sales.sale_id LEFT OUTER JOIN ' . $this->db->dbprefix('sales_items_taxes') . ' AS sales_items_taxes ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line - WHERE DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']) . " $quantity_cond + ' . " $where ) AS temp_taxes GROUP BY percent" ); diff --git a/application/views/configs/locale_config.php b/application/views/configs/locale_config.php index 79f811261..c1f3fe537 100644 --- a/application/views/configs/locale_config.php +++ b/application/views/configs/locale_config.php @@ -262,6 +262,17 @@ +