function _commerce_kickstart_example_taxes in Commerce Kickstart 7.2
BatchAPI callback.
See also
commerce_kickstart_import_content()
1 string reference to '_commerce_kickstart_example_taxes'
- commerce_kickstart_import_content in ./
commerce_kickstart.install - Task callback: return a batch API array with the products to be imported.
File
- ./
commerce_kickstart.install_callbacks.inc, line 83 - Contains Batch API callbacks used during installation.
Code
function _commerce_kickstart_example_taxes($operation, &$context) {
$context['message'] = t('@operation', array(
'@operation' => $operation,
));
$commerce_kickstart_choose_tax_country = variable_get('commerce_kickstart_choose_tax_country', NULL);
// Create the choosen tax.
if (!empty($commerce_kickstart_choose_tax_country)) {
if ($commerce_kickstart_choose_tax_country == 'us') {
$tax = array(
'name' => 'sample_michigan_sales_tax',
'title' => 'Sample Michigan Sales Tax 6%',
'display_title' => 'Sample Michigan Sales Tax 6%',
'description' => '',
'rate' => 0.06,
'type' => 'sales_tax',
// vat
'rules_component' => '',
'default_rules_component' => FALSE,
'tax_component' => '',
'admin_list' => TRUE,
'calculation_callback' => 'commerce_tax_rate_calculate',
'module' => 'commerce_tax_ui',
'is_new' => TRUE,
);
commerce_tax_ui_tax_rate_save($tax);
$rule = '{ "commerce_tax_rate_sample_michigan_sales_tax" : {
"LABEL" : "Calculate Sample Michigan Sales Tax 6%",
"PLUGIN" : "rule",
"REQUIRES" : [ "commerce_order", "commerce_tax" ],
"USES VARIABLES" : {
"commerce_line_item" : {
"label" : "Line item",
"type" : "commerce_line_item"
}
},
"IF" : [{
"commerce_order_compare_address" : {
"commerce_order" : [ "commerce-line-item:order" ],
"address_field" : "commerce_customer_shipping|commerce_customer_address",
"address_component" : "administrative_area",
"value" : "MI"
}
}],
"DO" : [{
"commerce_tax_rate_apply" : {
"USING" : {
"commerce_line_item" : [ "commerce-line-item" ],
"tax_rate_name" : "sample_michigan_sales_tax"},
"PROVIDE" : {
"applied_tax" : {
"applied_tax" : "Applied tax"
}
}
}
}
]}
}';
$rules_config = rules_import($rule);
$rules_config
->save();
$tax = array(
'name' => 'sample_michigan_sales_tax',
'rules_component' => 'commerce_tax_rate_sample_michigan_sales_tax',
'is_new' => FALSE,
);
commerce_tax_ui_tax_rate_save($tax);
}
if ($commerce_kickstart_choose_tax_country == 'europe') {
variable_set('import_choosen_tax', 'europe');
$tax = array(
'name' => 'sample_french_vat_tax',
'title' => 'Sample French VAT 20%',
'display_title' => 'Sample French VAT 20%',
'description' => '',
'rate' => 0.2,
'type' => 'vat',
// vat
'default_rules_component' => TRUE,
'tax_component' => '',
'admin_list' => TRUE,
'calculation_callback' => 'commerce_tax_rate_calculate',
'module' => 'commerce_tax_ui',
'is_new' => TRUE,
);
commerce_tax_ui_tax_rate_save($tax);
}
}
// delete the variables we used during this task.
variable_del('commerce_kickstart_choose_tax_country');
}