mirror of
https://github.com/opensourcepos/opensourcepos.git
synced 2026-02-18 14:48:42 -05:00
Refactor Tax Configuration
This commit is contained in:
@@ -15,9 +15,21 @@ class Taxes extends Secure_Controller
|
||||
|
||||
public function index()
|
||||
{
|
||||
$data['tax_codes'] = $this->Tax_code->get_all()->result_array();
|
||||
$data['tax_categories'] = $this->Tax_category->get_all()->result_array();
|
||||
$data['tax_jurisdictions'] = $this->Tax_jurisdiction->get_all()->result_array();
|
||||
$data['tax_codes'] = $this->xss_clean($this->Tax_code->get_all()->result_array());
|
||||
if (count($data['tax_codes']) == 0)
|
||||
{
|
||||
$data['tax_codes'] = $this->Tax_code->get_empty_row();
|
||||
}
|
||||
$data['tax_categories'] = $this->xss_clean($this->Tax_category->get_all()->result_array());
|
||||
if (count($data['tax_categories']) == 0)
|
||||
{
|
||||
$data['tax_categories'] = $this->Tax_category->get_empty_row();
|
||||
}
|
||||
$data['tax_jurisdictions'] = $this->xss_clean($this->Tax_jurisdiction->get_all()->result_array());
|
||||
if (count($data['tax_jurisdictions']) == 0)
|
||||
{
|
||||
$data['tax_jurisdictions'] = $this->Tax_jurisdiction->get_empty_row();
|
||||
}
|
||||
$data['tax_rate_table_headers'] = $this->xss_clean(get_tax_rates_manage_table_headers());
|
||||
$data['tax_categories_table_headers'] = $this->xss_clean(get_tax_categories_table_headers());
|
||||
$data['tax_types'] = $this->tax_lib->get_tax_types();
|
||||
@@ -396,39 +408,19 @@ class Taxes extends Secure_Controller
|
||||
|
||||
public function save_tax_codes()
|
||||
{
|
||||
$array_save= array();
|
||||
$tax_code_id = $this->input->post('tax_code_id');
|
||||
$tax_code = $this->input->post('tax_code');
|
||||
$tax_code_name = $this->input->post('tax_code_name');
|
||||
$tax_code_id = $this->input->post('tax_code_id');
|
||||
$city = $this->input->post('city');
|
||||
$state = $this->input->post('state');
|
||||
|
||||
foreach($this->input->post() as $key => $value)
|
||||
$array_save = array();
|
||||
foreach($tax_code_id as $key=>$val)
|
||||
{
|
||||
if(!(strstr($key, 'tax_code_name_')=== FALSE))
|
||||
{
|
||||
$tax_code_id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$array_save[$tax_code_id]['tax_code_name'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_code_id_') === FALSE))
|
||||
{
|
||||
$tax_code_id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$tax_code_id]['tax_code_id'] = strtoupper($value);
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_code_') === FALSE))
|
||||
{
|
||||
$tax_code_id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$tax_code_id]['tax_code'] = strtoupper($value);
|
||||
}
|
||||
elseif(!(strstr($key, 'city_') === FALSE))
|
||||
{
|
||||
$tax_code_id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$tax_code_id]['city'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'state_') === FALSE))
|
||||
{
|
||||
$tax_code_id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$tax_code_id]['state'] = $value;
|
||||
}
|
||||
$array_save[] = array('tax_code_id'=>$this->xss_clean($val), 'tax_code'=>$this->xss_clean($tax_code[$key]),
|
||||
'tax_code_name'=>$this->xss_clean($tax_code_name[$key]), 'tax_code_id'=>$this->xss_clean($tax_code_id[$key]),
|
||||
'city'=>$this->xss_clean($city[$key]), 'state'=>$this->xss_clean($state[$key]));
|
||||
}
|
||||
|
||||
$success = $this->Tax_code->save_tax_codes($array_save);
|
||||
@@ -441,60 +433,30 @@ class Taxes extends Secure_Controller
|
||||
|
||||
public function save_tax_jurisdictions()
|
||||
{
|
||||
$jurisdiction_id = $this->input->post('jurisdiction_id');
|
||||
$jurisdiction_name = $this->input->post('jurisdiction_name');
|
||||
$tax_group = $this->input->post('tax_group');
|
||||
$tax_type = $this->input->post('tax_type');
|
||||
$reporting_authority = $this->input->post('reporting_authority');
|
||||
$tax_group_sequence = $this->input->post('tax_group_sequence');
|
||||
$cascade_sequence = $this->input->post('cascade_sequence');
|
||||
|
||||
$array_save = array();
|
||||
|
||||
foreach($this->input->post() as $key => $value)
|
||||
foreach($jurisdiction_id as $key => $val)
|
||||
{
|
||||
|
||||
if(!(strstr($key, 'jurisdiction_id_')=== FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$array_save[$id]['jurisdiction_id'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'jurisdiction_name_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['jurisdiction_name'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_type_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['tax_type'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'reporting_authority_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['reporting_authority'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_group_sequence_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['tax_group_sequence'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_group_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['tax_group'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'cascade_sequence_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['cascade_sequence'] = $value;
|
||||
}
|
||||
$array_save[] = array(
|
||||
'jurisdiction_id'=>$this->xss_clean($val),
|
||||
'jurisdiction_name'=>$this->xss_clean($jurisdiction_name[$key]),
|
||||
'tax_group'=>$this->xss_clean($tax_group[$key]),
|
||||
'tax_type'=>$this->xss_clean($tax_type[$key]),
|
||||
'reporting_authority'=>$this->xss_clean($reporting_authority[$key]),
|
||||
'tax_group_sequence'=>$this->xss_clean($tax_group_sequence[$key]),
|
||||
'cascade_sequence'=>$this->xss_clean($cascade_sequence[$key]));
|
||||
}
|
||||
|
||||
$success = $this->Tax_jurisdiction->save_jurisdictions($array_save);
|
||||
|
||||
// if(!empty($array_save))
|
||||
// {
|
||||
// }
|
||||
|
||||
echo json_encode(array(
|
||||
'success' => $success,
|
||||
'message' => $this->lang->line('taxes_tax_jurisdictions_saved_' . ($success ? '' : 'un') . 'successfully')
|
||||
@@ -503,28 +465,18 @@ class Taxes extends Secure_Controller
|
||||
|
||||
public function save_tax_categories()
|
||||
{
|
||||
$tax_category_id = $this->input->post('tax_category_id');
|
||||
$tax_category = $this->input->post('tax_category');
|
||||
$tax_group_sequence = $this->input->post('tax_group_sequence');
|
||||
|
||||
$array_save= array();
|
||||
|
||||
foreach($this->input->post() as $key => $value)
|
||||
foreach($tax_category_id as $key => $val)
|
||||
{
|
||||
// Note that for proper select tax_category_id and tax_category_code must precede tax_category
|
||||
if(!(strstr($key, 'tax_category_id_')=== FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$array_save[$id]['tax_category_id'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_category_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['tax_category'] = $value;
|
||||
}
|
||||
elseif(!(strstr($key, 'tax_group_sequence_') === FALSE))
|
||||
{
|
||||
$id = preg_replace("/.*?_(\d+)$/", "$1", $key);
|
||||
$value = isset($value) ? $value : '';
|
||||
$array_save[$id]['tax_group_sequence'] = $value;
|
||||
}
|
||||
$array_save[] = array(
|
||||
'tax_category_id'=>$this->xss_clean($val),
|
||||
'tax_category'=>$this->xss_clean($tax_category[$key]),
|
||||
'tax_group_sequence'=>$this->xss_clean($tax_group_sequence[$key]));
|
||||
}
|
||||
|
||||
$success = $this->Tax_category->save_categories($array_save);
|
||||
|
||||
@@ -6,6 +6,7 @@ $lang["common_city"] = "City";
|
||||
$lang["common_close"] = "Close";
|
||||
$lang["common_comments"] = "Comments";
|
||||
$lang["common_common"] = "common";
|
||||
$lang["common_correct_errors"] = "Please correct identified errors before saving";
|
||||
$lang["common_confirm_search"] = "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?";
|
||||
$lang["common_country"] = "Country";
|
||||
$lang["common_date"] = "Date";
|
||||
|
||||
@@ -32,10 +32,15 @@ $lang["taxes_tax_categories_saved_successfully"] = "Tax Categories changes saved
|
||||
$lang["taxes_tax_categories_saved_unsuccessfully"] = "Tax Categories changes not saved";
|
||||
$lang["taxes_tax_category"] = "Tax Category";
|
||||
$lang["taxes_tax_category_code"] = "Tax Category Code";
|
||||
$lang["taxes_tax_category_duplicate"] = "Duplicate tax category";
|
||||
$lang["taxes_tax_category_invalid_chars"] = "Invalid characters in tax category name";
|
||||
$lang["taxes_tax_category_name"] = "Tax Category Name";
|
||||
$lang["taxes_tax_category_new"] = "New Tax Category";
|
||||
$lang["taxes_tax_category_required"] = "Tax category is required";
|
||||
$lang["taxes_tax_code"] = "Tax Code";
|
||||
$lang["taxes_tax_code_cannot_be_deleted"] = "Tax Code delete failed";
|
||||
$lang["taxes_tax_code_duplicate"] = "Duplicate tax code";
|
||||
$lang["taxes_tax_code_invalid_chars"] = "Invalid characters in tax code";
|
||||
$lang["taxes_tax_code_name"] = "Tax Code Name";
|
||||
$lang["taxes_tax_code_required"] = "Tax Code is a required field";
|
||||
$lang["taxes_tax_code_successful_deleted"] = "You have successfully deleted Tax Code";
|
||||
@@ -52,11 +57,15 @@ $lang["taxes_tax_group"] = "Tax Group";
|
||||
$lang["taxes_tax_group_sequence"] = "Tax Group Sequence";
|
||||
$lang["taxes_tax_included"] = "Tax included";
|
||||
$lang["taxes_tax_jurisdiction"] = "Tax Jurisdiction";
|
||||
$lang["taxes_tax_jurisdiction_duplicate"] = "Duplicate tax jurisdiction";
|
||||
$lang["taxes_tax_jurisdiction_invalid_chars"] = "Invalid characters in jurisdiction name";
|
||||
$lang["taxes_tax_jurisdiction_required"] = "Tax jurisdiction is required";
|
||||
$lang["taxes_tax_jurisdictions"] = "Tax Jurisdictions";
|
||||
$lang["taxes_tax_jurisdictions_configuration"] = "Tax Jurisdictions Configuration";
|
||||
$lang["taxes_tax_jurisdictions_saved_successfully"] = "Tax Jurisdiction changes saved";
|
||||
$lang["taxes_tax_jurisdictions_saved_unsuccessfully"] = "Tax Jurisdiction changes not saved";
|
||||
$lang["taxes_tax_rate"] = "Tax Rate";
|
||||
$lang["taxes_tax_rate_configuration"] = "Tax Rate Configuration";
|
||||
$lang["taxes_tax_rate_error_adding_updating"] = "Tax Rate add or update failed";
|
||||
$lang["taxes_tax_rate_numeric"] = "Tax Rate must be a number";
|
||||
$lang["taxes_tax_rate_required"] = "Tax Rate is a required field";
|
||||
|
||||
@@ -6,6 +6,7 @@ $lang["common_city"] = "City";
|
||||
$lang["common_close"] = "Close";
|
||||
$lang["common_comments"] = "Comments";
|
||||
$lang["common_common"] = "common";
|
||||
$lang["common_correct_errors"] = "Please correct identified errors before saving";
|
||||
$lang["common_confirm_search"] = "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?";
|
||||
$lang["common_country"] = "Country";
|
||||
$lang["common_date"] = "Date";
|
||||
|
||||
@@ -22,7 +22,7 @@ $lang["taxes_round_half_odd"] = "Half Odd";
|
||||
$lang["taxes_round_half_up"] = "Half Up";
|
||||
$lang["taxes_rounding_code"] = "Rounding Code";
|
||||
$lang["taxes_sales_tax"] = "Sales Tax";
|
||||
$lang["taxes_sales_tax_by_invoice"] = "";
|
||||
$lang["taxes_sales_tax_by_invoice"] = "Sales Tax by Invoice";
|
||||
$lang["taxes_sequence"] = "Seq.";
|
||||
$lang["taxes_state"] = "State";
|
||||
$lang["taxes_successful_deleted"] = "You have successfully deleted";
|
||||
@@ -32,10 +32,15 @@ $lang["taxes_tax_categories_saved_successfully"] = "Tax Categories changes saved
|
||||
$lang["taxes_tax_categories_saved_unsuccessfully"] = "Tax Categories changes not saved";
|
||||
$lang["taxes_tax_category"] = "Tax Category";
|
||||
$lang["taxes_tax_category_code"] = "Tax Category Code";
|
||||
$lang["taxes_tax_category_duplicate"] = "Duplicate tax category";
|
||||
$lang["taxes_tax_category_invalid_chars"] = "Invalid characters in tax category name";
|
||||
$lang["taxes_tax_category_name"] = "Tax Category Name";
|
||||
$lang["taxes_tax_category_new"] = "New Tax Category";
|
||||
$lang["taxes_tax_category_required"] = "Tax category is required";
|
||||
$lang["taxes_tax_code"] = "Tax Code";
|
||||
$lang["taxes_tax_code_cannot_be_deleted"] = "Tax Code delete failed";
|
||||
$lang["taxes_tax_code_duplicate"] = "Duplicate tax code";
|
||||
$lang["taxes_tax_code_invalid_chars"] = "Invalid characters in tax code";
|
||||
$lang["taxes_tax_code_name"] = "Tax Code Name";
|
||||
$lang["taxes_tax_code_required"] = "Tax Code is a required field";
|
||||
$lang["taxes_tax_code_successful_deleted"] = "You have successfully deleted Tax Code";
|
||||
@@ -52,11 +57,15 @@ $lang["taxes_tax_group"] = "Tax Group";
|
||||
$lang["taxes_tax_group_sequence"] = "Tax Group Sequence";
|
||||
$lang["taxes_tax_included"] = "Tax included";
|
||||
$lang["taxes_tax_jurisdiction"] = "Tax Jurisdiction";
|
||||
$lang["taxes_tax_jurisdiction_duplicate"] = "Duplicate tax jurisdiction";
|
||||
$lang["taxes_tax_jurisdiction_invalid_chars"] = "Invalid characters in jurisdiction name";
|
||||
$lang["taxes_tax_jurisdiction_required"] = "Tax jurisdiction is required";
|
||||
$lang["taxes_tax_jurisdictions"] = "Tax Jurisdictions";
|
||||
$lang["taxes_tax_jurisdictions_configuration"] = "Tax Jurisdictions Configuration";
|
||||
$lang["taxes_tax_jurisdictions_saved_successfully"] = "Tax Jurisdiction changes saved";
|
||||
$lang["taxes_tax_jurisdictions_saved_unsuccessfully"] = "Tax Jurisdiction changes not saved";
|
||||
$lang["taxes_tax_rate"] = "Tax Rate";
|
||||
$lang["taxes_tax_rate_configuration"] = "Tax Rate Configuration";
|
||||
$lang["taxes_tax_rate_error_adding_updating"] = "Tax Rate add or update failed";
|
||||
$lang["taxes_tax_rate_numeric"] = "Tax Rate must be a number";
|
||||
$lang["taxes_tax_rate_required"] = "Tax Rate is a required field";
|
||||
|
||||
@@ -29,9 +29,7 @@ CREATE TABLE IF NOT EXISTS `ospos_tax_codes` (
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
|
||||
ALTER TABLE `ospos_customers`
|
||||
ADD COLUMN `tax_id` varchar(32) NOT NULL DEFAULT '' AFTER `taxable`;
|
||||
|
||||
ALTER TABLE `ospos_customers`
|
||||
ADD COLUMN `tax_id` varchar(32) NOT NULL DEFAULT '' AFTER `taxable`,
|
||||
ADD COLUMN `sales_tax_code_id` int(11) DEFAULT NULL AFTER `tax_id`;
|
||||
|
||||
ALTER TABLE `ospos_items`
|
||||
|
||||
@@ -230,6 +230,14 @@ class Tax_category extends CI_Model
|
||||
return $suggestions;
|
||||
}
|
||||
|
||||
public function get_empty_row()
|
||||
{
|
||||
return array('0' => array(
|
||||
'tax_category_id' => -1,
|
||||
'tax_category' => '',
|
||||
'tax_group_sequence' => 0,
|
||||
'deleted' => 0));
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -269,5 +269,15 @@ class Tax_code extends CI_Model
|
||||
return $suggestions;
|
||||
}
|
||||
|
||||
public function get_empty_row()
|
||||
{
|
||||
return array('0' => array(
|
||||
'tax_code_id' => -1,
|
||||
'tax_code' => '',
|
||||
'tax_code_name' => '',
|
||||
'city' => '',
|
||||
'state' => '',
|
||||
'deleted' => 0));
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -210,5 +210,19 @@ class Tax_jurisdiction extends CI_Model
|
||||
|
||||
return $this->db->get();
|
||||
}
|
||||
|
||||
public function get_empty_row()
|
||||
{
|
||||
return array('0' => array(
|
||||
'jurisdiction_id' => -1,
|
||||
'jurisdiction_name' => '',
|
||||
'tax_group' => '',
|
||||
'tax_type' => '1',
|
||||
'reporting_authority' => '',
|
||||
'tax_group_sequence' => 0,
|
||||
'cascade_sequence' => 0,
|
||||
'deleted' => 0));
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -12,9 +12,9 @@ foreach($tax_categories as $key => $category)
|
||||
<?php echo form_label($this->lang->line('taxes_tax_category') . ' ' . $i, 'tax_category_' . $i, array('class' => 'control-label col-xs-2')); ?>
|
||||
<div class='col-xs-3'>
|
||||
<?php $form_data = array(
|
||||
'name' => 'tax_category_' . $i,
|
||||
'name' => 'tax_category[]',
|
||||
'id' => 'tax_category_' . $i,
|
||||
'class' => 'valid_chars form-control input-sm required',
|
||||
'class' => 'valid_chars form-control input-sm',
|
||||
'placeholder' => $this->lang->line('taxes_tax_category_name'),
|
||||
'value' => $tax_category
|
||||
);
|
||||
@@ -23,8 +23,7 @@ foreach($tax_categories as $key => $category)
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name' => 'tax_group_sequence_' . $i,
|
||||
'id' => 'tax_group_sequence_' . $i,
|
||||
'name' => 'tax_group_sequence[]',
|
||||
'class' => 'valid_chars form-control input-sm',
|
||||
'placeholder' => $this->lang->line('taxes_sequence'),
|
||||
'value' => $tax_group_sequence
|
||||
@@ -35,42 +34,8 @@ foreach($tax_categories as $key => $category)
|
||||
<span class="add_tax_category glyphicon glyphicon-plus" style="padding-top: 0.5em;"></span>
|
||||
<span> </span>
|
||||
<span class="remove_tax_category glyphicon glyphicon-minus" style="padding-top: 0.5em;"></span>
|
||||
<?php echo form_hidden('tax_category_id_' . $i, $tax_category_id); ?>
|
||||
<?php echo form_hidden('tax_category_id[]', $tax_category_id); ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
if($i == 0)
|
||||
{
|
||||
?>
|
||||
<div class="form-group form-group-sm" style="display:block;">
|
||||
<?php echo form_label($this->lang->line('taxes_tax_category') . ' 1', 'tax_category_1', array('class' => 'control-label col-xs-2')); ?>
|
||||
<div class='col-xs-3'>
|
||||
<?php $form_data = array(
|
||||
'name' => 'tax_category_1',
|
||||
'id' => 'tax_category_1',
|
||||
'class' => 'valid_chars form-control input-sm required',
|
||||
'placeholder' => $this->lang->line('taxes_tax_category_name'),
|
||||
'value' => ''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name' => 'tax_group_sequence_1',
|
||||
'id' => 'tax_group_sequence_1',
|
||||
'class' => 'valid_chars form-control input-sm',
|
||||
'placeholder' => $this->lang->line('taxes_sequence'),
|
||||
'value' => ''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<span class="add_tax_category glyphicon glyphicon-plus" style="padding-top: 0.5em;"></span>
|
||||
<span> </span>
|
||||
<span class="remove_tax_category glyphicon glyphicon-minus" style="padding-top: 0.5em;"></span>
|
||||
<?php echo form_hidden('tax_category_id_1', '-1') ?>
|
||||
</div>
|
||||
<?php
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -14,9 +14,9 @@ foreach($tax_codes as $tax_code => $tax_code_data)
|
||||
<?php echo form_label($this->lang->line('taxes_tax_code') . ' ' . $i, 'tax_code_' . $i, array('class'=>'control-label col-xs-2')); ?>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_code_' . $i,
|
||||
'name'=>'tax_code[]',
|
||||
'id'=>'tax_code_' . $i,
|
||||
'class'=>'valid_chars text-uppercase form-control input-sm required',
|
||||
'class'=>'valid_chars text-uppercase form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_code'),
|
||||
'value'=>$tax_code
|
||||
);
|
||||
@@ -25,9 +25,8 @@ foreach($tax_codes as $tax_code => $tax_code_data)
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_code_name_' . $i,
|
||||
'id'=>'tax_code_name_' . $i,
|
||||
'class'=>'valid_chars form-control input-sm required',
|
||||
'name'=>'tax_code_name[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_name'),
|
||||
'value'=>$tax_code_name
|
||||
);
|
||||
@@ -36,8 +35,7 @@ foreach($tax_codes as $tax_code => $tax_code_data)
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'city_' . $i,
|
||||
'id'=>'city_' . $i,
|
||||
'name'=>'city[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_city'),
|
||||
'value'=>$city
|
||||
@@ -47,8 +45,7 @@ foreach($tax_codes as $tax_code => $tax_code_data)
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'state_' . $i,
|
||||
'id'=>'state_' . $i,
|
||||
'name'=>'state[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_state'),
|
||||
'value'=>$state
|
||||
@@ -60,64 +57,7 @@ foreach($tax_codes as $tax_code => $tax_code_data)
|
||||
<span class="add_tax_code glyphicon glyphicon-plus" style="padding-top: 0.5em;"></span>
|
||||
<span> </span>
|
||||
<span class="remove_tax_code glyphicon glyphicon-minus" style="padding-top: 0.5em;"></span>
|
||||
<?php echo form_hidden('tax_code_id_' . $i, $tax_code_id); ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
if ($i == 0)
|
||||
{
|
||||
?>
|
||||
<div class="form-group form-group-sm" style="display:block;">
|
||||
<?php echo form_label($this->lang->line('taxes_tax_code') . ' 1', 'tax_code_1', array('class'=>'control-label col-xs-2')); ?>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_code_1',
|
||||
'id'=>'tax_code_1',
|
||||
'class'=>'valid_chars text-uppercase form-control input-sm required',
|
||||
'placeholder'=>$this->lang->line('taxes_code'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_code_name_1',
|
||||
'id'=>'tax_code_name_1',
|
||||
'class'=>'valid_chars form-control input-sm required',
|
||||
'placeholder'=>$this->lang->line('taxes_name'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'city_1',
|
||||
'id'=>'city_1',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_city'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'state_1',
|
||||
'id'=>'state_1',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_state'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
|
||||
<span class="add_tax_code glyphicon glyphicon-plus" style="padding-top: 0.5em;"></span>
|
||||
<span> </span>
|
||||
<span class="remove_tax_code glyphicon glyphicon-minus" style="padding-top: 0.5em;"></span>
|
||||
<?php echo form_hidden('tax_code_id_1', -1); ?>
|
||||
<?php echo form_hidden('tax_code_id[]', $tax_code_id); ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
@@ -16,9 +16,9 @@ foreach($tax_jurisdictions as $tax_jurisdiction => $jurisdiction)
|
||||
<?php echo form_label($this->lang->line('taxes_tax_jurisdiction') . ' ' . $i, 'jurisdiction_name_' . $i, array('class'=>'control-label col-xs-2')); ?>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'jurisdiction_name_' . $i,
|
||||
'name'=>'jurisdiction_name[]',
|
||||
'id'=>'jurisdiction_name_' . $i,
|
||||
'class'=>'valid_chars form-control input-sm required',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_jurisdiction_name'),
|
||||
'value'=>$jurisdiction_name
|
||||
);
|
||||
@@ -28,9 +28,8 @@ foreach($tax_jurisdictions as $tax_jurisdiction => $jurisdiction)
|
||||
|
||||
<div class='col-xs-1'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_group_' . $i,
|
||||
'id'=>'tax_group_' . $i,
|
||||
'class'=>'valid_chars form-control input-sm required',
|
||||
'name'=>'tax_group[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_tax_group'),
|
||||
'value'=>$tax_group
|
||||
);
|
||||
@@ -39,13 +38,12 @@ foreach($tax_jurisdictions as $tax_jurisdiction => $jurisdiction)
|
||||
</div>
|
||||
|
||||
<div class='col-xs-2'>
|
||||
<?php echo form_dropdown('tax_type_' . $i, $tax_types, $tax_type, array('class'=>'form-control')); ?>
|
||||
<?php echo form_dropdown('tax_type[]' . $i, $tax_types, $tax_type, array('class'=>'form-control')); ?>
|
||||
</div>
|
||||
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'reporting_authority_' . $i,
|
||||
'id'=>'reporting_authority_' . $i,
|
||||
'name'=>'reporting_authority[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_reporting_authority'),
|
||||
'value'=>$reporting_authority
|
||||
@@ -56,8 +54,7 @@ foreach($tax_jurisdictions as $tax_jurisdiction => $jurisdiction)
|
||||
|
||||
<div class='col-xs-1'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_group_sequence_' . $i,
|
||||
'id'=>'tax_group_sequence_' . $i,
|
||||
'name'=>'tax_group_sequence[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder' => $this->lang->line('taxes_sequence'),
|
||||
'value'=>$tax_group_sequence
|
||||
@@ -68,8 +65,7 @@ foreach($tax_jurisdictions as $tax_jurisdiction => $jurisdiction)
|
||||
|
||||
<div class='col-xs-1'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'cascade_sequence_' . $i,
|
||||
'id'=>'cascade_sequence_' . $i,
|
||||
'name'=>'cascade_sequence[]',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_cascade_sequence'),
|
||||
'value'=>$cascade_sequence
|
||||
@@ -80,77 +76,7 @@ foreach($tax_jurisdictions as $tax_jurisdiction => $jurisdiction)
|
||||
<span class="add_tax_jurisdiction glyphicon glyphicon-plus" style="padding-top: 0.5em;"></span>
|
||||
<span> </span>
|
||||
<span class="remove_tax_jurisdiction glyphicon glyphicon-minus" style="padding-top: 0.5em;"></span>
|
||||
<?php echo form_hidden('jurisdiction_id_' . $i, $jurisdiction_id); ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
if ($i == 0)
|
||||
{
|
||||
?>
|
||||
<div class="form-group form-group-sm" style="display:block;" >
|
||||
<?php echo form_label($this->lang->line('taxes_tax_jurisdiction') . ' 1', 'jurisdiction_name_1', array('class'=>'control-label col-xs-2')); ?>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'jurisdiction_name_1',
|
||||
'id'=>'jurisdiction_name_1',
|
||||
'class'=>'valid_chars form-control input-sm required',
|
||||
'placeholder'=>$this->lang->line('taxes_jurisdiction_name'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-1'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_group_1',
|
||||
'id'=>'tax_group_1',
|
||||
'class'=>'valid_chars form-control input-sm required',
|
||||
'placeholder'=>$this->lang->line('taxes_tax_group'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php echo form_dropdown('tax_type_1', $tax_types, $default_tax_type, array('class'=>'form-control')); ?>
|
||||
</div>
|
||||
<div class='col-xs-2'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'reporting_authority_1',
|
||||
'id'=>'reporting_authority_1',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_reporting_authority'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-1'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'tax_group_sequence_1',
|
||||
'id'=>'tax_group_sequence_1',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder' => $this->lang->line('taxes_sequence'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<div class='col-xs-1'>
|
||||
<?php $form_data = array(
|
||||
'name'=>'cascade_sequence_1',
|
||||
'id'=>'cascade_sequence_1',
|
||||
'class'=>'valid_chars form-control input-sm',
|
||||
'placeholder'=>$this->lang->line('taxes_cascade_sequence'),
|
||||
'value'=>''
|
||||
);
|
||||
echo form_input($form_data);
|
||||
?>
|
||||
</div>
|
||||
<span class="add_tax_jurisdiction glyphicon glyphicon-plus" style="padding-top: 0.5em;"></span>
|
||||
<span> </span>
|
||||
<span class="remove_tax_jurisdiction glyphicon glyphicon-minus" style="padding-top: 0.5em;"></span>
|
||||
<?php echo form_hidden('jurisdiction_id_1', -1); ?>
|
||||
<?php echo form_hidden('jurisdiction_id[]', $jurisdiction_id); ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
tax_categories_count = 1;
|
||||
}
|
||||
|
||||
var hide_show_remove = function() {
|
||||
var hide_show_remove_tax_category = function() {
|
||||
if ($("input[name*='tax_category']:enabled").length > 1)
|
||||
{
|
||||
$(".remove_tax_category").show();
|
||||
@@ -41,51 +41,59 @@
|
||||
var id = $(this).parent().find('input').attr('id');
|
||||
id = id.replace(/.*?_(\d+)$/g, "$1");
|
||||
|
||||
var previous_tax_category_id_id = 'tax_category_id_' + id;
|
||||
var previous_tax_category_id = 'tax_category_' + id;
|
||||
var previous_default_tax_rate_id = 'default_tax_rate_' + id;
|
||||
var previous_tax_group_sequence_id = 'tax_group_sequence_' + id;
|
||||
var block = $(this).parent().clone(true);
|
||||
var new_block = block.insertAfter($(this).parent());
|
||||
var new_tax_category_id_id = 'tax_category_id_' + ++tax_categories_count;
|
||||
++tax_categories_count;
|
||||
var new_tax_category_id = 'tax_category_' + tax_categories_count;
|
||||
var new_default_tax_rate_id = 'default_tax_rate_' + tax_categories_count;
|
||||
var new_tax_group_sequence_id = 'tax_group_sequence_' + tax_categories_count;
|
||||
|
||||
$(new_block).find('label').html("<?php echo $this->lang->line('taxes_tax_category'); ?> " + tax_categories_count).attr('for', new_tax_category_id).attr('class', 'control-label col-xs-2');
|
||||
$(new_block).find("input[name='"+previous_tax_category_id_id+"']").attr('name', new_tax_category_id_id).val('-1');
|
||||
$(new_block).find("input[id='"+previous_tax_category_id+"']").attr('id', new_tax_category_id).removeAttr('disabled').attr('name', new_tax_category_id).attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_default_tax_rate_id+"']").attr('id', new_default_tax_rate_id).removeAttr('disabled').attr('name', new_default_tax_rate_id).attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_tax_group_sequence_id+"']").attr('id', new_tax_group_sequence_id).removeAttr('disabled').attr('name', new_tax_group_sequence_id).attr('class', 'form-control input-sm').val('');
|
||||
hide_show_remove();
|
||||
$(new_block).find("input[name='tax_category[]']").attr('id', new_tax_category_id).removeAttr('disabled').attr('class', 'form-control input-sm required').val('');
|
||||
$(new_block).find("input[name='tax_group_sequence[]']").removeAttr('disabled').attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='tax_category_id[]']").val('-1');
|
||||
hide_show_remove_tax_category();
|
||||
};
|
||||
|
||||
var remove_tax_category = function() {
|
||||
$(this).parent().remove();
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_category();
|
||||
};
|
||||
|
||||
var init_add_remove_tax_categories = function() {
|
||||
$('.add_tax_category').click(add_tax_category);
|
||||
$('.remove_tax_category').click(remove_tax_category);
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_category();
|
||||
};
|
||||
init_add_remove_tax_categories();
|
||||
|
||||
var duplicate_found = false;
|
||||
|
||||
// run validator once for all fields
|
||||
$.validator.addMethod('tax_category' , function(value, element) {
|
||||
$.validator.addMethod("check4TaxCategoryDups" , function(value, element) {
|
||||
var value_count = 0;
|
||||
$("input[name*='tax_category']").each(function() {
|
||||
$('input[name="tax_category[]"]').each(function() {
|
||||
value_count = $(this).val() == value ? value_count + 1 : value_count;
|
||||
});
|
||||
return value_count < 2;
|
||||
if (value_count > 1) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_category_duplicate'); ?>");
|
||||
|
||||
$.validator.addMethod('valid_chars', function(value, element) {
|
||||
return value.indexOf('_') === -1;
|
||||
$.validator.addMethod('validateTaxCategoryCharacters', function(value, element) {
|
||||
if ((value.indexOf('_') != -1)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_category_invalid_chars'); ?>");
|
||||
|
||||
$.validator.addMethod('requireTaxCategory', function(value, element) {
|
||||
if (value .trim() == '') {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_category_required'); ?>");
|
||||
|
||||
$('#tax_categories_form').validate($.extend(form_support.handler, {
|
||||
submitHandler: function(form) {
|
||||
$(form).ajaxSubmit({
|
||||
@@ -96,41 +104,25 @@
|
||||
dataType: 'json'
|
||||
});
|
||||
},
|
||||
|
||||
errorLabelContainer: "#tax_category_error_message_box",
|
||||
|
||||
rules:
|
||||
{
|
||||
<?php
|
||||
$i = 0;
|
||||
|
||||
foreach($tax_categories as $tax_category=>$tax_category_data)
|
||||
{
|
||||
?>
|
||||
<?php echo 'tax_category_' . ++$i ?>:
|
||||
{
|
||||
required: true,
|
||||
tax_category: true,
|
||||
valid_chars: true
|
||||
invalidHandler: function(event, validator) {
|
||||
$.notify("<?php echo $this->lang->line('common_correct_errors'); ?>");
|
||||
},
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
},
|
||||
|
||||
messages:
|
||||
{
|
||||
<?php
|
||||
$i = 0;
|
||||
|
||||
foreach($tax_categories as $tax_category=>$tax_category_data)
|
||||
{
|
||||
?>
|
||||
<?php echo 'tax_category_' . ++$i ?>: "<?php echo $this->lang->line('taxes_tax_category_required'); ?>",
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
errorLabelContainer: "#tax_category_error_message_box"
|
||||
}));
|
||||
|
||||
<?php
|
||||
$i = 0;
|
||||
foreach($tax_categories as $tax_category=>$tax_category_data)
|
||||
{
|
||||
?>
|
||||
$('<?php echo '#tax_category_' . ++$i ?>').rules( "add", {
|
||||
requireTaxCategory: true,
|
||||
check4TaxCategoryDups: true,
|
||||
validateTaxCategoryCharacters: true
|
||||
});
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
tax_code_count = 1;
|
||||
}
|
||||
|
||||
var hide_show_remove = function() {
|
||||
var hide_show_remove_tax_code = function() {
|
||||
if ($("input[name*='tax_code']:enabled").length > 1)
|
||||
{
|
||||
$(".remove_tax_code").show();
|
||||
@@ -38,59 +38,64 @@
|
||||
};
|
||||
|
||||
var add_tax_code = function() {
|
||||
var id = $(this).parent().find('input').attr('id');
|
||||
var id = $(this).parent().find("input[name='tax_code[]']").attr('id');
|
||||
id = id.replace(/.*?_(\d+)$/g, "$1");
|
||||
var previous_tax_code_id_id = 'tax_code_id_' + id;
|
||||
var previous_tax_code_id = 'tax_code_' + id;
|
||||
var previous_tax_code_name_id = 'tax_code_name_' + id;
|
||||
var previous_city_id = 'city_' + id;
|
||||
var previous_statte_id = 'state_' + id;
|
||||
var block = $(this).parent().clone(true);
|
||||
var new_block = block.insertAfter($(this).parent());
|
||||
++tax_code_count;
|
||||
var new_tax_code_id_id = 'tax_code_id_' + tax_code_count;
|
||||
var new_tax_code_id = 'tax_code_' + tax_code_count;
|
||||
var new_tax_code_name_id = 'tax_code_name_' + tax_code_count;
|
||||
var new_city_id = 'city_' + tax_code_count;
|
||||
var new_state_id = 'state_' + tax_code_count;
|
||||
|
||||
$(new_block).find('label').html("<?php echo $this->lang->line('taxes_tax_code'); ?> " + tax_code_count).attr('for', new_tax_code_id).attr('class', 'control-label col-xs-2');
|
||||
$(new_block).find("input[id='"+previous_tax_code_id+"']").attr('id', new_tax_code_id).removeAttr('disabled').attr('name', new_tax_code_id).attr('class', 'form-control text-uppercase required input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_tax_code_name_id+"']").attr('id', new_tax_code_name_id).removeAttr('disabled').attr('name', new_tax_code_name_id).attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_city_id+"']").attr('id', new_city_id).removeAttr('disabled').attr('name', new_city_id).attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_statte_id+"']").attr('id', new_state_id).removeAttr('disabled').attr('name', new_state_id).attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='tax_code[]']").attr('id', new_tax_code_id).removeAttr('disabled').attr('class', 'form-control text-uppercase required input-sm').val('');
|
||||
$(new_block).find("input[name='tax_code_name[]']").removeAttr('disabled').attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("input[name='city[]']").removeAttr('disabled').attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='state[]']").removeAttr('disabled').attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='tax_code_id[]']").val('-1');
|
||||
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_code();
|
||||
};
|
||||
|
||||
var remove_tax_code = function() {
|
||||
$(this).parent().remove();
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_code();
|
||||
};
|
||||
|
||||
var init_add_remove_tax_codes = function() {
|
||||
$('.add_tax_code').click(add_tax_code);
|
||||
$('.remove_tax_code').click(remove_tax_code);
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_code();
|
||||
};
|
||||
init_add_remove_tax_codes();
|
||||
|
||||
var duplicate_found = false;
|
||||
// run validator once for all fields
|
||||
$.validator.addMethod('tax_code' , function(value, element) {
|
||||
$.validator.addMethod('check4TaxCodeDups' , function(value, element) {
|
||||
var value_count = 0;
|
||||
$("input[name*='tax_code']").each(function() {
|
||||
$("input[name='tax_code[]']").each(function() {
|
||||
value_count = $(this).val() == value ? value_count + 1 : value_count;
|
||||
});
|
||||
return value_count < 2;
|
||||
if (value_count > 1) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_code_duplicate'); ?>");
|
||||
|
||||
$.validator.addMethod('valid_chars', function(value, element) {
|
||||
return value.indexOf('_') === -1;
|
||||
$.validator.addMethod('validateTaxCodeCharacters', function(value, element) {
|
||||
if ((value.indexOf('_') != -1)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_code_invalid_chars'); ?>");
|
||||
|
||||
$.validator.addMethod('requireTaxCode', function(value, element) {
|
||||
if (value .trim() == '') {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_code_required'); ?>");
|
||||
|
||||
$('#tax_codes_form').validate($.extend(form_support.handler, {
|
||||
submitHandler: function(form) {
|
||||
submitHandler: function(form, event) {
|
||||
$(form).ajaxSubmit({
|
||||
success: function(response) {
|
||||
$.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'});
|
||||
@@ -99,41 +104,25 @@
|
||||
dataType: 'json'
|
||||
});
|
||||
},
|
||||
|
||||
errorLabelContainer: "#tax_code_error_message_box",
|
||||
|
||||
rules:
|
||||
{
|
||||
<?php
|
||||
$i = 0;
|
||||
|
||||
foreach($tax_codes as $tax_code=>$tax_code_data)
|
||||
{
|
||||
?>
|
||||
<?php echo 'tax_code_' . ++$i ?>:
|
||||
{
|
||||
required: true,
|
||||
tax_code: true,
|
||||
valid_chars: true
|
||||
},
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
invalidHandler: function(event, validator) {
|
||||
$.notify("<?php echo $this->lang->line('common_correct_errors'); ?>");
|
||||
},
|
||||
|
||||
messages:
|
||||
{
|
||||
<?php
|
||||
$i = 0;
|
||||
|
||||
foreach($tax_codes as $tax_code=>$tax_code_data)
|
||||
{
|
||||
?>
|
||||
<?php echo 'tax_code_' . ++$i ?>: "<?php echo $this->lang->line('taxes_tax_code_required'); ?>",
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
errorLabelContainer: "#tax_code_error_message_box"
|
||||
}));
|
||||
|
||||
<?php
|
||||
$i = 0;
|
||||
foreach($tax_codes as $tax_code=>$tax_code_data)
|
||||
{
|
||||
?>
|
||||
$('<?php echo '#tax_code_' . ++$i ?>').rules( "add", {
|
||||
requireTaxCode: true,
|
||||
check4TaxCodeDups: true,
|
||||
validateTaxCodeCharacters: true
|
||||
});
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
}
|
||||
var tax_type_options = '<?php echo $tax_type_options; ?>';
|
||||
|
||||
var hide_show_remove = function() {
|
||||
var hide_show_remove_tax_jurisdiction = function() {
|
||||
if ($("input[name*='tax_jurisdiction']:enabled").length > 1)
|
||||
{
|
||||
$(".remove_tax_jurisdiction").show();
|
||||
@@ -42,61 +42,61 @@
|
||||
var id = $(this).parent().find('input').attr('id');
|
||||
id = id.replace(/.*?_(\d+)$/g, "$1");
|
||||
|
||||
var previous_jurisdiction_id = 'jurisdiction_id_' + id;
|
||||
var previous_jurisdiction_name_id = 'jurisdiction_name_' + id;
|
||||
var previous_tax_group_id = 'tax_group_' + id;
|
||||
var previous_tax_type_id = 'tax_type_' + id;
|
||||
var previous_reporting_authority_id = 'reporting_authority_' + id;
|
||||
var previous_tax_group_sequence_id = 'tax_group_sequence_' + id;
|
||||
var previous_cascade_sequence_id = 'cascade_sequence_' + id;
|
||||
var block = $(this).parent().clone(true);
|
||||
var new_block = block.insertAfter($(this).parent());
|
||||
++tax_jurisdictions_count;
|
||||
var new_jurisdiction_id = 'jurisdiction_id_' + tax_jurisdictions_count;
|
||||
var new_jurisdiction_name_id = 'jurisdiction_name_' + tax_jurisdictions_count;
|
||||
var new_tax_group_id = 'tax_group_' + tax_jurisdictions_count;
|
||||
var new_tax_type_id = 'tax_type_' + tax_jurisdictions_count;
|
||||
var new_reporting_authority_id = 'reporting_authority_' + tax_jurisdictions_count;
|
||||
var new_tax_group_sequence_id = 'tax_group_sequence_' + tax_jurisdictions_count;
|
||||
var new_cascade_sequence_id = 'cascade_sequence_' + tax_jurisdictions_count;
|
||||
|
||||
$(new_block).find('label').html("<?php echo $this->lang->line('taxes_tax_jurisdiction'); ?> " + tax_jurisdictions_count).attr('for', new_jurisdiction_name_id).attr('class', 'control-label col-xs-2');
|
||||
$(new_block).find("input[name='"+previous_jurisdiction_id+"']").attr('name', new_jurisdiction_id).val('-1');
|
||||
$(new_block).find("input[id='"+previous_jurisdiction_name_id+"']").attr('id', new_jurisdiction_name_id).removeAttr('disabled').attr('name', new_jurisdiction_name_id).attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_tax_group_id+"']").attr('id', new_tax_group_id).removeAttr('disabled').attr('name', new_tax_group_id).attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("select[name='"+previous_tax_type_id+"']").attr('name', new_tax_type_id).removeAttr('disabled').attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_reporting_authority_id+"']").attr('id', new_reporting_authority_id).removeAttr('disabled').attr('name', new_reporting_authority_id).attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_tax_group_sequence_id+"']").attr('id', new_tax_group_sequence_id).removeAttr('disabled').attr('name', new_tax_group_sequence_id).attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[id='"+previous_cascade_sequence_id+"']").attr('id', new_cascade_sequence_id).removeAttr('disabled').attr('name', new_cascade_sequence_id).attr('class', 'form-control input-sm').val('');
|
||||
hide_show_remove();
|
||||
$(new_block).find("input[name='jurisdiction_name[]']").attr('id', new_jurisdiction_name_id).removeAttr('disabled').attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("input[name='tax_group[]']").removeAttr('disabled').attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("select[name='tax_type[]']").removeAttr('disabled').attr('class', 'form-control required input-sm').val('');
|
||||
$(new_block).find("input[name='reporting_authority[]']").removeAttr('disabled').attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='tax_group_sequence[]']").removeAttr('disabled').attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='cascade_sequence[]']").removeAttr('disabled').attr('class', 'form-control input-sm').val('');
|
||||
$(new_block).find("input[name='jurisdiction_id[]']").val('-1');
|
||||
hide_show_remove_tax_jurisdiction();
|
||||
};
|
||||
|
||||
var remove_tax_jurisdiction = function() {
|
||||
$(this).parent().remove();
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_jurisdiction();
|
||||
};
|
||||
|
||||
var init_add_remove_tax_jurisdiction = function() {
|
||||
$('.add_tax_jurisdiction').click(add_tax_jurisdiction);
|
||||
$('.remove_tax_jurisdiction').click(remove_tax_jurisdiction);
|
||||
hide_show_remove();
|
||||
hide_show_remove_tax_jurisdiction();
|
||||
};
|
||||
init_add_remove_tax_jurisdiction();
|
||||
|
||||
var duplicate_found = false;
|
||||
// run validator once for all fields
|
||||
$.validator.addMethod('tax_jurisdiction' , function(value, element) {
|
||||
$.validator.addMethod('check4TaxJurisdictionDups' , function(value, element) {
|
||||
var value_count = 0;
|
||||
$("input[name*='tax_jurisdiction']").each(function() {
|
||||
$("input[name='jurisdiction_name[]']").each(function() {
|
||||
value_count = $(this).val() == value ? value_count + 1 : value_count;
|
||||
});
|
||||
return value_count < 2;
|
||||
if (value_count > 1) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_jurisdiction_duplicate'); ?>");
|
||||
|
||||
$.validator.addMethod('valid_chars', function(value, element) {
|
||||
return value.indexOf('_') === -1;
|
||||
$.validator.addMethod('validateTaxJurisdictionCharacters', function(value, element) {
|
||||
if ((value.indexOf('_') != -1)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_jurisdiction_invalid_chars'); ?>");
|
||||
|
||||
$.validator.addMethod('requireTaxJurisdiction', function(value, element) {
|
||||
if (value .trim() == '') {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}, "<?php echo $this->lang->line('taxes_tax_jurisdiction_required'); ?>");
|
||||
|
||||
$('#tax_jurisdictions_form').validate($.extend(form_support.handler, {
|
||||
submitHandler: function(form) {
|
||||
$(form).ajaxSubmit({
|
||||
@@ -107,41 +107,24 @@
|
||||
dataType: 'json'
|
||||
});
|
||||
},
|
||||
|
||||
errorLabelContainer: "#tax_jurisdiction_error_message_box",
|
||||
|
||||
rules:
|
||||
{
|
||||
<?php
|
||||
$i = 0;
|
||||
|
||||
foreach($tax_jurisdictions as $tax_jurisdiction=>$tax_jurisdiction_data)
|
||||
{
|
||||
?>
|
||||
<?php echo 'tax_jurisdiction_' . ++$i ?>:
|
||||
{
|
||||
required: true,
|
||||
tax_jurisdiction: true,
|
||||
valid_chars: true
|
||||
},
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
invalidHandler: function(event, validator) {
|
||||
$.notify("<?php echo $this->lang->line('common_correct_errors'); ?>");
|
||||
},
|
||||
|
||||
messages:
|
||||
{
|
||||
<?php
|
||||
$i = 0;
|
||||
|
||||
foreach($tax_jurisdictions as $tax_jurisdiction=>$tax_jurisdiction_data)
|
||||
{
|
||||
?>
|
||||
<?php echo 'tax_jurisdiction_' . ++$i ?>: "<?php echo $this->lang->line('taxes_tax_jurisdiction_required'); ?>",
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
errorLabelContainer: "#tax_jurisdiction_error_message_box"
|
||||
}));
|
||||
|
||||
<?php
|
||||
$i = 0;
|
||||
foreach($tax_jurisdictions as $tax_jurisdiction=>$tax_jurisdiction_data)
|
||||
{
|
||||
?>
|
||||
$('<?php echo '#jurisdiction_name_' . ++$i ?>').rules( "add", {
|
||||
requireTaxJurisdiction: true,
|
||||
check4TaxJurisdictionDups: true,
|
||||
validateTaxJurisdictionCharacters: true
|
||||
});
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
});
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user