Current File : /var/www/vinorea/modules/ipexportimport/views/js/export.js |
/**
*
* NOTICE OF LICENSE
*
* @author SmartPresta <tehran.alishov@gmail.com>
* @copyright 2024 SmartPresta
* @license Commercial License
*/
function triggerChanges() {
// $('input[name="as"]').change();
// $('.catalogEIA_date').change();
// $('.date_collapser').change();
$('.catalogEIA').find('form :input').change();
var x = document.querySelectorAll('input[type=range]');
for (var i = 0; i < x.length; i++) {
x[i].dispatchEvent(new Event('input'));
}
}
$(document).ready(function () {
// var config = decodeURIComponent($('#product_export_form').serialize()).replace(/\+/g, ' ');
// var cols = {};
// $('#product_fields ul > li').each(function (index, element) {
// cols[$(element).data('value')] = [$(element).children('span.text').text(), $(element).hasClass('selected')];
// });
// config += '&selectedColumns=' + JSON.stringify(cols);
// console.log(config);
$.fn.dataTable.ext.errMode = function (settings, helpPage, message) {
showErrorMessage(message);
};
function showLoading() {
$('#fader, #spinner').css('display', 'block');
}
function hideLoading() {
$('#fader, #spinner').css('display', 'none');
}
function loadTemplates(templates) {
var html = '', html2 = '';
$.each(templates, function (index, value) {
if (value.name === 'catalog_default') {
html += '<li data-id="' + value.id_ipexport
+ '" data-config=\'' + value.configuration
+ '\' class="list-group-item"><b>' + default_template + '</b><span class="pull-right apply_span default_config">'
+ '<button type="button" class="btn btn-default apply_config"><i class="icon-check"></i> ' + apply + '</button> | '
+ '<a class="btn btn-default" href="' + controller_link + '&action=getSetting&st_id=' + value.id_ipexport + '"><i class="icon-download"></i></a></span></li>';
html2 += '<option selected value="' + value.name + '">' + default_template + '</option>';
} else {
html += '<li data-id="' + value.id_ipexport
+ '" data-config=\'' + value.configuration
+ '\' class="list-group-item"><b>' + value.name + '</b><span class="pull-right apply_span">'
+ '<button class="btn btn-default apply_config"><i class="icon-check"></i> ' + apply + '</button> | '
+ '<a class="btn btn-default" href="' + controller_link + '&action=getSetting&st_id=' + value.id_ipexport + '"><i class="icon-download"></i></a> | '
+ '<button type="button" class="btn btn-default delete_file"><i title="' + value.title
+ '" class="icon-trash" style="color:#c50000" aria-hidden="true"></i></button></span></li>';
html2 += '<option value="' + value.name + '">' + value.name + '</option>';
}
});
$('#configs').html(html);
$('#schedule_email_template').html(html2);
$('#schedule_ftp_template').html(html2);
}
$('#product_export_form :input[name="categories[]"]').attr("disabled", "disabled");
$('#product_export_form :input[name="category_whether_filter"]').change(function () {
if (this.value == '0') {
$('#product_export_form :input[name="categories[]"]').attr("disabled", "disabled");
} else {
$('#product_export_form :input[name="categories[]"]').removeAttr("disabled");
}
})
$('#combination_export_form :input[name="categories[]"]').attr("disabled", "disabled");
$('#combination_export_form :input[name="category_whether_filter"]').change(function () {
if (this.value == '0') {
$('#combination_export_form :input[name="categories[]"]').attr("disabled", "disabled");
} else {
$('#combination_export_form :input[name="categories[]"]').removeAttr("disabled");
}
})
$('#category_export_form :input[name="categories[]"]').attr("disabled", "disabled");
$('#category_export_form :input[name="category_whether_filter"]').change(function () {
if (this.value == '0') {
$('#category_export_form :input[name="categories[]"]').attr("disabled", "disabled");
} else {
$('#category_export_form :input[name="categories[]"]').removeAttr("disabled");
}
})
function updateSchedule(key, value) {
showLoading();
var scheduleData = {
ajax_action: "updateSchedule",
type: 'dml',
key: key,
value: value
};
$.post(controller_link, scheduleData, function (result) {
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
}
// Submitting products
$('#product_export_form').submit(function (e) {
e.preventDefault();
// Get selected/unselected ids from the data tables
collectProducts();
// collectAttributes();
collectFeatures();
collectManufacturers();
collectSuppliers();
collectCarriers();
startExport('product');
});
$('#order_export_form').submit(function (e) {
e.preventDefault();
// Get selected/unselected ids from the data tables
collectorder_Orders();
collectorder_Carriers();
collectorder_CartRules();
collectorder_Customers();
collectorder_Groups();
collectorder_Manufacturers();
collectorder_OrderStates();
collectorder_PaymentMethods();
collectorder_Products();
collectorder_Shops();
collectorder_Suppliers();
startExport('order');
});
// Submitting categories
$('#category_export_form').submit(function (e) {
e.preventDefault();
startExport('category');
});
// Submitting warehouses
$('#warehouse_export_form').submit(function (e) {
e.preventDefault();
collectWarehouses();
startExport('warehouse');
});
// Submitting aliases
$('#alias_export_form').submit(function (e) {
e.preventDefault();
collectAliases();
startExport('alias');
});
// Submitting stores
$('#store_export_form').submit(function (e) {
e.preventDefault();
collectStores();
startExport('store');
});
// Submitting packs
$('#pack_export_form').submit(function (e) {
e.preventDefault();
collectPacks();
startExport('pack');
});
// Submitting combinations
$('#combination_export_form').submit(function (e) {
e.preventDefault();
// Get selected/unselected ids from the data tables
collectCombinations();
collectAttributes();
startExport('combination');
});
// Submitting discounts
$('#discount_export_form').submit(function (e) {
e.preventDefault();
// Get selected/unselected ids from the data tables
collectDiscounts();
startExport('discount');
});
// Submitting brands
$('#brand_export_form').submit(function (e) {
e.preventDefault();
collectBrands();
startExport('brand');
});
// Submitting suppliers
$('#supplier_export_form').submit(function (e) {
e.preventDefault();
collectSuppliers2();
startExport('supplier');
});
// Submitting carriers
$('#carrier_export_form').submit(function (e) {
e.preventDefault();
collectCarriers2();
startExport('carrier');
});
// Submitting customers
$('#customer_export_form').submit(function (e) {
e.preventDefault();
collectCustomers();
collectGroups();
startExport('customer');
});
// Submitting addresses
$('#address_export_form').submit(function (e) {
e.preventDefault();
collectAddresses();
startExport('address');
});
// Submitting groups
$('#group_export_form').submit(function (e) {
e.preventDefault();
collectGroups2();
startExport('group');
});
// Submitting features
$('#feature_export_form').submit(function (e) {
e.preventDefault();
collectFeaturesForFeatures();
collectFeatureValues();
startExport('feature');
});
// Submitting attributes
$('#attribute_export_form').submit(function (e) {
e.preventDefault();
collectAttributeGroups();
collectAttributeValues();
startExport('attribute');
});
var exportCancelRequest = false;
var exportContinueRequest = false;
var entity, limit;
var speeds = [50, 100, 200, 500, 1000, 2000, 5000, 10000];
function startExport(ent) {
entity = ent;
limit = speeds[parseInt($('#' + entity + '_speed').val())];
exportNow(0, limit, -1, {}, 0);
$('#exportProgress').modal('show');
}
function exportNow(offset, limit, total, crossStepsVariables, moreStep, fileId) {
if (offset === 0) {
updateProgressionInit();
updateProgression(0, total, limit, false, moreStep, null);
}
var data = $('#' + entity + '_export_form').serializeArray();
data.push({'name': 'crossStepsVars', 'value': JSON.stringify(crossStepsVariables)});
// Get the selected fields (columns)
var selected_columns = {};
$('#' + entity + '_export_form').find('.scrollable ul li.selected').each(function (index, elem) {
selected_columns[$(elem).attr('data-value')] = $(elem).children('span.text').text();
});
data.push({'name': 'selectedColumns', 'value': JSON.stringify(selected_columns)});
data.push({'name': 'fileId', 'value': fileId});
// var startingTime = new Date().getTime();
$.ajax({
type: 'POST',
url: controller_link + '&action=export&offset=' + offset + '&limit=' + limit + (moreStep > 0 ? '&moreStep=' + moreStep : ''),
cache: false,
dataType: "json",
data: data,
success: function (jsonData)
{
if (jsonData.totalCount) {
total = jsonData.totalCount;
}
if (jsonData.informations && jsonData.informations.length > 0) {
updateProgressionInfo('<li>' + jsonData.informations.join('</li><li>') + '</li>');
}
if (jsonData.warnings && jsonData.warnings.length > 0) {
updateProgressionError('<li>' + jsonData.warnings.join('</li><li>') + '</li>', true);
}
if (jsonData.errors && jsonData.errors.length > 0) {
updateProgressionError('<li>' + jsonData.errors.join('</li><li>') + '</li>', false);
return; // If errors, stops process
}
// Here, no errors returned
if (!jsonData.isFinished == true) {
// // compute time taken by previous call to adapt amount of elements by call.
// var previousDelay = new Date().getTime() - startingTime;
// var targetDelay = 5000; // try to keep around 5 seconds by call
// // acceleration will be limited to 4 to avoid newLimit to increase too fast (NEVER reach 30 seconds by call!).
// var acceleration = Math.min(4, (targetDelay / previousDelay));
// // keep between 5 to 100 elements to process in one call
// var newLimit = Math.min(100, Math.max(5, Math.floor(limit * acceleration)));
var newOffset = offset + limit;
// update progression
updateProgression(jsonData.doneCount, total, jsonData.doneCount + limit, false, moreStep, jsonData.moreStepLabel);
if (exportCancelRequest == true) {
$('#exportProgress').modal('hide');
exportCancelRequest = false;
// window.location.href = window.location.href.split('#')[0]; // reload same URL but do not POST again (so in GET without param)
return; // stops execution
}
// process next group of elements
exportNow(newOffset, limit, total, jsonData.crossStepsVariables, moreStep, jsonData.fileId);
// checks if we could go over post_max_size setting. Warns when reach 90% of the actual setting
if (jsonData.nextPostSize >= jsonData.postSizeLimit * 0.9) {
var progressionDone = jsonData.doneCount * 100 / total;
var increase = Math.max(7, parseInt(jsonData.postSizeLimit / (progressionDone * 1024 * 1024))) + 1; // min 8MB
$('#export_details_post_limit_value').html(increase + " MB");
$('#export_details_post_limit').show();
}
} else {
if (jsonData.oneMoreStep > moreStep) {
updateProgression(total, total, total, false, false, null); // do not close now
exportNow(0, limit, total, jsonData.crossStepsVariables, jsonData.oneMoreStep, jsonData.fileId);
} else {
if (jsonData.totalCount == 0) {
updateProgression(0, 0, 0, true, moreStep, jsonData.moreStepLabel);
} else {
updateProgression(total, total, total, true, moreStep, jsonData.moreStepLabel);
}
location.replace(controller_link + '&action=getFile&id=' + jsonData.fileId + '&type=' + jsonData.type + '&name=' + jsonData.name);
}
}
},
error: function (XMLHttpRequest, textStatus, errorThrown)
{
// if (textStatus == 'parsererror') {
textStatus = XMLHttpRequest.responseText;
// }
updateProgressionError(textStatus, false);
}
});
}
$('#export_stop_button').unbind('click').click(function () {
if (exportContinueRequest) {
$('#exportProgress').modal('hide');
exportContinueRequest = false;
window.location.href = window.location.href.split('#')[0]; // reload same URL but do not POST again (so in GET without param)
} else {
exportCancelRequest = true;
$('#export_details_progressing').hide();
$('#export_details_finished').hide();
$('#export_details_stop').show();
$('#export_stop_button').hide();
$('#export_close_button').hide();
}
});
$('#export_continue_button').unbind('click').click(function () {
$('#export_continue_button').hide();
exportContinueRequest = false;
$('#export_progress_div').show();
$('#export_details_warning ul, #export_details_info ul').html('');
$('#export_details_warning, #export_details_info').hide();
exportNow(0, limit, -1, {}, 0);
});
function updateProgressionInit() {
$('#exportProgress').modal({backdrop: 'static', keyboard: false, closable: false});
$('#exportProgress').modal('show');
$('#exportProgress').on('hidden.bs.modal', function () {
// window.location.href = window.location.href.split('#')[0]; // reload same URL but do not POST again (so in GET without param)
});
$('#export_details_progressing').show();
$('#export_details_finished').hide();
$('#export_details_error').hide();
$('#export_details_warning, #export_details_info').hide();
$('#export_details_stop').hide();
$('#export_details_post_limit').hide();
$('#export_details_error ul').html('');
$('#export_details_warning ul, #export_details_info ul').html('');
// $('#export_progress_div').hide();
$('#export_progression_details').html($('#export_progression_details').attr('default-value'));
$('#export_progressbar_done').width('0%');
$('#export_progressbar_done').parent().addClass('active progress-striped');
$('#export_progression_done').html('0');
$('#export_progressbar_next').width('0%');
$('#export_progressbar_next').removeClass('progress-bar-danger');
$('#export_progressbar_next').addClass('progress-bar-success');
$('#export_stop_button').show();
$('#export_close_button').hide();
$('#export_continue_button').hide();
}
function updateProgressionInfo(message) {
$('#export_details_progressing').hide();
$('#export_details_finished').hide();
$('#export_details_info ul').append(message);
$('#export_details_info').show();
}
function updateProgressionError(message, forWarnings) {
$('#export_details_progressing').hide();
$('#export_details_finished').hide();
if (forWarnings) {
$('#export_details_warning ul').append(message);
$('#export_details_warning').show();
} else {
$('#export_details_error ul').append(message);
$('#export_details_error').show();
$('#export_progressbar_next').addClass('progress-bar-danger');
$('#export_progressbar_next').removeClass('progress-bar-success');
$('#export_stop_button').hide();
$('#export_close_button').show();
}
}
function updateProgression(currentPosition, total, nextPosition, finish, moreStep, moreStepLabel) {
if (currentPosition > total)
currentPosition = total;
if (nextPosition > total)
nextPosition = total;
var progressionDone = currentPosition * 100 / total;
var progressionNext = nextPosition * 100 / total;
if (total > 0) {
$('#export_progress_div').show();
$('#export_progression_details').html(currentPosition + '/' + total);
if (moreStep == 0) {
$('#export_progressbar_done').width(progressionDone + '%');
$('#export_progression_done').html(parseInt(progressionDone));
$('#export_progressbar_next').width((progressionNext - progressionDone) + '%');
} else {
$('#export_progressbar_next').width('0%');
$('#export_progressbar_done').width((100 - progressionDone) + '%');
$('#export_progressbar_done2').width(progressionDone + '%');
if (moreStepLabel)
$('#export_progressbar_done2 span').html(moreStepLabel);
}
} else if (total == 0) {
$('#export_progress_div').show();
$('#export_progression_details').html('0/0');
$('#export_progressbar_done').width('100%');
$('#export_progression_done').html(100);
$('#export_progressbar_next').width('0%');
}
if (finish) {
$('#export_progressbar_done').parent().removeClass('active progress-striped');
$('#export_details_post_limit').hide();
$('#export_details_progressing').hide();
$('#export_details_finished').show();
$('#exportProgress').modal({keyboard: true, closable: true});
$('#export_stop_button').hide();
$('#export_close_button').show();
}
}
// Enable collapse upon initialization
$(".collapse").collapse({toggle: false});
// CSV option is selected
$('input[name="as"]').change(function () {
if ($(this).is(':checked')) {
if ($(this).val() === 'csv') {
$(this).closest('.catalogEIA_form').find('.csv_options').collapse('show');
} else {
$(this).closest('.catalogEIA_form').find('.csv_options').collapse('hide');
}
}
});
// Select custom date is selected
$('.date_collapser').on('change', 'select', function () {
if ($(this).val() === 'select_date') {
$(this).closest('.form-group.date_collapser').next().addClass('in');
} else {
$(this).closest('.form-group.date_collapser').next().removeClass('in');
}
});
// Check and expand the categories tree
$('#collapse-all-product_categories_tree').hide();
$('#product_categories_tree').addClass('full_loaded');
// $('#product_categories_tree').tree('expandAll');
// setTimeout(() => {$('#product_categories_tree').tree('expandAll');}, 5000);
checkAllAssociatedCategories($('#product_categories_tree'));
$('#collapse-all-category_categories_tree').hide();
$('#category_categories_tree').addClass('full_loaded');
checkAllAssociatedCategories($('#category_categories_tree'));
// $('#category_categories_tree').tree('expandAll');
$('#collapse-all-combination_categories_tree').hide();
$('#combination_categories_tree').addClass('full_loaded');
checkAllAssociatedCategories($('#combination_categories_tree'));
// When the resfresh button is clicked
$('.refresh_button').click(function (e) {
e.preventDefault();
var table = $(this).attr('id').substr(8);
eval(table + 'Table').ajax.reload();
});
// Product group list - Sub left
$('#product_columns_group a.list-group-item').click(function (e) {
e.preventDefault();
$(this).siblings('.active').removeClass('active');
$(this).addClass('active');
var id = $(this).attr('id').replace('product_fields_', '');
if (id === 'all') {
$('#product_fields .scrollable ul > li').removeClass('hidden');
} else {
$('#product_fields .scrollable ul > li').addClass('hidden');
$('#product_fields .scrollable ul > li.' + id).removeClass('hidden');
}
});
// Sortable
$('.scrollable ul').sortable({
cursor: "move",
axis: "y",
stop: function (event, ui) {
ui.item.css('left', '');
}
});
// Datetime picker
$('input[name="from_date"], input[name="to_date"], \n\
input[name="from_from_date"], input[name="from_to_date"], input[name="to_from_date"], input[name="to_to_date"]').datetimepicker({
dateFormat: "yy-mm-dd",
timeFormat: "hh:mm:ss",
showSecond: true
});
// (De)selecting the columns
$('.catalogEIA_form .catalogEIA_fields .scrollable ul > li').click(function (e) {
if ($(this).hasClass('selected')) {
$(this).removeClass('selected');
$(this).children('i:not(.icon-info-circle)').removeClass('icon-check-square-o').addClass('icon-square-o');
} else {
$(this).addClass('selected');
$(this).children('i:not(.icon-info-circle)').removeClass('icon-square-o').addClass('icon-check-square-o');
}
});
// Column search
$('.fields_search').keyup(function (e) {
var value = $(this).val().toLowerCase();
if (value) {
$(this).next('.clearable_clear').show();
} else {
$(this).next('.clearable_clear').hide();
}
$(this).parents('.scrollable').find('ul > li').each(function () {
if ($(this).children('span.text').text().toLowerCase().search(value) > -1) {
$(this).show();
} else {
$(this).hide();
}
});
});
// Select all columns
$('.select_all_columns').click(function (e) {
e.preventDefault();
var deselected = $(this).closest('.scrollable').find('li:not(.selected)');
var all = $(this).closest('.scrollable').find('li');
if (deselected.length != all.length) {
$(this).children('i:not(.icon-info-circle)').removeClass('icon-check-square-o').addClass('icon-square-o');
$(this).closest('.scrollable').find('li').removeClass('selected').children('i:not(.icon-info-circle)').removeClass('icon-check-square-o').addClass('icon-square-o');
} else {
$(this).children('i:not(.icon-info-circle)').removeClass('icon-square-o').addClass('icon-check-square-o');
deselected.addClass('selected');
deselected.children('i:not(.icon-info-circle)').removeClass('icon-square-o').addClass('icon-check-square-o');
}
});
// Rest columns
$('.reset_columns').click(function (e) {
e.preventDefault();
$(this).closest('.scrollable').find('li').addClass('selected').children('i:not(.icon-info-circle)').removeClass('icon-square-o').addClass('icon-check-square-o');
$(this).closest('.scrollable').find('li.additional').removeClass('selected').children('i:not(.icon-info-circle)').removeClass('icon-check-square-o').addClass('icon-square-o');
});
// If the "x" icon is clicked in the columns search input
$('.clearable_clear').click(function () {
$(this).prev('.fields_search').val('').trigger('keyup');
});
// "Save changes" button is clicked
$('#save_template_btn').click(function (e) {
e.preventDefault();
var name = $('#template_name').val();
if (!name) {
return alert(invalid_template_name);
}
var config = {}, cols;
$('.catalogEIA form.catalogEIA_form').each(function (index, element) {
cols = {};
$(element).find('.catalogEIA_fields ul > li').each(function (index2, element2) {
if ($(element2).attr('data-original-value')) {
cols[$(element2).attr('data-value')] = [$(element2).children('span.text').text(), $(element2).hasClass('selected'), $(element2).attr('data-original-value'), $(element2).attr('data-original-text')];
} else {
cols[$(element2).attr('data-value')] = [$(element2).children('span.text').text(), $(element2).hasClass('selected')];
}
});
config[$(element).find('input[name=export]').val()] = {
inputs: decodeURIComponent($(element).serialize()).replace(/\+/g, ' '),
columns: cols
};
});
// As this takes more space
if (featuresTable.state()) {
delete featuresTable.state().checkboxes;
}
var dataTables = {};
for (var prop in filterTables) {
dataTables[prop] = {
type: eval(prop).type,
data: eval(prop).data,
showWhich: $('#ctrl-show-selected-' + prop).val(),
columns: eval(prop + 'Table').settings().init().columns.map(obj => ({data: obj.data})),
order: eval(prop + 'Table').order(),
search: eval(prop + 'Table').search(),
pageInfo: eval(prop + 'Table').page.info()
};
}
dataTables = JSON.stringify(dataTables);
showLoading();
$.post(controller_link, {ajax_action: 'saveConfig', type: 'dml', ieType: 'export', name: name, config: JSON.stringify(config), datatables: dataTables},
function (result) {
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
loadTemplates(json.configs);
} else {
showErrorMessage(json.message);
}
$('#template_name').val('');
hideLoading();
});
});
var savedUnique = null;
// Apply template
$(document).on('click', '.apply_config', function (e) {
e.preventDefault();
uncheckAllAssociatedCategories($('#product_categories_tree'));
uncheckAllAssociatedCategories($('#category_categories_tree'));
uncheckAllAssociatedCategories($('#combination_categories_tree'));
$('.filter_section_container > .filter_section').remove();
$('.columns_for_filter > li').removeClass('filter_added');
$.each(JSON.parse($(this).parent().parent().attr('data-config')), function (name, value) {
var pairs = value.inputs.split('&');
var elem, pair;
for (pair of pairs) {
pair = pair.split('=');
if (pair[0] === 'categories[]') {
elem = $('#' + name + '_export_form').find('input[name="' + pair[0] + '"][value="' + pair[1] + '"]');
elem.prop("checked", true);
elem.parent().addClass("tree-selected");
} else if ($('[name="' + pair[0] + '"]').attr('type') === 'radio') {
$('#' + name + '_export_form').find('input[name="' + pair[0] + '"][value="' + pair[1] + '"]').prop('checked', true);
} else if (pair[0].startsWith('filter_options')) {
savedUnique = pair[0].slice(-14).replace(']', '');
$('#' + name + '_export_form').find('.columns_for_filter > li[data-value="' + pair[0].replace('filter_options[', '').slice(0, -16) + '"]').click();
$('#' + name + '_export_form').find('[name="' + pair[0] + '"]').val(pair[1]);
$('#' + name + '_export_form').find('[name="' + pair[0] + '"]').change();
} else {
$('#' + name + '_export_form').find('[name="' + pair[0] + '"]').val(pair[1]);
}
}
var i = 0, v;
for (v in value.columns) {
if (value.columns[v].length > 2) {
var li = $("#" + name + "_fields ul > li[data-value='" + value.columns[v][2] + "']")
.toggleClass('selected', value.columns[v][1])
.insertBefore($("#" + name + "_fields ul > li:eq(" + i++ + ")"))
.attr('data-value', v)
.attr('data-original-value', value.columns[v][2])
.attr('data-original-text', value.columns[v][3])
.addClass('edited');
li.children('span.text').text(value.columns[v][0]);
li.children('i:not(.icon-info-circle)')
.attr('class', 'icon-' + (value.columns[v][1] ? 'check-' : '') + 'square-o');
} else {
$("#" + name + "_fields ul > li[data-value='" + v + "']")
.toggleClass('selected', value.columns[v][1])
.insertBefore($("#" + name + "_fields ul > li:eq(" + i++ + ")"))
.children('i:not(.icon-info-circle)')
.attr('class', 'icon-' + (value.columns[v][1] ? 'check-' : '') + 'square-o');
}
}
});
savedUnique = null;
var id = $(this).parent().parent().attr('data-id');
showLoading();
$.get(controller_link, {ajax_action: 'getAllInitialData', id: id},
function (response) {
hideLoading();
response = JSON.parse(response);
if (response.message === 'success') {
skipAjax = true;
filterTables = response.entities;
for (var prop in response.entities) {
eval(prop).type = response.entities[prop].type;
eval(prop).data = response.entities[prop].checkboxes;
eval(prop).total = response.entities[prop].recordsTotal;
eval(prop + 'Table').page.len(response.entities[prop].pageInfo.length)
.search(response.entities[prop].search)
.order(response.entities[prop].order)
.page(response.entities[prop].pageInfo.start / response.entities[prop].pageInfo.length)
.draw(false);
if (eval(prop).data.length !== 0 && parseInt(eval(prop).total) !== eval(prop).data.length) {
$('#' + prop + '_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
triggerChanges();
skipAjax = false;
showSuccessMessage(template_loaded);
} else {
showErrorMessage(response.message);
}
});
});
// Click trash
$(document).on('click', '#configs button.delete_file', function (e) {
if (confirm(sure_to_delete + ' "' + $(this).parent().parent().find('b').text() + '" ?')) {
showLoading();
$.post(controller_link, {ajax_action: 'deleteConfig', type: 'dml', ieType: 'export', id: $(this).parent().parent().attr('data-id')},
function (result) {
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
loadTemplates(json.configs);
hideLoading();
});
}
});
$('#import_button').click(function (e) {
e.preventDefault();
$('#file').click();
});
$(document).on('change', '#file', function () {
showLoading();
var files = document.getElementById("file").files;
var form_data = new FormData();
for (var i = 0; i < files.length; i++) {
form_data.append("file[]", files[i]);
}
$.ajax({
url: controller_link + '&ajax=1&action=importSetting',
type: 'POST',
data: form_data,
cache: false,
processData: false,
contentType: false,
success: function (response) {
var json = JSON.parse(response);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
loadTemplates(json.configs);
hideLoading();
},
error: function (response) {
hideLoading();
}
});
});
// Schedule collapse
$('#schedule_yes').change(function () {
if ($(this).prop('checked')) {
$('.schedule').collapse("show");
updateSchedule('IPEA_SCHDL_ENABLE', $('input[name="schedule"]:checked').val());
}
});
$('#schedule_no').change(function () {
if ($(this).prop('checked')) {
$('.schedule').collapse("hide");
updateSchedule('IPEA_SCHDL_ENABLE', $('input[name="schedule"]:checked').val());
}
});
$('#schedule_use_email_yes').change(function () {
if ($(this).prop('checked')) {
$('.schedule-email').collapse("show");
updateSchedule('IPEA_SCHDL_USE_EMAIL', $('input[name="schedule_use_email"]:checked').val());
}
});
$('#schedule_use_email_no').change(function () {
if ($(this).prop('checked')) {
$('.schedule-email').collapse("hide");
updateSchedule('IPEA_SCHDL_USE_EMAIL', $('input[name="schedule_use_email"]:checked').val());
}
});
$('#schedule_use_ftp_yes').change(function () {
if ($(this).prop('checked')) {
$('.schedule-ftp').collapse("show");
updateSchedule('IPEA_SCHDL_USE_FTP', $('input[name="schedule_use_ftp"]:checked').val());
}
});
$('#schedule_use_ftp_no').change(function () {
if ($(this).prop('checked')) {
$('.schedule-ftp').collapse("hide");
updateSchedule('IPEA_SCHDL_USE_FTP', $('input[name="schedule_use_ftp"]:checked').val());
}
});
$('#schedule_dont_send_empty_yes').change(function () {
if ($(this).prop('checked')) {
updateSchedule('IPEA_SCHDL_DNSEM', $('input[name="schedule_dont_send_empty"]:checked').val());
}
});
$('#schedule_dont_send_empty_no').change(function () {
if ($(this).prop('checked')) {
updateSchedule('IPEA_SCHDL_DNSEM', $('input[name="schedule_dont_send_empty"]:checked').val());
}
});
// Datatables
var filterTables = Object.fromEntries(Object.entries(initialData).filter(([key, value]) => key !== 'emails' && key !== 'ftps' && key !== 'cronHistory'));
var skipAjax = false; // flag to use fake AJAX
if (typeof setCronHistoryTable !== 'undefined') {
var cronHistory = {type: "unselected", data: [], total: initialData.cronHistory.recordsTotal, filtered: initialData.cronHistory.recordsFiltered};
var cronHistoryTable = $('#cronHistory_table').DataTable({
order: [[0, 'desc']],
data: initialData.cronHistory.data,
bAutoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.cronHistory.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCronHistory';
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "type"},
{data: "entities"},
{data: "success"},
{data: "message"},
{data: "date_add"},
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "60px",
className: "dt-center",
},
{
targets: 1,
width: "130px",
},
{
targets: 3,
className: "dt-center",
width: "110px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 5,
width: "200px",
className: "dt-center",
},
],
select: {
style: 'os multi',
info: false
}
});
cronHistoryTable.on('xhr', function () {
var json = cronHistoryTable.ajax.json();
cronHistory.total = json.recordsTotal;
});
}
if (typeof setProductsTable !== 'undefined') {
function updateProductsSelectInfo() {
var length = products.type === 'selected' ? products.data.length : products.total - products.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#products_select_info').text(lengthText);
}
var products = {type: "unselected", data: [], total: initialData.products.recordsTotal, filtered: initialData.products.recordsFiltered};
var allProductsClicked = false;
var productsTable = $('#products_table').DataTable({
order: [[1, 'asc']],
data: initialData.products.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.products.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getProducts';
d.extra_search_type = $('#ctrl-show-selected-products').val();
d.extra_search_params = {type: products.type, data: products.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.products.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.products); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "image"},
{data: "name"},
{data: "reference"},
{data: "category"},
{data: "base_price"},
{data: "final_price"},
{data: "quantity"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#products_select_info').length === 0) {
$('#products_table_info').append('<span id="products_select_info" class="select_info"></span>');
}
updateProductsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (products.type === 'unselected') {
index = products.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
products.data.splice(index, 1);
}
} else {
if (index === -1) {
products.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = products.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
products.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
products.data.splice(index, 1);
}
}
}
updateProductsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allProductsClicked) {
if (selected) {
products.type = 'unselected';
} else {
products.type = 'selected';
}
products.data = [];
allProductsClicked = false;
}
updateProductsSelectInfo();
if (!indeterminate && products.data.length !== 0 && parseInt(products.total) !== products.data.length) {
$('#products_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (products.type === 'unselected') {
if (products.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (products.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
width: "80px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 6,
className: "dt-center"
},
{
targets: 7,
className: "dt-center"
},
{
targets: 8,
className: "dt-center"
},
{
targets: 9,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
productsTable.on('xhr', function () {
var json = productsTable.ajax.json();
products.total = json.recordsTotal;
});
$('#products_table th.dt-checkboxes-select-all').click(function () {
allProductsClicked = true;
});
$('#ctrl-show-selected-products').on('change', function () {
productsTable.ajax.reload();
});
var collectProducts = function () {
$('#product_export_form input[name="products_type"]').remove();
$('#product_export_form input[name="products_data"]').remove();
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "products_type").val(products.type));
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "products_data").val(products.data));
};
}
if (typeof setCombinationsTable !== 'undefined') {
function updateCombinationsSelectInfo() {
var length = combinations.type === 'selected' ? combinations.data.length : combinations.total - combinations.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#combinations_select_info').text(lengthText);
}
var combinations = {type: "unselected", data: [], total: initialData.combinations.recordsTotal, filtered: initialData.combinations.recordsFiltered};
var allCombinationsClicked = false;
var combinationsTable = $('#combinations_table').DataTable({
order: [[1, 'asc'], [5, 'asc']],
data: initialData.combinations.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.combinations.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCombinations';
d.extra_search_type = $('#ctrl-show-selected-combinations').val();
d.extra_search_params = {type: combinations.type, data: combinations.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.combinations.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.combinations); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "combination_reference"},
{data: "combination"},
{data: "combination_quantity"},
{data: "product_id"},
{data: "product_image"},
{data: "product_name"},
{data: "product_reference"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#combinations_select_info').length === 0) {
$('#combinations_table_info').append('<span id="combinations_select_info" class="select_info"></span>');
}
updateCombinationsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (combinations.type === 'unselected') {
index = combinations.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
combinations.data.splice(index, 1);
}
} else {
if (index === -1) {
combinations.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = combinations.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
combinations.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
combinations.data.splice(index, 1);
}
}
}
updateCombinationsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allCombinationsClicked) {
if (selected) {
combinations.type = 'unselected';
} else {
combinations.type = 'selected';
}
combinations.data = [];
allCombinationsClicked = false;
}
updateCombinationsSelectInfo();
if (!indeterminate && combinations.data.length !== 0 && parseInt(combinations.total) !== combinations.data.length) {
$('#combinations_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (combinations.type === 'unselected') {
if (combinations.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (combinations.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "90px",
},
{
targets: 5,
width: "80px",
className: "dt-center",
},
{
targets: 6,
width: "80px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: [1, 4],
className: "dt-center"
}
],
select: {
style: 'os multi',
info: false
}
});
combinationsTable.on('xhr', function () {
var json = combinationsTable.ajax.json();
combinations.total = json.recordsTotal;
});
$('#combinations_table th.dt-checkboxes-select-all').click(function () {
allCombinationsClicked = true;
});
$('#ctrl-show-selected-combinations').on('change', function () {
combinationsTable.ajax.reload();
});
var collectCombinations = function () {
$('#combination_export_form input[name="combinations_type"]').remove();
$('#combination_export_form input[name="combinations_data"]').remove();
$('#combination_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "combinations_type").val(combinations.type));
$('#combination_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "combinations_data").val(combinations.data));
};
}
if (typeof setAttributesTable !== 'undefined') {
function updateAttributesSelectInfo() {
var length = attributes.type === 'selected' ? attributes.data.length : attributes.total - attributes.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#attributes_select_info').text(lengthText);
}
var attributes = {type: "unselected", data: [], total: initialData.attributes.recordsTotal, filtered: initialData.attributes.recordsFiltered};
var allAttributesClicked = false;
var attributesTable = $('#attributes_table').DataTable({
order: [[1, 'asc']],
data: initialData.attributes.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.attributes.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getAttributes';
d.extra_search_type = $('#ctrl-show-selected-attributes').val();
d.extra_search_params = {type: attributes.type, data: attributes.data};
if (skipAjax) {
filterTables.attributes.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.attributes);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "group_name"},
{data: "attribute_name"},
{data: "group_type"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#attributes_select_info').length === 0) {
$('#attributes_table_info').append('<span id="attributes_select_info" class="select_info"></span>');
}
updateAttributesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (attributes.type === 'unselected') {
index = attributes.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
attributes.data.splice(index, 1);
}
} else {
if (index === -1) {
attributes.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = attributes.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
attributes.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
attributes.data.splice(index, 1);
}
}
}
updateAttributesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allAttributesClicked) {
if (selected) {
attributes.type = 'unselected';
} else {
attributes.type = 'selected';
}
attributes.data = [];
allAttributesClicked = false;
}
updateAttributesSelectInfo();
if (!indeterminate && attributes.data.length !== 0 && parseInt(attributes.total) !== attributes.data.length) {
$('#attributes_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (attributes.type === 'unselected') {
if (attributes.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (attributes.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
}
],
select: {
style: 'os multi',
info: false
}
});
attributesTable.on('xhr', function () {
var json = attributesTable.ajax.json();
attributes.total = json.recordsTotal;
});
$('#attributes_table th.dt-checkboxes-select-all').click(function () {
allAttributesClicked = true;
});
$('#ctrl-show-selected-attributes').on('change', function () {
attributesTable.ajax.reload();
});
var collectAttributes = function () {
$('#combination_export_form input[name="attributes_type"]').remove();
$('#combination_export_form input[name="attributes_data"]').remove();
$('#combination_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "attributes_type").val(attributes.type));
$('#combination_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "attributes_data").val(attributes.data));
};
}
if (typeof setFeaturesTable !== 'undefined') {
function updateFeaturesSelectInfo() {
var length = features.type === 'selected' ? features.data.length : features.total - features.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#features_select_info').text(lengthText);
}
var features = {type: "unselected", data: [], total: initialData.features.recordsTotal, filtered: initialData.features.recordsFiltered};
var allFeaturesClicked = false;
var featuresTable = $('#features_table').DataTable({
order: [[1, 'asc']],
data: initialData.features.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.features.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getFeatures';
d.extra_search_type = $('#ctrl-show-selected-features').val();
d.extra_search_params = {type: features.type, data: features.data};
if (skipAjax) {
filterTables.features.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.features);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "feature_name"},
{data: "feature_value"},
{data: "custom"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#features_select_info').length === 0) {
$('#features_table_info').append('<span id="features_select_info" class="select_info"></span>');
}
updateFeaturesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (features.type === 'unselected') {
index = features.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id.replace('"', '&quuot;'));
if (selected) {
if (index > -1) {
features.data.splice(index, 1);
}
} else {
if (index === -1) {
features.data.push(nodes.row(nodes.selector.rows[0]).data().id.replace('"', '&quuot;'));
}
}
} else {
index = features.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id.replace('"', '&quuot;'));
//
if (selected) {
if (index === -1) {
features.data.push(nodes.row(nodes.selector.rows[0]).data().id.replace('"', '&quuot;'));
}
} else {
if (index > -1) {
features.data.splice(index, 1);
}
}
}
updateFeaturesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allFeaturesClicked) {
if (selected) {
features.type = 'unselected';
} else {
features.type = 'selected';
}
features.data = [];
allFeaturesClicked = false;
}
updateFeaturesSelectInfo();
if (!indeterminate && features.data.length !== 0 && parseInt(features.total) !== features.data.length) {
$('#features_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (features.type === 'unselected') {
if (features.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (features.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 3,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
featuresTable.on('xhr', function () {
var json = featuresTable.ajax.json();
features.total = json.recordsTotal;
});
$('#features_table th.dt-checkboxes-select-all').click(function () {
allFeaturesClicked = true;
});
$('#ctrl-show-selected-features').on('change', function () {
featuresTable.ajax.reload();
});
var collectFeatures = function () {
$('#product_export_form input[name="features_type"]').remove();
$('#product_export_form input[name="features_data"]').remove();
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "features_type").val(features.type));
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "features_data").val(features.data));
};
}
if (typeof setManufacturersTable !== 'undefined') {
function updateManufacturersSelectInfo() {
var length = manufacturers.type === 'selected' ? manufacturers.data.length : manufacturers.total - manufacturers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#manufacturers_select_info').text(lengthText);
}
var manufacturers = {type: "unselected", data: [], total: initialData.manufacturers.recordsTotal, filtered: initialData.manufacturers.recordsFiltered};
var allManufacturersClicked = false;
var manufacturersTable = $('#manufacturers_table').DataTable({
order: [[1, 'asc']],
data: initialData.manufacturers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.manufacturers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getManufacturers';
d.extra_search_type = $('#ctrl-show-selected-manufacturers').val();
d.extra_search_params = {type: manufacturers.type, data: manufacturers.data};
if (skipAjax) {
filterTables.manufacturers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.manufacturers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "address_count"},
{data: "prod_count"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#manufacturers_select_info').length === 0) {
$('#manufacturers_table_info').append('<span id="manufacturers_select_info" class="select_info"></span>');
}
updateManufacturersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (manufacturers.type === 'unselected') {
index = manufacturers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
manufacturers.data.splice(index, 1);
}
} else {
if (index === -1) {
manufacturers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = manufacturers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
manufacturers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
manufacturers.data.splice(index, 1);
}
}
}
updateManufacturersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allManufacturersClicked) {
if (selected) {
manufacturers.type = 'unselected';
} else {
manufacturers.type = 'selected';
}
manufacturers.data = [];
allManufacturersClicked = false;
}
updateManufacturersSelectInfo();
if (!indeterminate && manufacturers.data.length !== 0 && parseInt(manufacturers.total) !== manufacturers.data.length) {
$('#manufacturers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (manufacturers.type === 'unselected') {
if (manufacturers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (manufacturers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
orderable: false,
className: "dt-center",
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 5,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 6,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
manufacturersTable.on('xhr', function () {
var json = manufacturersTable.ajax.json();
manufacturers.total = json.recordsTotal;
});
$('#manufacturers_table th.dt-checkboxes-select-all').click(function () {
allManufacturersClicked = true;
});
$('#ctrl-show-selected-manufacturers').on('change', function () {
manufacturersTable.ajax.reload();
});
var collectManufacturers = function () {
$('#product_export_form input[name="manufacturers_type"]').remove();
$('#product_export_form input[name="manufacturers_data"]').remove();
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "manufacturers_type").val(manufacturers.type));
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "manufacturers_data").val(manufacturers.data));
};
}
if (typeof setDiscountsTable !== 'undefined') {
function updateDiscountsSelectInfo() {
var length = discounts.type === 'selected' ? discounts.data.length : discounts.total - discounts.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#discounts_select_info').text(lengthText);
}
var discounts = {type: "unselected", data: [], total: initialData.discounts.recordsTotal, filtered: initialData.discounts.recordsFiltered};
var allDiscountsClicked = false;
var discountsTable = $('#discounts_table').DataTable({
order: [[1, 'asc']],
data: initialData.discounts.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.discounts.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getDiscounts';
d.extra_search_type = $('#ctrl-show-selected-discounts').val();
d.extra_search_params = {type: discounts.type, data: discounts.data};
if (skipAjax) {
filterTables.discounts.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.discounts);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "spr_name"},
{data: "prod_name"},
{data: "reduction"},
{data: "from_to"},
{data: "price"},
{data: "from_quantity"},
{data: "group_name"},
{data: "is_rule"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#discounts_select_info').length === 0) {
$('#discounts_table_info').append('<span id="discounts_select_info" class="select_info"></span>');
}
updateDiscountsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (discounts.type === 'unselected') {
index = discounts.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
discounts.data.splice(index, 1);
}
} else {
if (index === -1) {
discounts.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = discounts.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
discounts.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
discounts.data.splice(index, 1);
}
}
}
updateDiscountsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allDiscountsClicked) {
if (selected) {
discounts.type = 'unselected';
} else {
discounts.type = 'selected';
}
discounts.data = [];
allDiscountsClicked = false;
}
updateDiscountsSelectInfo();
if (!indeterminate && discounts.data.length !== 0 && parseInt(discounts.total) !== discounts.data.length) {
$('#discounts_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (discounts.type === 'unselected') {
if (discounts.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (discounts.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
// {
// targets: 1,
// width: "70px"
// },
{
targets: 1,
// width: "30%",
orderable: false,
className: "dt-center",
render: function (data, type, row, meta) {
return data ? data : '--';
}
},
{
targets: 7,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 8,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
discountsTable.on('xhr', function () {
var json = discountsTable.ajax.json();
discounts.total = json.recordsTotal;
});
$('#discounts_table th.dt-checkboxes-select-all').click(function () {
allDiscountsClicked = true;
});
$('#ctrl-show-selected-discounts').on('change', function () {
discountsTable.ajax.reload();
});
var collectDiscounts = function () {
$('#discount_export_form input[name="discounts_type"]').remove();
$('#discount_export_form input[name="discounts_data"]').remove();
$('#discount_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "discounts_type").val(discounts.type));
$('#discount_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "discounts_data").val(discounts.data));
};
}
if (typeof setBrandsTable !== 'undefined') {
function updateBrandsSelectInfo() {
var length = brands.type === 'selected' ? brands.data.length : brands.total - brands.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#brands_select_info').text(lengthText);
}
var brands = {type: "unselected", data: [], total: initialData.brands.recordsTotal, filtered: initialData.brands.recordsFiltered};
var allBrandsClicked = false;
var brandsTable = $('#brands_table').DataTable({
order: [[1, 'asc']],
data: initialData.brands.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.brands.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getManufacturers';
d.extra_search_type = $('#ctrl-show-selected-brands').val();
d.extra_search_params = {type: brands.type, data: brands.data};
if (skipAjax) {
filterTables.brands.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.brands);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "address_count"},
{data: "prod_count"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#brands_select_info').length === 0) {
$('#brands_table_info').append('<span id="brands_select_info" class="select_info"></span>');
}
updateBrandsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (brands.type === 'unselected') {
index = brands.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
brands.data.splice(index, 1);
}
} else {
if (index === -1) {
brands.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = brands.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
brands.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
brands.data.splice(index, 1);
}
}
}
updateBrandsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allBrandsClicked) {
if (selected) {
brands.type = 'unselected';
} else {
brands.type = 'selected';
}
brands.data = [];
allBrandsClicked = false;
}
updateBrandsSelectInfo();
if (!indeterminate && brands.data.length !== 0 && parseInt(brands.total) !== brands.data.length) {
$('#brands_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (brands.type === 'unselected') {
if (brands.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (brands.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
orderable: false,
className: "dt-center",
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 5,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 6,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
brandsTable.on('xhr', function () {
var json = brandsTable.ajax.json();
brands.total = json.recordsTotal;
});
$('#brands_table th.dt-checkboxes-select-all').click(function () {
allBrandsClicked = true;
});
$('#ctrl-show-selected-brands').on('change', function () {
brandsTable.ajax.reload();
});
var collectBrands = function () {
$('#brand_export_form input[name="brands_type"]').remove();
$('#brand_export_form input[name="brands_data"]').remove();
$('#brand_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "brands_type").val(brands.type));
$('#brand_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "brands_data").val(brands.data));
};
}
if (typeof setWarehousesTable !== 'undefined') {
function updateWarehousesSelectInfo() {
var length = warehouses.type === 'selected' ? warehouses.data.length : warehouses.total - warehouses.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#warehouses_select_info').text(lengthText);
}
var warehouses = {type: "unselected", data: [], total: initialData.warehouses.recordsTotal, filtered: initialData.warehouses.recordsFiltered};
var allWarehousesClicked = false;
var warehousesTable = $('#warehouses_table').DataTable({
order: [[1, 'asc']],
data: initialData.warehouses.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.warehouses.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getWarehouses';
d.extra_search_type = $('#ctrl-show-selected-warehouses').val();
d.extra_search_cparams = {type: warehouses.type, data: warehouses.data};
if (skipAjax) {
filterTables.warehouses.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.warehouses);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "reference"},
{data: "name"},
{data: "management_type"},
{data: "iso_code"},
{data: "address1"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#warehouses_select_info').length === 0) {
$('#warehouses_table_info').append('<span id="warehouses_select_info" class="select_info"></span>');
}
updateWarehousesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (warehouses.type === 'unselected') {
index = warehouses.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
warehouses.data.splice(index, 1);
}
} else {
if (index === -1) {
warehouses.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = warehouses.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
warehouses.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
warehouses.data.splice(index, 1);
}
}
}
updateWarehousesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allWarehousesClicked) {
if (selected) {
warehouses.type = 'unselected';
} else {
warehouses.type = 'selected';
}
warehouses.data = [];
allWarehousesClicked = false;
}
updateWarehousesSelectInfo();
if (!indeterminate && warehouses.data.length !== 0 && parseInt(warehouses.total) !== warehouses.data.length) {
$('#warehouses_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (warehouses.type === 'unselected') {
if (warehouses.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (warehouses.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
}
],
select: {
style: 'os multi',
info: false
}
});
warehousesTable.on('xhr', function () {
var json = warehousesTable.ajax.json();
warehouses.total = json.recordsTotal;
});
$('#warehouses_table th.dt-checkboxes-select-all').click(function () {
allWarehousesClicked = true;
});
$('#ctrl-show-selected-warehouses').on('change', function () {
warehousesTable.ajax.reload();
});
var collectWarehouses = function () {
$('#warehouse_export_form input[name="warehouses_type"]').remove();
$('#warehouse_export_form input[name="warehouses_data"]').remove();
$('#warehouse_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "warehouses_type").val(warehouses.type));
$('#warehouse_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "warehouses_data").val(warehouses.data));
};
}
if (typeof setPacksTable !== 'undefined') {
function updatePacksSelectInfo() {
var length = packs.type === 'selected' ? packs.data.length : packs.total - packs.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#packs_select_info').text(lengthText);
}
var packs = {type: "unselected", data: [], total: initialData.packs.recordsTotal, filtered: initialData.packs.recordsFiltered};
var allPacksClicked = false;
var packsTable = $('#packs_table').DataTable({
order: [[1, 'asc']],
data: initialData.packs.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.packs.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getPacks';
d.extra_search_type = $('#ctrl-show-selected-packs').val();
d.extra_search_cparams = {type: packs.type, data: packs.data};
if (skipAjax) {
filterTables.packs.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.packs);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "pack_name"},
{data: "product_id"},
{data: "product_name"},
{data: "product_reference"},
{data: "combination_reference"},
{data: "name_values"},
{data: "quantity"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#packs_select_info').length === 0) {
$('#packs_table_info').append('<span id="packs_select_info" class="select_info"></span>');
}
updatePacksSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (packs.type === 'unselected') {
index = packs.data.indexOf(nodes.row(nodes.selector.rows[0]).data().unique_id);
if (selected) {
if (index > -1) {
packs.data.splice(index, 1);
}
} else {
if (index === -1) {
packs.data.push(nodes.row(nodes.selector.rows[0]).data().unique_id);
}
}
} else {
index = packs.data.indexOf(nodes.row(nodes.selector.rows[0]).data().unique_id);
//
if (selected) {
if (index === -1) {
packs.data.push(nodes.row(nodes.selector.rows[0]).data().unique_id);
}
} else {
if (index > -1) {
packs.data.splice(index, 1);
}
}
}
updatePacksSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allPacksClicked) {
if (selected) {
packs.type = 'unselected';
} else {
packs.type = 'selected';
}
packs.data = [];
allPacksClicked = false;
}
updatePacksSelectInfo();
if (!indeterminate && packs.data.length !== 0 && parseInt(packs.total) !== packs.data.length) {
$('#packs_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (packs.type === 'unselected') {
if (packs.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (packs.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
width: "110px",
className: "dt-center"
},
{
targets: 6,
width: "200px",
className: "dt-center"
},
{
targets: 8,
width: "90px",
className: "dt-center"
}
],
select: {
style: 'os multi',
info: false
}
});
packsTable.on('xhr', function () {
var json = packsTable.ajax.json();
packs.total = json.recordsTotal;
});
$('#packs_table th.dt-checkboxes-select-all').click(function () {
allPacksClicked = true;
});
$('#ctrl-show-selected-packs').on('change', function () {
packsTable.ajax.reload();
});
var collectPacks = function () {
$('#pack_export_form input[name="packs_type"]').remove();
$('#pack_export_form input[name="packs_data"]').remove();
$('#pack_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "packs_type").val(packs.type));
$('#pack_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "packs_data").val(packs.data));
};
}
if (typeof setAliasesTable !== 'undefined') {
function updateAliasesSelectInfo() {
var length = aliases.type === 'selected' ? aliases.data.length : aliases.total - aliases.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#aliases_select_info').text(lengthText);
}
var aliases = {type: "unselected", data: [], total: initialData.aliases.recordsTotal, filtered: initialData.aliases.recordsFiltered};
var allAliasesClicked = false;
var aliasesTable = $('#aliases_table').DataTable({
order: [[1, 'asc']],
data: initialData.aliases.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.aliases.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getAliases';
d.extra_search_type = $('#ctrl-show-selected-aliases').val();
d.extra_search_params = {type: aliases.type, data: aliases.data};
if (skipAjax) {
filterTables.aliases.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.aliases);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "alias"},
{data: "search"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#aliases_select_info').length === 0) {
$('#aliases_table_info').append('<span id="aliases_select_info" class="select_info"></span>');
}
updateAliasesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (aliases.type === 'unselected') {
index = aliases.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
aliases.data.splice(index, 1);
}
} else {
if (index === -1) {
aliases.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = aliases.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
aliases.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
aliases.data.splice(index, 1);
}
}
}
updateAliasesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allAliasesClicked) {
if (selected) {
aliases.type = 'unselected';
} else {
aliases.type = 'selected';
}
aliases.data = [];
allAliasesClicked = false;
}
updateAliasesSelectInfo();
if (!indeterminate && aliases.data.length !== 0 && parseInt(aliases.total) !== aliases.data.length) {
$('#aliases_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (aliases.type === 'unselected') {
if (aliases.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (aliases.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 4,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
aliasesTable.on('xhr', function () {
var json = aliasesTable.ajax.json();
aliases.total = json.recordsTotal;
});
$('#aliases_table th.dt-checkboxes-select-all').click(function () {
allAliasesClicked = true;
});
$('#ctrl-show-selected-aliases').on('change', function () {
aliasesTable.ajax.reload();
});
var collectAliases = function () {
$('#alias_export_form input[name="aliases_type"]').remove();
$('#alias_export_form input[name="aliases_data"]').remove();
$('#alias_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "aliases_type").val(aliases.type));
$('#alias_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "aliases_data").val(aliases.data));
};
}
if (typeof setSuppliersTable !== 'undefined') {
function updateSuppliersSelectInfo() {
var length = suppliers.type === 'selected' ? suppliers.data.length : suppliers.total - suppliers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#suppliers_select_info').text(lengthText);
}
var suppliers = {type: "unselected", data: [], total: initialData.suppliers.recordsTotal, filtered: initialData.suppliers.recordsFiltered};
var allSuppliersClicked = false;
var suppliersTable = $('#suppliers_table').DataTable({
order: [[1, 'asc']],
data: initialData.suppliers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.suppliers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getSuppliers';
d.extra_search_type = $('#ctrl-show-selected-suppliers').val();
d.extra_search_params = {type: suppliers.type, data: suppliers.data};
if (skipAjax) {
filterTables.suppliers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.suppliers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "prod_count"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#suppliers_select_info').length === 0) {
$('#suppliers_table_info').append('<span id="suppliers_select_info" class="select_info"></span>');
}
updateSuppliersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (suppliers.type === 'unselected') {
index = suppliers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
suppliers.data.splice(index, 1);
}
} else {
if (index === -1) {
suppliers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = suppliers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
suppliers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
suppliers.data.splice(index, 1);
}
}
}
updateSuppliersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allSuppliersClicked) {
if (selected) {
suppliers.type = 'unselected';
} else {
suppliers.type = 'selected';
}
suppliers.data = [];
allSuppliersClicked = false;
}
updateSuppliersSelectInfo();
if (!indeterminate && suppliers.data.length !== 0 && parseInt(suppliers.total) !== suppliers.data.length) {
$('#suppliers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (suppliers.type === 'unselected') {
if (suppliers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (suppliers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 5,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
suppliersTable.on('xhr', function () {
var json = suppliersTable.ajax.json();
suppliers.total = json.recordsTotal;
});
$('#suppliers_table th.dt-checkboxes-select-all').click(function () {
allSuppliersClicked = true;
});
$('#ctrl-show-selected-suppliers').on('change', function () {
suppliersTable.ajax.reload();
});
var collectSuppliers = function () {
$('#product_export_form input[name="suppliers_type"]').remove();
$('#product_export_form input[name="suppliers_data"]').remove();
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "suppliers_type").val(suppliers.type));
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "suppliers_data").val(suppliers.data));
};
}
if (typeof setStoresTable !== 'undefined') {
function updateStoresSelectInfo() {
var length = stores.type === 'selected' ? stores.data.length : stores.total - stores.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#stores_select_info').text(lengthText);
}
var stores = {type: "unselected", data: [], total: initialData.stores.recordsTotal, filtered: initialData.stores.recordsFiltered};
var allStoresClicked = false;
var storesTable = $('#stores_table').DataTable({
order: [[1, 'asc']],
data: initialData.stores.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.stores.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getStores';
d.extra_search_type = $('#ctrl-show-selected-stores').val();
d.extra_search_params = {type: stores.type, data: stores.data};
if (skipAjax) {
filterTables.stores.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.stores);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "address1"},
{data: "city"},
{data: "postcode"},
{data: "state_name"},
{data: "country_name"},
{data: "phone"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#stores_select_info').length === 0) {
$('#stores_table_info').append('<span id="stores_select_info" class="select_info"></span>');
}
updateStoresSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (stores.type === 'unselected') {
index = stores.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
stores.data.splice(index, 1);
}
} else {
if (index === -1) {
stores.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = stores.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
stores.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
stores.data.splice(index, 1);
}
}
}
updateStoresSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allStoresClicked) {
if (selected) {
stores.type = 'unselected';
} else {
stores.type = 'selected';
}
stores.data = [];
allStoresClicked = false;
}
updateStoresSelectInfo();
if (!indeterminate && stores.data.length !== 0 && parseInt(stores.total) !== stores.data.length) {
$('#stores_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (stores.type === 'unselected') {
if (stores.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (stores.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
// {
// targets: 4,
// width: "90px",
// className: "dt-center",
// render: function (data, type, row, meta) {
// return parseInt(data) ? data : '--';
// }
// },
{
targets: 10,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
storesTable.on('xhr', function () {
var json = storesTable.ajax.json();
stores.total = json.recordsTotal;
});
$('#stores_table th.dt-checkboxes-select-all').click(function () {
allStoresClicked = true;
});
$('#ctrl-show-selected-stores').on('change', function () {
storesTable.ajax.reload();
});
var collectStores = function () {
$('#store_export_form input[name="stores_type"]').remove();
$('#store_export_form input[name="stores_data"]').remove();
$('#store_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "stores_type").val(stores.type));
$('#store_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "stores_data").val(stores.data));
};
}
if (typeof setSuppliers2Table !== 'undefined') {
function updateSuppliers2SelectInfo() {
var length = suppliers2.type === 'selected' ? suppliers2.data.length : suppliers2.total - suppliers2.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#suppliers2_select_info').text(lengthText);
}
var suppliers2 = {type: "unselected", data: [], total: initialData.suppliers2.recordsTotal, filtered: initialData.suppliers2.recordsFiltered};
var allSuppliers2Clicked = false;
var suppliers2Table = $('#suppliers2_table').DataTable({
order: [[1, 'asc']],
data: initialData.suppliers2.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.suppliers2.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getSuppliers';
d.extra_search_type = $('#ctrl-show-selected-suppliers2').val();
d.extra_search_params = {type: suppliers2.type, data: suppliers2.data};
if (skipAjax) {
filterTables.suppliers2.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.suppliers2);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "prod_count"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#suppliers2_select_info').length === 0) {
$('#suppliers2_table_info').append('<span id="suppliers2_select_info" class="select_info"></span>');
}
updateSuppliers2SelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (suppliers2.type === 'unselected') {
index = suppliers2.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
suppliers2.data.splice(index, 1);
}
} else {
if (index === -1) {
suppliers2.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = suppliers2.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
suppliers2.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
suppliers2.data.splice(index, 1);
}
}
}
updateSuppliers2SelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allSuppliers2Clicked) {
if (selected) {
suppliers2.type = 'unselected';
} else {
suppliers2.type = 'selected';
}
suppliers2.data = [];
allSuppliers2Clicked = false;
}
updateSuppliers2SelectInfo();
if (!indeterminate && suppliers2.data.length !== 0 && parseInt(suppliers2.total) !== suppliers2.data.length) {
$('#suppliers2_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (suppliers2.type === 'unselected') {
if (suppliers2.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (suppliers2.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 5,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
suppliers2Table.on('xhr', function () {
var json = suppliers2Table.ajax.json();
suppliers2.total = json.recordsTotal;
});
$('#suppliers2_table th.dt-checkboxes-select-all').click(function () {
allSuppliers2Clicked = true;
});
$('#ctrl-show-selected-suppliers2').on('change', function () {
suppliers2Table.ajax.reload();
});
var collectSuppliers2 = function () {
$('#supplier_export_form input[name="suppliers2_type"]').remove();
$('#supplier_export_form input[name="suppliers2_data"]').remove();
$('#supplier_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "suppliers2_type").val(suppliers2.type));
$('#supplier_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "suppliers2_data").val(suppliers2.data));
};
}
if (typeof setCarriersTable !== 'undefined') {
function updateCarriersSelectInfo() {
var length = carriers.type === 'selected' ? carriers.data.length : carriers.total - carriers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#carriers_select_info').text(lengthText);
}
var carriers = {type: "unselected", data: [], total: initialData.carriers.recordsTotal, filtered: initialData.carriers.recordsFiltered};
var allCarriersClicked = false;
var carriersTable = $('#carriers_table').DataTable({
order: [[1, 'asc']],
data: initialData.carriers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.carriers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCarriers';
d.extra_search_type = $('#ctrl-show-selected-carriers').val();
d.extra_search_params = {type: carriers.type, data: carriers.data};
if (skipAjax) {
filterTables.carriers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.carriers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "reference"},
{data: "id"},
{data: "reference"},
{data: "name"},
{data: "logo"},
{data: "delay"},
{data: "enabled"},
{data: "is_free"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#carriers_select_info').length === 0) {
$('#carriers_table_info').append('<span id="carriers_select_info" class="select_info"></span>');
}
updateCarriersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (carriers.type === 'unselected') {
index = carriers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().reference);
if (selected) {
if (index > -1) {
carriers.data.splice(index, 1);
}
} else {
if (index === -1) {
carriers.data.push(nodes.row(nodes.selector.rows[0]).data().reference);
}
}
} else {
index = carriers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().reference);
//
if (selected) {
if (index === -1) {
carriers.data.push(nodes.row(nodes.selector.rows[0]).data().reference);
}
} else {
if (index > -1) {
carriers.data.splice(index, 1);
}
}
}
updateCarriersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allCarriersClicked) {
if (selected) {
carriers.type = 'unselected';
} else {
carriers.type = 'selected';
}
carriers.data = [];
allCarriersClicked = false;
}
updateCarriersSelectInfo();
if (!indeterminate && carriers.data.length !== 0 && parseInt(carriers.total) !== carriers.data.length) {
$('#carriers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (carriers.type === 'unselected') {
if (carriers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (carriers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
width: "70px"
},
{
targets: 4,
// width: "90px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 6,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 7,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
carriersTable.on('xhr', function () {
var json = carriersTable.ajax.json();
carriers.total = json.recordsTotal;
});
$('#carriers_table th.dt-checkboxes-select-all').click(function () {
allCarriersClicked = true;
});
$('#ctrl-show-selected-carriers').on('change', function () {
carriersTable.ajax.reload();
});
var collectCarriers = function () {
$('#product_export_form input[name="carriers_type"]').remove();
$('#product_export_form input[name="carriers_data"]').remove();
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "carriers_type").val(carriers.type));
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "carriers_data").val(carriers.data));
};
}
if (typeof setCarriers2Table !== 'undefined') {
function updateCarriers2SelectInfo() {
var length = carriers2.type === 'selected' ? carriers2.data.length : carriers2.total - carriers2.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#carriers2_select_info').text(lengthText);
}
var carriers2 = {type: "unselected", data: [], total: initialData.carriers2.recordsTotal, filtered: initialData.carriers2.recordsFiltered};
var allCarriers2Clicked = false;
var carriers2Table = $('#carriers2_table').DataTable({
order: [[1, 'asc']],
data: initialData.carriers2.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.carriers2.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCarriers';
d.extra_search_type = $('#ctrl-show-selected-carriers2').val();
d.extra_search_params = {type: carriers2.type, data: carriers2.data};
if (skipAjax) {
filterTables.carriers2.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.carriers2);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "reference"},
{data: "id"},
{data: "reference"},
{data: "name"},
{data: "logo"},
{data: "delay"},
{data: "enabled"},
{data: "is_free"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#carriers2_select_info').length === 0) {
$('#carriers2_table_info').append('<span id="carriers2_select_info" class="select_info"></span>');
}
updateCarriers2SelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (carriers2.type === 'unselected') {
index = carriers2.data.indexOf(nodes.row(nodes.selector.rows[0]).data().reference);
if (selected) {
if (index > -1) {
carriers2.data.splice(index, 1);
}
} else {
if (index === -1) {
carriers2.data.push(nodes.row(nodes.selector.rows[0]).data().reference);
}
}
} else {
index = carriers2.data.indexOf(nodes.row(nodes.selector.rows[0]).data().reference);
//
if (selected) {
if (index === -1) {
carriers2.data.push(nodes.row(nodes.selector.rows[0]).data().reference);
}
} else {
if (index > -1) {
carriers2.data.splice(index, 1);
}
}
}
updateCarriers2SelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allCarriers2Clicked) {
if (selected) {
carriers2.type = 'unselected';
} else {
carriers2.type = 'selected';
}
carriers2.data = [];
allCarriers2Clicked = false;
}
updateCarriers2SelectInfo();
if (!indeterminate && carriers2.data.length !== 0 && parseInt(carriers2.total) !== carriers2.data.length) {
$('#carriers2_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (carriers2.type === 'unselected') {
if (carriers2.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (carriers2.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
width: "70px"
},
{
targets: 4,
// width: "90px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 6,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 7,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
carriers2Table.on('xhr', function () {
var json = carriers2Table.ajax.json();
carriers2.total = json.recordsTotal;
});
$('#carriers2_table th.dt-checkboxes-select-all').click(function () {
allCarriers2Clicked = true;
});
$('#ctrl-show-selected-carriers2').on('change', function () {
carriers2Table.ajax.reload();
});
var collectCarriers2 = function () {
$('#product_export_form input[name="carriers2_type"]').remove();
$('#product_export_form input[name="carriers2_data"]').remove();
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "carriers2_type").val(carriers2.type));
$('#product_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "carriers2_data").val(carriers2.data));
};
}
if (typeof setGroupsTable !== 'undefined') {
function updateGroupsSelectInfo() {
var length = groups.type === 'selected' ? groups.data.length : groups.total - groups.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#groups_select_info').text(lengthText);
}
var groups = {type: "unselected", data: [], total: initialData.groups.recordsTotal, filtered: initialData.groups.recordsFiltered};
var allGroupsClicked = false;
var groupsTable = $('#groups_table').DataTable({
order: [[1, 'asc']],
data: initialData.groups.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.groups.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getGroups';
d.extra_search_type = $('#ctrl-show-selected-groups').val();
d.extra_search_params = {type: groups.type, data: groups.data};
if (skipAjax) {
filterTables.groups.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.groups);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "reduction"},
{data: "members"},
{data: "show_prices"},
{data: "date_add"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#groups_select_info').length === 0) {
$('#groups_table_info').append('<span id="groups_select_info" class="select_info"></span>');
}
updateGroupsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (groups.type === 'unselected') {
index = groups.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
groups.data.splice(index, 1);
}
} else {
if (index === -1) {
groups.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = groups.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
groups.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
groups.data.splice(index, 1);
}
}
}
updateGroupsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allGroupsClicked) {
if (selected) {
groups.type = 'unselected';
} else {
groups.type = 'selected';
}
groups.data = [];
allGroupsClicked = false;
}
updateGroupsSelectInfo();
if (!indeterminate && groups.data.length !== 0 && parseInt(groups.total) !== groups.data.length) {
$('#groups_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (groups.type === 'unselected') {
if (groups.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (groups.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
// width: "220px",
render: function (data, type, row, meta) {
return data + '%';
}
},
{
targets: 4,
className: "dt-center"
},
{
targets: 5,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
groupsTable.on('xhr', function () {
var json = groupsTable.ajax.json();
groups.total = json.recordsTotal;
});
$('#groups_table th.dt-checkboxes-select-all').click(function () {
allGroupsClicked = true;
});
$('#ctrl-show-selected-groups').on('change', function () {
groupsTable.ajax.reload();
});
var collectGroups = function () {
$('#customer_export_form input[name="groups_type"]').remove();
$('#customer_export_form input[name="groups_data"]').remove();
$('#customer_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "groups_type").val(groups.type));
$('#customer_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "groups_data").val(groups.data));
};
}
if (typeof setGroups2Table !== 'undefined') {
function updateGroups2SelectInfo() {
var length = groups2.type === 'selected' ? groups2.data.length : groups2.total - groups2.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#groups2_select_info').text(lengthText);
}
var groups2 = {type: "unselected", data: [], total: initialData.groups2.recordsTotal, filtered: initialData.groups2.recordsFiltered};
var allGroups2Clicked = false;
var groups2Table = $('#groups2_table').DataTable({
order: [[1, 'asc']],
data: initialData.groups2.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.groups2.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getGroups';
d.extra_search_type = $('#ctrl-show-selected-groups2').val();
d.extra_search_params = {type: groups2.type, data: groups2.data};
if (skipAjax) {
filterTables.groups2.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.groups2);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "reduction"},
{data: "members"},
{data: "show_prices"},
{data: "date_add"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#groups2_select_info').length === 0) {
$('#groups2_table_info').append('<span id="groups2_select_info" class="select_info"></span>');
}
updateGroups2SelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (groups2.type === 'unselected') {
index = groups2.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
groups2.data.splice(index, 1);
}
} else {
if (index === -1) {
groups2.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = groups2.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
groups2.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
groups2.data.splice(index, 1);
}
}
}
updateGroups2SelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allGroups2Clicked) {
if (selected) {
groups2.type = 'unselected';
} else {
groups2.type = 'selected';
}
groups2.data = [];
allGroups2Clicked = false;
}
updateGroups2SelectInfo();
if (!indeterminate && groups2.data.length !== 0 && parseInt(groups2.total) !== groups2.data.length) {
$('#groups2_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (groups2.type === 'unselected') {
if (groups2.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (groups2.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
// width: "220px",
render: function (data, type, row, meta) {
return data + '%';
}
},
{
targets: 4,
className: "dt-center"
},
{
targets: 5,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
groups2Table.on('xhr', function () {
var json = groups2Table.ajax.json();
groups2.total = json.recordsTotal;
});
$('#groups2_table th.dt-checkboxes-select-all').click(function () {
allGroups2Clicked = true;
});
$('#ctrl-show-selected-groups2').on('change', function () {
groups2Table.ajax.reload();
});
var collectGroups2 = function () {
$('#group_export_form input[name="groups2_type"]').remove();
$('#group_export_form input[name="groups2_data"]').remove();
$('#group_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "groups2_type").val(groups2.type));
$('#group_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "groups2_data").val(groups2.data));
};
}
if (typeof setFeaturesForFeaturesTable !== 'undefined') {
function updateFeaturesForFeaturesSelectInfo() {
var length = featuresForFeatures.type === 'selected' ? featuresForFeatures.data.length : featuresForFeatures.total - featuresForFeatures.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#featuresForFeatures_select_info').text(lengthText);
}
var featuresForFeatures = {type: "unselected", data: [], total: initialData.featuresForFeatures.recordsTotal, filtered: initialData.featuresForFeatures.recordsFiltered};
var allFeaturesForFeaturesClicked = false;
var featuresForFeaturesTable = $('#featuresForFeatures_table').DataTable({
order: [[1, 'asc']],
data: initialData.featuresForFeatures.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.featuresForFeatures.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getFeaturesForFeatures';
d.extra_search_type = $('#ctrl-show-selected-featuresForFeatures').val();
d.extra_search_params = {type: featuresForFeatures.type, data: featuresForFeatures.data};
if (skipAjax) {
filterTables.featuresForFeatures.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.featuresForFeatures);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "position"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#featuresForFeatures_select_info').length === 0) {
$('#featuresForFeatures_table_info').append('<span id="featuresForFeatures_select_info" class="select_info"></span>');
}
updateFeaturesForFeaturesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (featuresForFeatures.type === 'unselected') {
index = featuresForFeatures.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
featuresForFeatures.data.splice(index, 1);
}
} else {
if (index === -1) {
featuresForFeatures.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = featuresForFeatures.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
featuresForFeatures.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
featuresForFeatures.data.splice(index, 1);
}
}
}
updateFeaturesForFeaturesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allFeaturesForFeaturesClicked) {
if (selected) {
featuresForFeatures.type = 'unselected';
} else {
featuresForFeatures.type = 'selected';
}
featuresForFeatures.data = [];
allFeaturesForFeaturesClicked = false;
}
updateFeaturesForFeaturesSelectInfo();
if (!indeterminate && featuresForFeatures.data.length !== 0 && parseInt(featuresForFeatures.total) !== featuresForFeatures.data.length) {
$('#featuresForFeatures_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (featuresForFeatures.type === 'unselected') {
if (featuresForFeatures.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (featuresForFeatures.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
className: "dt-center"
}
],
select: {
style: 'os multi',
info: false
}
});
featuresForFeaturesTable.on('xhr', function () {
var json = featuresForFeaturesTable.ajax.json();
featuresForFeatures.total = json.recordsTotal;
});
$('#featuresForFeatures_table th.dt-checkboxes-select-all').click(function () {
allFeaturesForFeaturesClicked = true;
});
$('#ctrl-show-selected-featuresForFeatures').on('change', function () {
featuresForFeaturesTable.ajax.reload();
});
var collectFeaturesForFeatures = function () {
$('#feature_export_form input[name="featuresForFeatures_type"]').remove();
$('#feature_export_form input[name="featuresForFeatures_data"]').remove();
$('#feature_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "featuresForFeatures_type").val(featuresForFeatures.type));
$('#feature_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "featuresForFeatures_data").val(featuresForFeatures.data));
};
}
if (typeof setFeatureValuesTable !== 'undefined') {
function updateFeatureValuesSelectInfo() {
var length = featureValues.type === 'selected' ? featureValues.data.length : featureValues.total - featureValues.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#featureValues_select_info').text(lengthText);
}
var featureValues = {type: "unselected", data: [], total: initialData.featureValues.recordsTotal, filtered: initialData.featureValues.recordsFiltered};
var allFeatureValuesClicked = false;
var featureValuesTable = $('#featureValues_table').DataTable({
order: [[1, 'asc']],
data: initialData.featureValues.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.featureValues.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getFeatureValues';
d.extra_search_type = $('#ctrl-show-selected-featureValues').val();
d.extra_search_params = {type: featureValues.type, data: featureValues.data};
if (skipAjax) {
filterTables.featureValues.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.featureValues);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "value"},
{data: "custom"},
{data: "id_feature"},
{data: "feature_name"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#featureValues_select_info').length === 0) {
$('#featureValues_table_info').append('<span id="featureValues_select_info" class="select_info"></span>');
}
updateFeatureValuesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (featureValues.type === 'unselected') {
index = featureValues.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
featureValues.data.splice(index, 1);
}
} else {
if (index === -1) {
featureValues.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = featureValues.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
featureValues.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
featureValues.data.splice(index, 1);
}
}
}
updateFeatureValuesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allFeatureValuesClicked) {
if (selected) {
featureValues.type = 'unselected';
} else {
featureValues.type = 'selected';
}
featureValues.data = [];
allFeatureValuesClicked = false;
}
updateFeatureValuesSelectInfo();
if (!indeterminate && featureValues.data.length !== 0 && parseInt(featureValues.total) !== featureValues.data.length) {
$('#featureValues_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (featureValues.type === 'unselected') {
if (featureValues.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (featureValues.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
className: "dt-center"
}
],
select: {
style: 'os multi',
info: false
}
});
featureValuesTable.on('xhr', function () {
var json = featureValuesTable.ajax.json();
featureValues.total = json.recordsTotal;
});
$('#featureValues_table th.dt-checkboxes-select-all').click(function () {
allFeatureValuesClicked = true;
});
$('#ctrl-show-selected-featureValues').on('change', function () {
featureValuesTable.ajax.reload();
});
var collectFeatureValues = function () {
$('#feature_export_form input[name="featureValues_type"]').remove();
$('#feature_export_form input[name="featureValues_data"]').remove();
$('#feature_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "featureValues_type").val(featureValues.type));
$('#feature_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "featureValues_data").val(featureValues.data));
};
}
if (typeof setAttributeGroupsTable !== 'undefined') {
function updateAttributeGroupsSelectInfo() {
var length = attributeGroups.type === 'selected' ? attributeGroups.data.length : attributeGroups.total - attributeGroups.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#attributeGroups_select_info').text(lengthText);
}
var attributeGroups = {type: "unselected", data: [], total: initialData.attributeGroups.recordsTotal, filtered: initialData.attributeGroups.recordsFiltered};
var allAttributeGroupsClicked = false;
var attributeGroupsTable = $('#attributeGroups_table').DataTable({
order: [[1, 'asc']],
data: initialData.attributeGroups.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.attributeGroups.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getAttributeGroups';
d.extra_search_type = $('#ctrl-show-selected-attributeGroups').val();
d.extra_search_params = {type: attributeGroups.type, data: attributeGroups.data};
if (skipAjax) {
filterTables.attributeGroups.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.attributeGroups);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "public_name"},
{data: "group_type"},
{data: "position"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#attributeGroups_select_info').length === 0) {
$('#attributeGroups_table_info').append('<span id="attributeGroups_select_info" class="select_info"></span>');
}
updateAttributeGroupsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (attributeGroups.type === 'unselected') {
index = attributeGroups.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
attributeGroups.data.splice(index, 1);
}
} else {
if (index === -1) {
attributeGroups.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = attributeGroups.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
attributeGroups.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
attributeGroups.data.splice(index, 1);
}
}
}
updateAttributeGroupsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allAttributeGroupsClicked) {
if (selected) {
attributeGroups.type = 'unselected';
} else {
attributeGroups.type = 'selected';
}
attributeGroups.data = [];
allAttributeGroupsClicked = false;
}
updateAttributeGroupsSelectInfo();
if (!indeterminate && attributeGroups.data.length !== 0 && parseInt(attributeGroups.total) !== attributeGroups.data.length) {
$('#attributeGroups_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (attributeGroups.type === 'unselected') {
if (attributeGroups.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (attributeGroups.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
className: "dt-center"
}
],
select: {
style: 'os multi',
info: false
}
});
attributeGroupsTable.on('xhr', function () {
var json = attributeGroupsTable.ajax.json();
attributeGroups.total = json.recordsTotal;
});
$('#attributeGroups_table th.dt-checkboxes-select-all').click(function () {
allAttributeGroupsClicked = true;
});
$('#ctrl-show-selected-attributeGroups').on('change', function () {
attributeGroupsTable.ajax.reload();
});
var collectAttributeGroups = function () {
$('#attribute_export_form input[name="attributeGroups_type"]').remove();
$('#attribute_export_form input[name="attributeGroups_data"]').remove();
$('#attribute_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "attributeGroups_type").val(attributeGroups.type));
$('#attribute_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "attributeGroups_data").val(attributeGroups.data));
};
}
if (typeof setAttributeValuesTable !== 'undefined') {
function updateAttributeValuesSelectInfo() {
var length = attributeValues.type === 'selected' ? attributeValues.data.length : attributeValues.total - attributeValues.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#attributeValues_select_info').text(lengthText);
}
var attributeValues = {type: "unselected", data: [], total: initialData.attributeValues.recordsTotal, filtered: initialData.attributeValues.recordsFiltered};
var allAttributeValuesClicked = false;
var attributeValuesTable = $('#attributeValues_table').DataTable({
order: [[1, 'asc']],
data: initialData.attributeValues.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.attributeValues.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getAttributeValues';
d.extra_search_type = $('#ctrl-show-selected-attributeValues').val();
d.extra_search_params = {type: attributeValues.type, data: attributeValues.data};
if (skipAjax) {
filterTables.attributeValues.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.attributeValues);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "color"},
{data: "position"},
{data: "id_attribute_group"},
{data: "attribute_group_name"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#attributeValues_select_info').length === 0) {
$('#attributeValues_table_info').append('<span id="attributeValues_select_info" class="select_info"></span>');
}
updateAttributeValuesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (attributeValues.type === 'unselected') {
index = attributeValues.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
attributeValues.data.splice(index, 1);
}
} else {
if (index === -1) {
attributeValues.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = attributeValues.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
attributeValues.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
attributeValues.data.splice(index, 1);
}
}
}
updateAttributeValuesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allAttributeValuesClicked) {
if (selected) {
attributeValues.type = 'unselected';
} else {
attributeValues.type = 'selected';
}
attributeValues.data = [];
allAttributeValuesClicked = false;
}
updateAttributeValuesSelectInfo();
if (!indeterminate && attributeValues.data.length !== 0 && parseInt(attributeValues.total) !== attributeValues.data.length) {
$('#attributeValues_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (attributeValues.type === 'unselected') {
if (attributeValues.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (attributeValues.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
className: "dt-center"
}
],
select: {
style: 'os multi',
info: false
}
});
attributeValuesTable.on('xhr', function () {
var json = attributeValuesTable.ajax.json();
attributeValues.total = json.recordsTotal;
});
$('#attributeValues_table th.dt-checkboxes-select-all').click(function () {
allAttributeValuesClicked = true;
});
$('#ctrl-show-selected-attributeValues').on('change', function () {
attributeValuesTable.ajax.reload();
});
var collectAttributeValues = function () {
$('#attribute_export_form input[name="attributeValues_type"]').remove();
$('#attribute_export_form input[name="attributeValues_data"]').remove();
$('#attribute_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "attributeValues_type").val(attributeValues.type));
$('#attribute_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "attributeValues_data").val(attributeValues.data));
};
}
if (typeof setCustomersTable !== 'undefined') {
function updateCustomersSelectInfo() {
var length = customers.type === 'selected' ? customers.data.length : customers.total - customers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#customers_select_info').text(lengthText);
}
var customers = {type: "unselected", data: [], total: initialData.customers.recordsTotal, filtered: initialData.customers.recordsFiltered};
var allCustomersClicked = false;
var customersTable = $('#customers_table').DataTable({
order: [[1, 'asc']],
data: initialData.customers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.customers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCustomers';
d.extra_search_type = $('#ctrl-show-selected-customers').val();
d.extra_search_params = {type: customers.type, data: customers.data};
if (skipAjax) {
filterTables.customers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.customers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "gender"},
{data: "firstname"},
{data: "lastname"},
{data: "email"},
{data: "group"},
{data: "enabled"},
{data: "newsletter"},
// {data: "deleted"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#customers_select_info').length === 0) {
$('#customers_table_info').append('<span id="customers_select_info" class="select_info"></span>');
}
updateCustomersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (customers.type === 'unselected') {
index = customers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
customers.data.splice(index, 1);
}
} else {
if (index === -1) {
customers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = customers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
customers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
customers.data.splice(index, 1);
}
}
}
updateCustomersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allCustomersClicked) {
if (selected) {
customers.type = 'unselected';
} else {
customers.type = 'selected';
}
customers.data = [];
allCustomersClicked = false;
}
updateCustomersSelectInfo();
if (!indeterminate && customers.data.length !== 0 && parseInt(customers.total) !== customers.data.length) {
$('#customers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (customers.type === 'unselected') {
if (customers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (customers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 5,
width: "220px"
},
{
targets: 7,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 8,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
customersTable.on('xhr', function () {
var json = customersTable.ajax.json();
customers.total = json.recordsTotal;
});
$('#customers_table th.dt-checkboxes-select-all').click(function () {
allCustomersClicked = true;
});
$('#ctrl-show-selected-customers').on('change', function () {
customersTable.ajax.reload();
});
var collectCustomers = function () {
$('#customer_export_form input[name="customers_type"]').remove();
$('#customer_export_form input[name="customers_data"]').remove();
$('#customer_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "customers_type").val(customers.type));
$('#customer_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "customers_data").val(customers.data));
};
}
if (typeof setAddressesTable !== 'undefined') {
function updateAddressesSelectInfo() {
var length = addresses.type === 'selected' ? addresses.data.length : addresses.total - addresses.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#addresses_select_info').text(lengthText);
}
var addresses = {type: "unselected", data: [], total: initialData.addresses.recordsTotal, filtered: initialData.addresses.recordsFiltered};
var allAddressesClicked = false;
var addressesTable = $('#addresses_table').DataTable({
order: [[1, 'asc']],
data: initialData.addresses.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.addresses.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getAddresses';
d.extra_search_type = $('#ctrl-show-selected-addresses').val();
d.extra_search_params = {type: addresses.type, data: addresses.data};
if (skipAjax) {
filterTables.addresses.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.addresses);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "address1"},
{data: "country_name"},
{data: "city"},
{data: "firstname"},
{data: "lastname"},
{data: "email"},
{data: "brand_name"},
{data: "supplier_name"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#addresses_select_info').length === 0) {
$('#addresses_table_info').append('<span id="addresses_select_info" class="select_info"></span>');
}
updateAddressesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (addresses.type === 'unselected') {
index = addresses.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
addresses.data.splice(index, 1);
}
} else {
if (index === -1) {
addresses.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = addresses.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
addresses.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
addresses.data.splice(index, 1);
}
}
}
updateAddressesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allAddressesClicked) {
if (selected) {
addresses.type = 'unselected';
} else {
addresses.type = 'selected';
}
addresses.data = [];
allAddressesClicked = false;
}
updateAddressesSelectInfo();
if (!indeterminate && addresses.data.length !== 0 && parseInt(addresses.total) !== addresses.data.length) {
$('#addresses_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (addresses.type === 'unselected') {
if (addresses.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (addresses.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
}
],
select: {
style: 'os multi',
info: false
}
});
addressesTable.on('xhr', function () {
var json = addressesTable.ajax.json();
addresses.total = json.recordsTotal;
});
$('#addresses_table th.dt-checkboxes-select-all').click(function () {
allAddressesClicked = true;
});
$('#ctrl-show-selected-addresses').on('change', function () {
addressesTable.ajax.reload();
});
var collectAddresses = function () {
$('#address_export_form input[name="addresses_type"]').remove();
$('#address_export_form input[name="addresses_data"]').remove();
$('#address_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "addresses_type").val(addresses.type));
$('#address_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "addresses_data").val(addresses.data));
};
}
if (typeof setorder_ProductsTable !== 'undefined') {
function updateorder_ProductsSelectInfo() {
var length = order_products.type === 'selected' ? order_products.data.length : order_products.total - order_products.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_products_select_info').text(lengthText);
}
var order_products = {type: "unselected", data: [], total: initialData.order_products.recordsTotal, filtered: initialData.order_products.recordsFiltered};
var allorder_ProductsClicked = false;
var order_productsTable = $('#order_products_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_products.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.order_products.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getProducts';
d.extra_search_type = $('#ctrl-show-selected-order_products').val();
d.extra_search_params = {type: order_products.type, data: order_products.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.order_products.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.order_products); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "image"},
{data: "name"},
{data: "reference"},
{data: "category"},
{data: "base_price"},
{data: "final_price"},
{data: "quantity"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_products_select_info').length === 0) {
$('#order_products_table_info').append('<span id="order_products_select_info" class="select_info"></span>');
}
updateorder_ProductsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_products.type === 'unselected') {
index = order_products.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_products.data.splice(index, 1);
}
} else {
if (index === -1) {
order_products.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_products.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_products.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_products.data.splice(index, 1);
}
}
}
updateorder_ProductsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_ProductsClicked) {
if (selected) {
order_products.type = 'unselected';
} else {
order_products.type = 'selected';
}
order_products.data = [];
allorder_ProductsClicked = false;
}
updateorder_ProductsSelectInfo();
if (!indeterminate && order_products.data.length !== 0 && parseInt(order_products.total) !== order_products.data.length) {
$('#order_products_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_products.type === 'unselected') {
if (order_products.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_products.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
width: "80px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 6,
className: "dt-center"
},
{
targets: 7,
className: "dt-center"
},
{
targets: 8,
className: "dt-center"
},
{
targets: 9,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_productsTable.on('xhr', function () {
var json = order_productsTable.ajax.json();
order_products.total = json.recordsTotal;
});
$('#order_products_table th.dt-checkboxes-select-all').click(function () {
allorder_ProductsClicked = true;
});
$('#ctrl-show-selected-order_products').on('change', function () {
order_productsTable.ajax.reload();
});
var collectorder_Products = function () {
$('#order_export_form input[name="order_products_type"]').remove();
$('#order_export_form input[name="order_products_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_products_type").val(order_products.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_products_data").val(order_products.data));
};
}
if (typeof setorder_ShopsTable !== 'undefined') {
function updateorder_ShopsSelectInfo() {
var length = order_shops.type === 'selected' ? order_shops.data.length : order_shops.total - order_shops.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_shops_select_info').text(lengthText);
}
var order_shops = {type: "unselected", data: [], total: initialData.order_shops.recordsTotal, filtered: initialData.order_shops.recordsFiltered};
var allorder_ShopsClicked = false;
var order_shopsTable = $('#order_shops_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_shops.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.order_shops.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getorder_Shops';
d.extra_search_type = $('#ctrl-show-selected-order_shops').val();
d.extra_search_params = {type: order_shops.type, data: order_shops.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.order_shops.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.order_shops); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "sg_name"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_shops_select_info').length === 0) {
$('#order_shops_table_info').append('<span id="order_shops_select_info" class="select_info"></span>');
}
updateorder_ShopsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_shops.type === 'unselected') {
index = order_shops.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_shops.data.splice(index, 1);
}
} else {
if (index === -1) {
order_shops.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_shops.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_shops.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_shops.data.splice(index, 1);
}
}
}
updateorder_ShopsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_ShopsClicked) {
if (selected) {
order_shops.type = 'unselected';
} else {
order_shops.type = 'selected';
}
order_shops.data = [];
allorder_ShopsClicked = false;
}
updateorder_ShopsSelectInfo();
if (!indeterminate && order_shops.data.length !== 0 && parseInt(order_shops.total) !== order_shops.data.length) {
$('#order_shops_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_shops.type === 'unselected') {
if (order_shops.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_shops.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
}
],
select: {
style: 'os multi',
info: false
}
});
order_shopsTable.on('xhr', function () {
var json = order_shopsTable.ajax.json();
order_shops.total = json.recordsTotal;
});
$('#order_shops_table th.dt-checkboxes-select-all').click(function () {
allorder_ShopsClicked = true;
});
$('#ctrl-show-selected-order_shops').on('change', function () {
order_shopsTable.ajax.reload();
});
var collectorder_Shops = function () {
$('#order_export_form input[name="order_shops_type"]').remove();
$('#order_export_form input[name="order_shops_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_shops_type").val(order_shops.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_shops_data").val(order_shops.data));
};
}
if (typeof setorder_CartRulesTable !== 'undefined') {
function updateorder_CartRulesSelectInfo() {
var length = order_cartRules.type === 'selected' ? order_cartRules.data.length : order_cartRules.total - order_cartRules.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_cartRules_select_info').text(lengthText);
}
var order_cartRules = {type: "unselected", data: [], total: initialData.order_cartRules.recordsTotal, filtered: initialData.order_cartRules.recordsFiltered};
var allorder_CartRulesClicked = false;
var order_cartRulesTable = $('#order_cartRules_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_cartRules.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.order_cartRules.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getorder_CartRules';
d.extra_search_type = $('#ctrl-show-selected-order_cartRules').val();
d.extra_search_params = {type: order_cartRules.type, data: order_cartRules.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.order_cartRules.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.order_cartRules); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "priority"},
{data: "code"},
{data: "quantity"},
{data: "date_to"},
{data: "active"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_cartRules_select_info').length === 0) {
$('#order_cartRules_table_info').append('<span id="order_cartRules_select_info" class="select_info"></span>');
}
updateorder_CartRulesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_cartRules.type === 'unselected') {
index = order_cartRules.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_cartRules.data.splice(index, 1);
}
} else {
if (index === -1) {
order_cartRules.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_cartRules.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_cartRules.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_cartRules.data.splice(index, 1);
}
}
}
updateorder_CartRulesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_CartRulesClicked) {
if (selected) {
order_cartRules.type = 'unselected';
} else {
order_cartRules.type = 'selected';
}
order_cartRules.data = [];
allorder_CartRulesClicked = false;
}
updateorder_CartRulesSelectInfo();
if (!indeterminate && order_cartRules.data.length !== 0 && parseInt(order_cartRules.total) !== order_cartRules.data.length) {
$('#order_cartRules_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_cartRules.type === 'unselected') {
if (order_cartRules.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_cartRules.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "60px"
},
{
targets: 3,
width: "80px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 5,
width: "80px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 7,
className: "dt-center",
width: "80px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_cartRulesTable.on('xhr', function () {
var json = order_cartRulesTable.ajax.json();
order_cartRules.total = json.recordsTotal;
});
$('#order_cartRules_table th.dt-checkboxes-select-all').click(function () {
allorder_CartRulesClicked = true;
});
$('#ctrl-show-selected-order_cartRules').on('change', function () {
order_cartRulesTable.ajax.reload();
});
var collectorder_CartRules = function () {
$('#order_export_form input[name="order_cartRules_type"]').remove();
$('#order_export_form input[name="order_cartRules_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_cartRules_type").val(order_cartRules.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_cartRules_data").val(order_cartRules.data));
};
}
if (typeof setorder_PaymentMethodsTable !== 'undefined') {
function updateorder_PaymentMethodsSelectInfo() {
var length = order_paymentMethods.type === 'selected' ? order_paymentMethods.data.length : order_paymentMethods.total - order_paymentMethods.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_paymentMethods_select_info').text(lengthText);
}
var order_paymentMethods = {type: "unselected", data: [], total: initialData.order_paymentMethods.recordsTotal, filtered: initialData.order_paymentMethods.recordsFiltered};
var allorder_PaymentMethodsClicked = false;
var order_paymentMethodsTable = $('#order_paymentMethods_table').DataTable({
order: [[2, 'asc']],
data: initialData.order_paymentMethods.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.order_paymentMethods.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getorder_PaymentMethods';
d.extra_search_type = $('#ctrl-show-selected-order_paymentMethods').val();
d.extra_search_params = {type: order_paymentMethods.type, data: order_paymentMethods.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.order_paymentMethods.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.order_paymentMethods); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "module_name"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_paymentMethods_select_info').length === 0) {
$('#order_paymentMethods_table_info').append('<span id="order_paymentMethods_select_info" class="select_info"></span>');
}
updateorder_PaymentMethodsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_paymentMethods.type === 'unselected') {
index = order_paymentMethods.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_paymentMethods.data.splice(index, 1);
}
} else {
if (index === -1) {
order_paymentMethods.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_paymentMethods.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_paymentMethods.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_paymentMethods.data.splice(index, 1);
}
}
}
updateorder_PaymentMethodsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_PaymentMethodsClicked) {
if (selected) {
order_paymentMethods.type = 'unselected';
} else {
order_paymentMethods.type = 'selected';
}
order_paymentMethods.data = [];
allorder_PaymentMethodsClicked = false;
}
updateorder_PaymentMethodsSelectInfo();
if (!indeterminate && order_paymentMethods.data.length !== 0 && parseInt(order_paymentMethods.total) !== order_paymentMethods.data.length) {
$('#order_paymentMethods_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_paymentMethods.type === 'unselected') {
if (order_paymentMethods.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_paymentMethods.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "20%",
orderable: false,
className: "dt-center",
render: function (data, type, row, meta) {
return data ? data : '';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_paymentMethodsTable.on('xhr', function () {
var json = order_paymentMethodsTable.ajax.json();
order_paymentMethods.total = json.recordsTotal;
});
$('#order_paymentMethods_table th.dt-checkboxes-select-all').click(function () {
allorder_PaymentMethodsClicked = true;
});
$('#ctrl-show-selected-order_paymentMethods').on('change', function () {
order_paymentMethodsTable.ajax.reload();
});
var collectorder_PaymentMethods = function () {
$('#order_export_form input[name="order_paymentMethods_type"]').remove();
$('#order_export_form input[name="order_paymentMethods_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_paymentMethods_type").val(order_paymentMethods.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_paymentMethods_data").val(order_paymentMethods.data));
};
}
if (typeof setorder_OrderStatesTable !== 'undefined') {
function updateorder_OrderStatesSelectInfo() {
var length = order_orderStates.type === 'selected' ? order_orderStates.data.length : order_orderStates.total - order_orderStates.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_orderStates_select_info').text(lengthText);
}
var order_orderStates = {type: "unselected", data: [], total: initialData.order_orderStates.recordsTotal, filtered: initialData.order_orderStates.recordsFiltered};
var allorder_OrderStatesClicked = false;
var order_orderStatesTable = $('#order_orderStates_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_orderStates.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.order_orderStates.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getorder_OrderStates';
d.extra_search_type = $('#ctrl-show-selected-order_orderStates').val();
d.extra_search_params = {type: order_orderStates.type, data: order_orderStates.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.order_orderStates.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.order_orderStates); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "icon"},
{data: "send_email"},
{data: "delivery"},
{data: "invoice"},
{data: "template"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_orderStates_select_info').length === 0) {
$('#order_orderStates_table_info').append('<span id="order_orderStates_select_info" class="select_info"></span>');
}
updateorder_OrderStatesSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_orderStates.type === 'unselected') {
index = order_orderStates.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_orderStates.data.splice(index, 1);
}
} else {
if (index === -1) {
order_orderStates.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_orderStates.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_orderStates.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_orderStates.data.splice(index, 1);
}
}
}
updateorder_OrderStatesSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_OrderStatesClicked) {
if (selected) {
order_orderStates.type = 'unselected';
} else {
order_orderStates.type = 'selected';
}
order_orderStates.data = [];
allorder_OrderStatesClicked = false;
}
updateorder_OrderStatesSelectInfo();
if (!indeterminate && order_orderStates.data.length !== 0 && parseInt(order_orderStates.total) !== order_orderStates.data.length) {
$('#order_orderStates_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_orderStates.type === 'unselected') {
if (order_orderStates.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_orderStates.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "50%",
render: function (data, type, row, meta) {
return '<span class="label color_field" style="background-color:' + row.color + ';color:' + row.font_color + ';">' + data + '</span>';
}
},
{
targets: 3,
width: "30px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 5,
className: "dt-center",
width: "80px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 6,
className: "dt-center",
width: "80px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 7,
width: "130px"
}
],
select: {
style: 'os multi',
info: false
}
});
order_orderStatesTable.on('xhr', function () {
var json = order_orderStatesTable.ajax.json();
order_orderStates.total = json.recordsTotal;
});
$('#order_orderStates_table th.dt-checkboxes-select-all').click(function () {
allorder_OrderStatesClicked = true;
});
$('#ctrl-show-selected-order_orderStates').on('change', function () {
order_orderStatesTable.ajax.reload();
});
var collectorder_OrderStates = function () {
$('#order_export_form input[name="order_orderStates_type"]').remove();
$('#order_export_form input[name="order_orderStates_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_orderStates_type").val(order_orderStates.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_orderStates_data").val(order_orderStates.data));
};
}
if (typeof setorder_OrdersTable !== 'undefined') {
function updateorder_OrdersSelectInfo() {
var length = order_orders.type === 'selected' ? order_orders.data.length : order_orders.total - order_orders.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_orders_select_info').text(lengthText);
}
var order_orders = {type: "unselected", data: [], total: initialData.order_orders.recordsTotal, filtered: initialData.order_orders.recordsFiltered};
var allorder_OrdersClicked = false;
var order_ordersTable = $('#order_orders_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_orders.data,
autoWidth: false,
processing: true,
serverSide: true,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
deferLoading: initialData.order_orders.recordsTotal,
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getorder_Orders';
d.extra_search_type = $('#ctrl-show-selected-order_orders').val();
d.extra_search_params = {type: order_orders.type, data: order_orders.data};
if (skipAjax) { //if fake AJAX flag is set
filterTables.order_orders.draw = d.draw; //get draw value to be sent to server
}
},
beforeSend: function (jqXHR, settings) { //this function allows to interact with AJAX object just before data is sent to server
if (skipAjax) { //if fake AJAX flag is set
this.success(filterTables.order_orders); //call success function of current AJAX object (while passing fake data) which is used by DataTable on successful response from server
return false; //cancel current AJAX request
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "invoice_number"},
{data: "reference"},
{data: "new_client"},
{data: "delivery_country"},
{data: "customer"},
{data: "total_paid"},
{data: "payment"},
{data: "date_add"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_orders_select_info').length === 0) {
$('#order_orders_table_info').append('<span id="order_orders_select_info" class="select_info"></span>');
}
updateorder_OrdersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
// api.rows({page: 'all'}).select();
// api.rows().select();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
className: "dt-center",
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_orders.type === 'unselected') {
index = order_orders.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_orders.data.splice(index, 1);
}
} else {
if (index === -1) {
order_orders.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_orders.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_orders.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_orders.data.splice(index, 1);
}
}
}
updateorder_OrdersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_OrdersClicked) {
if (selected) {
order_orders.type = 'unselected';
} else {
order_orders.type = 'selected';
}
order_orders.data = [];
allorder_OrdersClicked = false;
}
updateorder_OrdersSelectInfo();
if (!indeterminate && order_orders.data.length !== 0 && parseInt(order_orders.total) !== order_orders.data.length) {
$('#order_orders_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_orders.type === 'unselected') {
if (order_orders.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_orders.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
}
],
select: {
style: 'os multi',
info: false
}
});
order_ordersTable.on('xhr', function () {
var json = order_ordersTable.ajax.json();
order_orders.total = json.recordsTotal;
});
$('#order_orders_table th.dt-checkboxes-select-all').click(function () {
allorder_OrdersClicked = true;
});
$('#ctrl-show-selected-order_orders').on('change', function () {
order_ordersTable.ajax.reload();
});
var collectorder_Orders = function () {
$('#order_export_form input[name="order_orders_type"]').remove();
$('#order_export_form input[name="order_orders_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_orders_type").val(order_orders.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_orders_data").val(order_orders.data));
};
}
if (typeof setorder_ManufacturersTable !== 'undefined') {
function updateorder_ManufacturersSelectInfo() {
var length = order_manufacturers.type === 'selected' ? order_manufacturers.data.length : order_manufacturers.total - order_manufacturers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_manufacturers_select_info').text(lengthText);
}
var order_manufacturers = {type: "unselected", data: [], total: initialData.order_manufacturers.recordsTotal, filtered: initialData.order_manufacturers.recordsFiltered};
var allorder_ManufacturersClicked = false;
var order_manufacturersTable = $('#order_manufacturers_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_manufacturers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.order_manufacturers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getManufacturers';
d.extra_search_type = $('#ctrl-show-selected-order_manufacturers').val();
d.extra_search_params = {type: order_manufacturers.type, data: order_manufacturers.data};
if (skipAjax) {
filterTables.order_manufacturers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.order_manufacturers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "address_count"},
{data: "prod_count"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_manufacturers_select_info').length === 0) {
$('#order_manufacturers_table_info').append('<span id="order_manufacturers_select_info" class="select_info"></span>');
}
updateorder_ManufacturersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_manufacturers.type === 'unselected') {
index = order_manufacturers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_manufacturers.data.splice(index, 1);
}
} else {
if (index === -1) {
order_manufacturers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_manufacturers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_manufacturers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_manufacturers.data.splice(index, 1);
}
}
}
updateorder_ManufacturersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_ManufacturersClicked) {
if (selected) {
order_manufacturers.type = 'unselected';
} else {
order_manufacturers.type = 'selected';
}
order_manufacturers.data = [];
allorder_ManufacturersClicked = false;
}
updateorder_ManufacturersSelectInfo();
if (!indeterminate && order_manufacturers.data.length !== 0 && parseInt(order_manufacturers.total) !== order_manufacturers.data.length) {
$('#order_manufacturers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_manufacturers.type === 'unselected') {
if (order_manufacturers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_manufacturers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
orderable: false,
className: "dt-center",
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 5,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 6,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_manufacturersTable.on('xhr', function () {
var json = order_manufacturersTable.ajax.json();
order_manufacturers.total = json.recordsTotal;
});
$('#order_manufacturers_table th.dt-checkboxes-select-all').click(function () {
allorder_ManufacturersClicked = true;
});
$('#ctrl-show-selected-order_manufacturers').on('change', function () {
order_manufacturersTable.ajax.reload();
});
var collectorder_Manufacturers = function () {
$('#order_export_form input[name="order_manufacturers_type"]').remove();
$('#order_export_form input[name="order_manufacturers_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_manufacturers_type").val(order_manufacturers.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_manufacturers_data").val(order_manufacturers.data));
};
}
if (typeof setorder_SuppliersTable !== 'undefined') {
function updateorder_SuppliersSelectInfo() {
var length = order_suppliers.type === 'selected' ? order_suppliers.data.length : order_suppliers.total - order_suppliers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_suppliers_select_info').text(lengthText);
}
var order_suppliers = {type: "unselected", data: [], total: initialData.order_suppliers.recordsTotal, filtered: initialData.order_suppliers.recordsFiltered};
var allorder_SuppliersClicked = false;
var order_suppliersTable = $('#order_suppliers_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_suppliers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.order_suppliers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getSuppliers';
d.extra_search_type = $('#ctrl-show-selected-order_suppliers').val();
d.extra_search_params = {type: order_suppliers.type, data: order_suppliers.data};
if (skipAjax) {
filterTables.order_suppliers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.order_suppliers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "logo"},
{data: "name"},
{data: "prod_count"},
{data: "enabled"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_suppliers_select_info').length === 0) {
$('#order_suppliers_table_info').append('<span id="order_suppliers_select_info" class="select_info"></span>');
}
updateorder_SuppliersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_suppliers.type === 'unselected') {
index = order_suppliers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_suppliers.data.splice(index, 1);
}
} else {
if (index === -1) {
order_suppliers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_suppliers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_suppliers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_suppliers.data.splice(index, 1);
}
}
}
updateorder_SuppliersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_SuppliersClicked) {
if (selected) {
order_suppliers.type = 'unselected';
} else {
order_suppliers.type = 'selected';
}
order_suppliers.data = [];
allorder_SuppliersClicked = false;
}
updateorder_SuppliersSelectInfo();
if (!indeterminate && order_suppliers.data.length !== 0 && parseInt(order_suppliers.total) !== order_suppliers.data.length) {
$('#order_suppliers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_suppliers.type === 'unselected') {
if (order_suppliers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_suppliers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
// width: "30%",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 4,
width: "90px",
className: "dt-center",
render: function (data, type, row, meta) {
return parseInt(data) ? data : '--';
}
},
{
targets: 5,
width: "80px",
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_suppliersTable.on('xhr', function () {
var json = order_suppliersTable.ajax.json();
order_suppliers.total = json.recordsTotal;
});
$('#order_suppliers_table th.dt-checkboxes-select-all').click(function () {
allorder_SuppliersClicked = true;
});
$('#ctrl-show-selected-order_suppliers').on('change', function () {
order_suppliersTable.ajax.reload();
});
var collectorder_Suppliers = function () {
$('#order_export_form input[name="order_suppliers_type"]').remove();
$('#order_export_form input[name="order_suppliers_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_suppliers_type").val(order_suppliers.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_suppliers_data").val(order_suppliers.data));
};
}
if (typeof setorder_CarriersTable !== 'undefined') {
function updateorder_CarriersSelectInfo() {
var length = order_carriers.type === 'selected' ? order_carriers.data.length : order_carriers.total - order_carriers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_carriers_select_info').text(lengthText);
}
var order_carriers = {type: "unselected", data: [], total: initialData.order_carriers.recordsTotal, filtered: initialData.order_carriers.recordsFiltered};
var allorder_CarriersClicked = false;
var order_carriersTable = $('#order_carriers_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_carriers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.order_carriers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCarriers';
d.extra_search_type = $('#ctrl-show-selected-order_carriers').val();
d.extra_search_params = {type: order_carriers.type, data: order_carriers.data};
if (skipAjax) {
filterTables.order_carriers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.order_carriers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "reference"},
{data: "id"},
{data: "reference"},
{data: "name"},
{data: "logo"},
{data: "delay"},
{data: "enabled"},
{data: "is_free"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_carriers_select_info').length === 0) {
$('#order_carriers_table_info').append('<span id="order_carriers_select_info" class="select_info"></span>');
}
updateorder_CarriersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_carriers.type === 'unselected') {
index = order_carriers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().reference);
if (selected) {
if (index > -1) {
order_carriers.data.splice(index, 1);
}
} else {
if (index === -1) {
order_carriers.data.push(nodes.row(nodes.selector.rows[0]).data().reference);
}
}
} else {
index = order_carriers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().reference);
//
if (selected) {
if (index === -1) {
order_carriers.data.push(nodes.row(nodes.selector.rows[0]).data().reference);
}
} else {
if (index > -1) {
order_carriers.data.splice(index, 1);
}
}
}
updateorder_CarriersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_CarriersClicked) {
if (selected) {
order_carriers.type = 'unselected';
} else {
order_carriers.type = 'selected';
}
order_carriers.data = [];
allorder_CarriersClicked = false;
}
updateorder_CarriersSelectInfo();
if (!indeterminate && order_carriers.data.length !== 0 && parseInt(order_carriers.total) !== order_carriers.data.length) {
$('#order_carriers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_carriers.type === 'unselected') {
if (order_carriers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_carriers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 2,
width: "70px"
},
{
targets: 4,
// width: "90px",
className: "dt-center",
orderable: false,
render: function (data, type, row, meta) {
return data ? data : '';
}
},
{
targets: 6,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 7,
className: "dt-center",
width: "120px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_carriersTable.on('xhr', function () {
var json = order_carriersTable.ajax.json();
order_carriers.total = json.recordsTotal;
});
$('#order_carriers_table th.dt-checkboxes-select-all').click(function () {
allorder_CarriersClicked = true;
});
$('#ctrl-show-selected-order_carriers').on('change', function () {
order_carriersTable.ajax.reload();
});
var collectorder_Carriers = function () {
$('#order_export_form input[name="order_carriers_type"]').remove();
$('#order_export_form input[name="order_carriers_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_carriers_type").val(order_carriers.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_carriers_data").val(order_carriers.data));
};
}
if (typeof setorder_GroupsTable !== 'undefined') {
function updateorder_GroupsSelectInfo() {
var length = order_groups.type === 'selected' ? order_groups.data.length : order_groups.total - order_groups.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_groups_select_info').text(lengthText);
}
var order_groups = {type: "unselected", data: [], total: initialData.order_groups.recordsTotal, filtered: initialData.order_groups.recordsFiltered};
var allorder_GroupsClicked = false;
var order_groupsTable = $('#order_groups_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_groups.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.order_groups.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getGroups';
d.extra_search_type = $('#ctrl-show-selected-order_groups').val();
d.extra_search_params = {type: order_groups.type, data: order_groups.data};
if (skipAjax) {
filterTables.order_groups.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.order_groups);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "name"},
{data: "reduction"},
{data: "members"},
{data: "show_prices"},
{data: "date_add"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_groups_select_info').length === 0) {
$('#order_groups_table_info').append('<span id="order_groups_select_info" class="select_info"></span>');
}
updateorder_GroupsSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_groups.type === 'unselected') {
index = order_groups.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_groups.data.splice(index, 1);
}
} else {
if (index === -1) {
order_groups.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_groups.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_groups.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_groups.data.splice(index, 1);
}
}
}
updateorder_GroupsSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_GroupsClicked) {
if (selected) {
order_groups.type = 'unselected';
} else {
order_groups.type = 'selected';
}
order_groups.data = [];
allorder_GroupsClicked = false;
}
updateorder_GroupsSelectInfo();
if (!indeterminate && order_groups.data.length !== 0 && parseInt(order_groups.total) !== order_groups.data.length) {
$('#order_groups_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_groups.type === 'unselected') {
if (order_groups.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_groups.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 3,
// width: "220px",
render: function (data, type, row, meta) {
return data + '%';
}
},
{
targets: 4,
className: "dt-center"
},
{
targets: 5,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_groupsTable.on('xhr', function () {
var json = order_groupsTable.ajax.json();
order_groups.total = json.recordsTotal;
});
$('#order_groups_table th.dt-checkboxes-select-all').click(function () {
allorder_GroupsClicked = true;
});
$('#ctrl-show-selected-order_groups').on('change', function () {
order_groupsTable.ajax.reload();
});
var collectorder_Groups = function () {
$('#order_export_form input[name="order_groups_type"]').remove();
$('#order_export_form input[name="order_groups_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_groups_type").val(order_groups.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_groups_data").val(order_groups.data));
};
}
if (typeof setorder_CustomersTable !== 'undefined') {
function updateorder_CustomersSelectInfo() {
var length = order_customers.type === 'selected' ? order_customers.data.length : order_customers.total - order_customers.data.length;
var lengthText;
if (length === 0) {
lengthText = '';
} else if (length === 1) {
lengthText = oneRowSelected.replace('%d', length);
} else {
lengthText = moreRowsSelected.replace('%d', length);
}
$('#order_customers_select_info').text(lengthText);
}
var order_customers = {type: "unselected", data: [], total: initialData.order_customers.recordsTotal, filtered: initialData.order_customers.recordsFiltered};
var allorder_CustomersClicked = false;
var order_customersTable = $('#order_customers_table').DataTable({
order: [[1, 'asc']],
data: initialData.order_customers.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.order_customers.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getCustomers';
d.extra_search_type = $('#ctrl-show-selected-order_customers').val();
d.extra_search_params = {type: order_customers.type, data: order_customers.data};
if (skipAjax) {
filterTables.order_customers.draw = d.draw;
}
},
beforeSend: function (jqXHR, settings) {
if (skipAjax) {
this.success(filterTables.order_customers);
return false;
}
}
},
language: {
select: {
rows: {
'_': ''
}
},
processing: tableProcessing,
search: tableSearch,
lengthMenu: tableLengthMenu,
info: tableInfo,
infoEmpty: tableInfoEmpty,
infoFiltered: tableInfoFiltered,
infoPostFix: "",
loadingRecords: tableLoadingRecords,
zeroRecords: tableZeroRecords,
emptyTable: tableEmptyTable,
paginate: {
first: tableFirst,
previous: tablePrevious,
next: tableNext,
last: tableLast
},
},
columns: [
{data: "id"},
{data: "id"},
{data: "gender"},
{data: "firstname"},
{data: "lastname"},
{data: "email"},
{data: "group"},
{data: "enabled"},
{data: "newsletter"},
// {data: "deleted"}
],
stateSave: true,
stateSaveCallback: function (settings, data) {
// localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data));
},
stateLoadCallback: function (settings) {
// return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance));
},
drawCallback: function (settings) {
if ($('#order_customers_select_info').length === 0) {
$('#order_customers_table_info').append('<span id="order_customers_select_info" class="select_info"></span>');
}
updateorder_CustomersSelectInfo();
},
initComplete: function (settings, json) {
var api = this.api();
api.cells(api.rows(function (idx, data, node) {
return true;
}).indexes(), 0).checkboxes.select();
},
columnDefs: [
{
targets: 0,
width: "70px",
// width: "55px",
render: function (data, type, row, meta) {
if (type === 'display') {
data = '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>';
}
return data;
},
checkboxes: {
selectRow: true,
selectAllRender: '<div class="checkbox"><input type="checkbox" class="dt-checkboxes"><label></label></div>',
selectCallback: function (nodes, selected) {
if (Array.isArray(nodes.selector.rows)) {
var index;
if (order_customers.type === 'unselected') {
index = order_customers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
if (selected) {
if (index > -1) {
order_customers.data.splice(index, 1);
}
} else {
if (index === -1) {
order_customers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
}
} else {
index = order_customers.data.indexOf(nodes.row(nodes.selector.rows[0]).data().id);
//
if (selected) {
if (index === -1) {
order_customers.data.push(nodes.row(nodes.selector.rows[0]).data().id);
}
} else {
if (index > -1) {
order_customers.data.splice(index, 1);
}
}
}
updateorder_CustomersSelectInfo();
}
},
selectAllCallback: function (nodes, selected, indeterminate) {
if (!indeterminate && allorder_CustomersClicked) {
if (selected) {
order_customers.type = 'unselected';
} else {
order_customers.type = 'selected';
}
order_customers.data = [];
allorder_CustomersClicked = false;
}
updateorder_CustomersSelectInfo();
if (!indeterminate && order_customers.data.length !== 0 && parseInt(order_customers.total) !== order_customers.data.length) {
$('#order_customers_table thead .dt-checkboxes').prop('indeterminate', true);
}
}
},
createdCell: function (td, cellData, rowData, row, col) {
if (rowData.initial) {
return;
}
if (order_customers.type === 'unselected') {
if (order_customers.data.includes(cellData)) {
this.api().cell(td).checkboxes.deselect();
} else {
this.api().cell(td).checkboxes.select();
}
} else {
if (order_customers.data.includes(cellData)) {
this.api().cell(td).checkboxes.select();
} else {
this.api().cell(td).checkboxes.deselect();
}
}
}
},
{
targets: 1,
width: "70px"
},
{
targets: 5,
width: "220px"
},
{
targets: 7,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
},
{
targets: 8,
className: "dt-center",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check catalogEIA_icon"></i>' : '<i class="icon-remove catalogEIA_icon"></i>';
}
}
],
select: {
style: 'os multi',
info: false
}
});
order_customersTable.on('xhr', function () {
var json = order_customersTable.ajax.json();
order_customers.total = json.recordsTotal;
});
$('#order_customers_table th.dt-checkboxes-select-all').click(function () {
allorder_CustomersClicked = true;
});
$('#ctrl-show-selected-order_customers').on('change', function () {
order_customersTable.ajax.reload();
});
var collectorder_Customers = function () {
$('#order_export_form input[name="order_customers_type"]').remove();
$('#order_export_form input[name="order_customers_data"]').remove();
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_customers_type").val(order_customers.type));
$('#order_export_form').append($("<input>")
.attr("type", "hidden")
.attr("name", "order_customers_data").val(order_customers.data));
};
}
$('#scheduleEmails_table').on('click', 'td > .icon-check.change', function (e) {
e.preventDefault();
var data = scheduleEmailsTable.row($(this).closest('tr')).data();
var id = data.id;
var data = {
address: data.address,
timestamp: data.timestamp,
template: data.template,
entities: data.entities,
active: 0
};
showLoading();
$.post(controller_link, {ajax_action: 'saveScheduleEmail', type: 'dml', ieType: 'export', id: id, data},
function (result) {
scheduleEmailsTable.draw(false);
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
});
$('#scheduleEmails_table').on('click', 'td > .icon-remove.change', function (e) {
e.preventDefault();
var data = scheduleEmailsTable.row($(this).closest('tr')).data();
var id = data.id;
var data = {
address: data.address,
timestamp: data.timestamp,
template: data.template,
entities: data.entities,
active: 1
};
showLoading();
$.post(controller_link, {ajax_action: 'saveScheduleEmail', type: 'dml', ieType: 'export', id: id, data},
function (result) {
scheduleEmailsTable.draw(false);
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
});
$('#scheduleFTPs_table').on('click', 'td > .icon-check.change', function (e) {
e.preventDefault();
var data = scheduleFTPsTable.row($(this).closest('tr')).data();
var id = data.id, url_parts = data.url.split(':');
var data = {
type: data.type,
url: url_parts[0],
port: url_parts[1] ? url_parts[1] : '',
username: data.username,
password: data.password,
timestamp: data.timestamp,
template: data.template,
active: 0
};
showLoading();
$.post(controller_link, {ajax_action: 'saveScheduleFTP', type: 'dml', ieType: 'export', id: id, data},
function (result) {
scheduleFTPsTable.draw(false);
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
});
$('#scheduleFTPs_table').on('click', 'td > .icon-remove.change', function (e) {
e.preventDefault();
var data = scheduleFTPsTable.row($(this).closest('tr')).data();
var id = data.id, url_parts = data.url.split(':');
var data = {
type: data.type,
url: url_parts[0],
port: url_parts[1] ? url_parts[1] : '',
username: data.username,
password: data.password,
timestamp: data.timestamp,
template: data.template,
active: 1
};
showLoading();
$.post(controller_link, {ajax_action: 'saveScheduleFTP', type: 'dml', ieType: 'export', id: id, data},
function (result) {
scheduleFTPsTable.draw(false);
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
});
var scheduleEmailsTable = $('#scheduleEmails_table').DataTable({
order: [[1, 'asc']],
data: initialData.emails.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.emails.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getScheduleEmails';
}
},
language: {
select: {
rows: {
'_': ''
}
}
},
columns: [
{data: ""},
{data: "id"},
{data: "address"},
{data: "timestamp"},
{data: "template_name"},
{data: "active"},
{data: ""},
{data: "template"}
],
columnDefs: [
{
targets: 0,
orderable: false,
searchable: false,
render: function (data, type, row, meta) {
return '';
}
},
{
targets: 1,
width: "40px"
},
{
targets: 3,
className: "dt-center",
width: "85px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check"></i>' : '<i class="icon-remove"></i>';
}
},
{
targets: 5,
className: "dt-center",
width: "85px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check change"></i>' : '<i class="icon-remove change"></i>';
}
},
{
targets: 6,
className: "dt-center",
width: "60px",
orderable: false,
render: function (data, type, row, meta) {
return '<i title="' + edit + '" style="color:orange" class="icon-edit edit_schedule"></i> <i title="' + delet + '" style="color:#d90000" class="icon-trash delete_schedule"></i>';
}
},
{
targets: 7,
width: "0px",
orderable: false,
render: function (data, type, row, meta) {
return '';
}
}
]
});
$('#schedule_email_save').click(function () {
var email = $('#schedule_email_address').val();
var data = {
address: email,
timestamp: $('input[name="schedule_email_add_ts"]:checked').val(),
template: $('#schedule_email_template').val(),
active: $('input[name="schedule_email_active"]:checked').val(),
entities: ''
};
$('#schedule_email_entities .prestashop-switch').each(function (index, element) {
var elem = $(element).find('input[name^="schedule_email_"]:checked');
if (elem.val() === '1') {
data.entities += elem.attr('name').split('schedule_email_')[1] + ',';
}
});
data.entities = data.entities.slice(0, -1);
var id = $('#schedule_email_id').val();
if (!email) {
return alert(fill_required_fields);
}
$('#schedule_email_modal').modal('hide');
showLoading();
$.post(controller_link, {ajax_action: 'saveScheduleEmail', type: 'dml', ieType: 'export', id: id, data},
function (result) {
hideLoading();
scheduleEmailsTable.draw(false);
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
});
$('#schedule_add_new_email').click(function () {
$('#schedule_email_modal h4.modal-title').text(add_email);
$('#schedule_email_id').val('');
$('#schedule_email_address').val('');
$('#schedule_email_template').val('catalog_default');
$('input[id^="schedule_email_"][id$="_yes"]').prop("checked", false);
$('input[id^="schedule_email_"][id$="_no"]').prop("checked", true);
$('#schedule_email_active_yes').prop("checked", true);
$('#schedule_email_active_no').prop("checked", false);
});
$('#scheduleEmails_table').on('click', 'td > .edit_schedule', function (e) {
e.preventDefault();
$('#schedule_email_modal h4.modal-title').text(edit_email);
var data = scheduleEmailsTable.row($(this).closest('tr')).data();
$('#schedule_email_id').val(data.id);
$('#schedule_email_address').val(data.address);
$('#schedule_email_template').val(data.template);
$('input[id^="schedule_email_"][id$="_yes"]').prop("checked", false);
$('input[id^="schedule_email_"][id$="_no"]').prop("checked", true);
for (var entity of data.entities.split(',')) {
$('#schedule_email_' + entity + '_yes').prop("checked", true);
$('#schedule_email_' + entity + '_no').prop("checked", false);
}
$('#schedule_email_active_yes').prop("checked", parseInt(data.active));
$('#schedule_email_active_no').prop("checked", !parseInt(data.active));
$('#schedule_email_add_ts_yes').prop("checked", parseInt(data.timestamp));
$('#schedule_email_add_ts_no').prop("checked", !parseInt(data.timestamp));
$('#schedule_email_modal').modal('show');
});
$('#scheduleEmails_table').on('click', 'td > .delete_schedule', function (e) {
e.preventDefault();
var id = scheduleEmailsTable.row($(this).closest('tr')).data().id;
if (confirm(sure_to_delete + ' "' + id + '" ?')) {
showLoading();
$.post(controller_link, {ajax_action: 'deleteScheduleEmail', type: 'dml', ieType: 'export', id: id},
function (result) {
hideLoading();
scheduleEmailsTable.draw();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
}
});
var scheduleFTPsTable = $('#scheduleFTPs_table').DataTable({
order: [[1, 'asc']],
data: initialData.ftps.data,
autoWidth: false,
processing: true,
serverSide: true,
deferLoading: initialData.ftps.recordsTotal,
lengthMenu: [10, 25, 50, 100, 250, 500, 1000],
ajax: {
url: controller_link,
type: "POST",
data: function (d) {
d.ajax_action = 'getScheduleFTPs';
}
},
language: {
select: {
rows: {
'_': ''
}
}
},
columns: [
{data: ""},
{data: "id"},
// {data: "type"},
{data: "url"},
{data: "username"},
{data: "password"},
{data: "timestamp"},
{data: "template_name"},
{data: "active"},
{data: ""},
{data: "template"}
],
columnDefs: [
{
targets: 0,
orderable: false,
searchable: false,
render: function (data, type, row, meta) {
return '';
}
},
{
targets: 1,
width: "30px"
},
// {
// targets: 2,
// width: "70px",
// render: function (data, type, row, meta) {
// return data.toUpperCase();
// }
// },
{
targets: 5,
className: "dt-center",
width: "85px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check"></i>' : '<i class="icon-remove"></i>';
}
},
{
targets: 6,
width: "12%"
},
{
targets: 7,
className: "dt-center",
width: "60px",
// orderable: false,
render: function (data, type, row, meta) {
return parseInt(data) ? '<i class="icon-check change"></i>' : '<i class="icon-remove change"></i>';
}
},
{
targets: 8,
className: "dt-center",
width: "60px",
orderable: false,
render: function (data, type, row, meta) {
return '<i title="' + edit + '" style="color:orange" class="icon-edit edit_schedule"></i> <i title="' + delet + '" style="color:#d90000" class="icon-trash delete_schedule"></i>';
}
},
{
targets: 9,
width: "0px",
orderable: false,
render: function (data, type, row, meta) {
return '';
}
}
]
});
$('#schedule_ftp_save').click(function () {
var url = $('#schedule_ftp_url').val();
var username = $('#schedule_ftp_username').val();
var data = {
type: $('#schedule_ftp_type').val(),
url: url,
port: $('#schedule_ftp_port').val(),
username: username,
password: $('#schedule_ftp_password').val(),
timestamp: $('input[name="schedule_ftp_add_ts"]:checked').val(),
template: $('#schedule_ftp_template').val(),
active: $('input[name="schedule_ftp_active"]:checked').val(),
entities: ''
};
$('#schedule_ftp_entities .prestashop-switch').each(function (index, element) {
var elem = $(element).find('input[name^="schedule_ftp_"]:checked');
var name = elem.attr('name').split('schedule_ftp_')[1];
data.entities += name + ':' + elem.val() + ':' + $('#schedule_ftp_folder_' + name).val() + ',';
});
data.entities = data.entities.slice(0, -1);
var id = $('#schedule_ftp_id').val();
if (!url || !username) {
return alert(fill_required_fields);
}
$('#schedule_ftp_modal').modal('hide');
showLoading();
$.post(controller_link, {ajax_action: 'saveScheduleFTP', type: 'dml', ieType: 'export', id: id, data},
function (result) {
scheduleFTPsTable.draw(false);
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
});
$('#schedule_add_new_ftp').click(function () {
$('#schedule_ftp_modal h4.modal-title').text(add_ftp);
$('#schedule_ftp_type').val('ftp');
$('#schedule_ftp_type').change();
$('#schedule_ftp_id').val('');
$('#schedule_ftp_url').val('');
$('#schedule_ftp_port').val('');
$('#schedule_ftp_username').val('');
$('#schedule_ftp_password').val('');
$('#schedule_ftp_template').val('catalog_default');
$('input[id^="schedule_ftp_"][id$="_yes"]').prop("checked", false);
$('input[id^="schedule_ftp_"][id$="_no"]').prop("checked", true);
$('#schedule_ftp_active_yes').prop("checked", true);
$('#schedule_ftp_active_no').prop("checked", false);
$('#schedule_ftp_add_ts_yes').prop("checked", true);
$('#schedule_ftp_add_ts_no').prop("checked", false);
$('input[id^="schedule_ftp_folder_"]').val('');
});
$('#scheduleFTPs_table').on('click', 'td > .edit_schedule', function (e) {
e.preventDefault();
$('#schedule_ftp_modal h4.modal-title').text(edit_ftp);
var data = scheduleFTPsTable.row($(this).closest('tr')).data();
$('#schedule_ftp_id').val(data.id);
$('#schedule_ftp_type').val(data.type);
$('#schedule_ftp_type').change();
var url = data.url.split(':');
$('#schedule_ftp_url').val(url[0]);
if (typeof url[1] !== 'undefined') {
$('#schedule_ftp_port').val(url[1]);
} else {
$('#schedule_ftp_port').val('');
}
$('#schedule_ftp_username').val(data.username);
$('#schedule_ftp_password').val(data.password);
$('#schedule_ftp_template').val(data.template);
for (var entity of data.entities.split(',')) {
var vals = entity.split(':');
if (vals.length > 3) {
for (var i = 3; i < vals.length; i++) {
vals[2] += vals[i];
delete vals[i];
}
}
$('#schedule_ftp_' + vals[0] + '_yes').prop("checked", parseInt(vals[1]));
$('#schedule_ftp_' + vals[0] + '_no').prop("checked", !parseInt(vals[1]));
$('#schedule_ftp_folder_' + vals[0]).val(vals[2]);
}
$('#schedule_ftp_add_ts_no').prop("checked", !parseInt(data.timestamp));
$('#schedule_ftp_add_ts_yes').prop("checked", parseInt(data.timestamp));
$('#schedule_ftp_active_no').prop("checked", !parseInt(data.active));
$('#schedule_ftp_active_yes').prop("checked", parseInt(data.active));
$('#schedule_ftp_modal').modal('show');
});
$('#scheduleFTPs_table').on('click', 'td > .delete_schedule', function (e) {
e.preventDefault();
var id = scheduleFTPsTable.row($(this).closest('tr')).data().id;
if (confirm(sure_to_delete + ' "' + id + '" ?')) {
showLoading();
$.post(controller_link, {ajax_action: 'deleteScheduleFTP', type: 'dml', ieType: 'export', id: id},
function (result) {
scheduleFTPsTable.draw();
hideLoading();
var json = JSON.parse(result);
if (json.type === 'success') {
showSuccessMessage(json.message);
} else {
showErrorMessage(json.message);
}
});
}
});
$('.catalogEIA_fields .columns_list').each(function (i, e) {
$(this).find('li').each(function (i, e) {
if ($(this).attr('data-type')) {
$('<li>', {
class: 'list-group-item',
'data-type': $(this).attr('data-type'),
'data-value': $(this).attr('data-value'),
}).text($(this).text()).appendTo($(this).closest('.catalogEIA_form').find('.columns_for_filter'));
}
});
});
$(document).on('click', '.columns_for_filter > li', function () {
var type = $(this).attr('data-type');
var elem = $('#filter_type_' + type).clone();
var val = $(this).attr('data-value');
if (savedUnique) {
var unique = savedUnique;
} else {
var unique = new Date().valueOf();
}
elem.find('.filter_section').attr('data-value', val);
elem.find('.filter_section_header').html(filter_by + ' <span class="text-600">' + $(this).text() + '</span>');
elem.find('.filter_option select').attr('name', 'filter_options[' + val + '][' + unique + ']');
if (type === 'date') {
elem.find('.filter_value.before_date input').attr('name', 'filter_values[' + val + '][' + unique + '][to]');
elem.find('.filter_value.after_date input').attr('name', 'filter_values[' + val + '][' + unique + '][from]');
elem.find('.filter_value.n_hours input').attr('name', 'filter_values[' + val + '][' + unique + '][n_hours]');
elem.find('.filter_value.n_days input').attr('name', 'filter_values[' + val + '][' + unique + '][n_days]');
} else {
elem.find('.filter_value input').attr('name', 'filter_values[' + val + '][' + unique + ']');
}
elem.find('.filter_section_box').append('<input type="hidden" name="filter_types[' + val + '][' + unique + ']" value="' + type + '" />');
$(this).closest(".filter-fields-container").find('.filter_section_container').append(elem.html());
$(this).addClass('filter_added');
});
$('ul.columns_list li').each(function (i, e) {
$(this).append($('#edit_column').html());
});
var currentLi;
$('.catalogEIA_fields ul > li.list-group-item .custom_column_actions span').click(function (e) {
e.stopPropagation();
$('#edit_column_modal').modal('show');
currentLi = $(this).closest('li');
if (!currentLi.attr('data-original-value')) {
currentLi.attr('data-original-value', currentLi.attr('data-value'));
currentLi.attr('data-original-text', currentLi.children('span.text').text());
}
$('#column_key').val(currentLi.attr('data-value'));
$('#column_value').val(currentLi.children('span.text').text());
});
$('.catalogEIA_fields ul > li.list-group-item .custom_column_actions a').click(function (e) {
e.stopPropagation();
currentLi = $(this).closest('li');
currentLi.attr('data-value', currentLi.attr('data-original-value'));
currentLi.children('span.text').text(currentLi.attr('data-original-text'));
currentLi.removeClass('edited');
});
$('#edit_column_save').click(function (e) {
e.preventDefault();
currentLi.attr('data-value', $('#column_key').val());
currentLi.children('span.text').text($('#column_value').val());
currentLi.addClass('edited');
$('#edit_column_modal').modal('hide');
});
$('#edit_column_cancel').click(function (e) {
e.preventDefault();
$('#edit_column_modal').modal('hide');
});
$('[data-toggle="tooltip"]').tooltip();
});