/**
* This program is free software: you can redistribute it and/or modify it under the
* terms of the GNU General Public License as published by the Free Software Foundation,
* either version 3 of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with this program.
* If not, see https://www.gnu.org/licenses/.
*/
jQuery(document).ready(function () {
/* INICIALIZACIÓN */
var init_selected_carrier = jQuery('#input_select_carrier').find('option:selected');
var company = init_selected_carrier.data('company');
if (company == 'Correos') {
setCorreosRangeDate('pickup_date');
setCorreosRangeDate('return_pickup_date');
} else {
setCEXRangeDate('pickup_date');
setCEXRangeDate('return_pickup_date');
}
if (jQuery('#order_done_hidden').val()) {
disableForm('#container_customer');
disableForm('#container_shipping');
disableForm('#added_values');
}
// COMPROBACION VISUAL DE RECOGIDAS SEGUN CORREOS O CEX
let checkbox = jQuery('#inputCheckSavePickup');
let container = jQuery('#masive_pickup_container');
let inputLabel = jQuery('#orderAdminPrintLabelPickup');
let inputPackageSize = jQuery('#orderAdminPackageSize');
let selectedCompany = '';
checkCorreosOrCEX(company);
jQuery('#input_select_carrier').on('change', function () {
let selectedOption = jQuery(this).find('option:selected');
selectedCompany = selectedOption.data('company');
checkCorreosOrCEX(selectedCompany);
});
checkbox.on('change', function () {
let isChecked = checkbox.prop('checked');
showContent(isChecked);
});
function setCheckTrue() {
jQuery('#inputCheckSavePickup').prop('checked', true)
showContent(true);
}
function setCheckFalse() {
jQuery('#inputCheckSavePickup').prop('checked', false)
showContent(false);
}
function showContent(isChecked) {
selectedCompany = selectedCompany == '' ? company : selectedCompany;
selectedCompany == 'Correos' ? inputLabel.show() && inputPackageSize.show()
: inputLabel.hide() && inputPackageSize.hide();
if (isChecked) {
container.show();
} else {
container.hide();
}
}
function checkCorreosOrCEX(selectedCompany) {
selectedCompany = selectedCompany == '' ? company : selectedCompany;
if (selectedCompany == 'Correos') {
container.hide();
setCheckFalse();
} else if (selectedCompany == 'CEX') {
container.show();
setCheckTrue();
}
}
// Gestiona CodeAT de CEX cuando cambia customer_country
jQuery('#customer_country').on('change', function () {
manageCodeAT();
});
// Ocultamos selector de bultos dependiendo de la compañía
var selected_carrier_return = jQuery('#input_select_carrier_return').find('option:selected');
var company = selected_carrier_return.data('company');
manageReturnNumParcelsSelector(company);
jQuery('#input_select_carrier_return').on('change', function () {
var selected_carrier_return = jQuery('#input_select_carrier_return').find('option:selected');
var company = selected_carrier_return.data('company');
if (company == 'CEX') {
jQuery('#save-return-pickup-container').removeClass('hidden-block');
// Ocultamos el blqoue de opciones de Correos y el botón de generar recogida para CEX ya que se hace automáticamente
jQuery('#generate_return_pickup').addClass('hidden-block');
jQuery('#correos-options-pickup-return-container').addClass('hidden-block');
} else {
jQuery('#save-return-pickup-container').addClass('hidden-block');
jQuery('#generate_return_pickup').removeClass('hidden-block');
jQuery('#correos-options-pickup-return-container').removeClass('hidden-block');
}
manageReturnCustomDocPackage(company);
});
// Para cerrar alerts sin eliminación en el DOM
jQuery('#success_register').on('close.bs.alert', function () {
jQuery('#success_register').addClass('hidden-block');
return false;
});
jQuery('#error_register').on('close.bs.alert', function () {
jQuery('#error_register').addClass('hidden-block');
return false;
});
jQuery('#success_register_return').on('close.bs.alert', function () {
jQuery('#success_register_return').addClass('hidden-block');
return false;
});
jQuery('#error_register_return').on('close.bs.alert', function () {
jQuery('#error_register_return').addClass('hidden-block');
return false;
});
jQuery('#no_offices_zip_message').on('close.bs.alert', function () {
jQuery('#no_offices_zip_message').addClass('hidden-block');
return false;
});
jQuery('#no_citypaqs_zip_message').on('close.bs.alert', function () {
jQuery('#no_citypaqs_zip_message').addClass('hidden-block');
return false;
});
/* FUNCIONALIDAD BULTOS */
// EventListener para formulario de bulto
jQuery("input[type='radio']").on('change', function () {
index_id = jQuery(this)[0].name.indexOf('_');
id_radio = jQuery(this)[0].name.substring(index_id + 1, jQuery(this)[0].name.length);
if (this.value == '0') {
jQuery('#packageCustomDesc_' + id_radio).prop('disabled', false);
jQuery('#packageTariffCode_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDesc_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDesc_' + id_radio).prop('required', false);
} else {
jQuery('#packageCustomDesc_' + id_radio).prop('disabled', true);
jQuery('#packageTariffCode_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDesc_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDesc_' + id_radio).prop('required', true);
}
if (this.value == '0') {
jQuery('#packageCustomDescReturn_' + id_radio).prop('disabled', false);
jQuery('#packageTariffCodeReturn_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDescReturn_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDescReturn_' + id_radio).prop('required', false);
} else {
jQuery('#packageCustomDescReturn_' + id_radio).prop('disabled', true);
jQuery('#packageTariffCodeReturn_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDescReturn_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDescReturn_' + id_radio).prop('required', true);
}
});
// Clonación de bultos devolución
jQuery('#correos-num-parcels-return').change(function () {
jQuery('.container-bulto-return-cloned').remove();
var cloneId = 1;
for (var i = 1; i < jQuery(this).val(); i++) {
cloneId++;
id_bulto = 'containerBultoReturn_' + cloneId;
var clone = jQuery('#containerBultoReturn_1').clone().attr({ id: id_bulto }).addClass('container-bulto-return-cloned');
clone.find('.card-header').html('Devolución del paquete ' + cloneId);
clone.find("input[name='DescriptionRadioReturn_1']").prop('name', 'DescriptionRadioReturn_' + cloneId);
clone.find("select[name='packageCustomDescReturn_1']").attr('id', 'packageCustomDescReturn_' + cloneId);
clone.find("select[name='packageCustomDescReturn_1']").prop('name', 'packageCustomDescReturn_' + cloneId);
clone.find("input[name='packageTariffCodeReturn_1']").attr('id', 'packageTariffCodeReturn_' + cloneId);
clone.find("input[name='packageTariffCodeReturn_1']").prop('name', 'packageTariffCodeReturn_' + cloneId);
clone.find("input[name='packageTariffDescReturn_1']").attr('id', 'packageTariffDescReturn_' + cloneId);
clone.find("input[name='packageTariffDescReturn_1']").prop('name', 'packageTariffDescReturn_' + cloneId);
clone.find("input[name='packageWeightReturn_1']").prop('value', '');
clone.find("input[name='packageWeightReturn_1']").prop('name', 'packageWeightReturn_' + cloneId);
clone.find("input[name='packageAmountReturn_1']").prop('value', '');
clone.find("input[name='packageAmountReturn_1']").prop('name', 'packageAmountReturn_' + cloneId);
clone.find("input[name='packageLargeReturn_1']").attr('id', 'packageLargeReturn_' + cloneId);
clone.find("input[name='packageWidthReturn_1']").attr('id', 'packageWidthReturn_' + cloneId);
clone.find("input[name='packageHeightReturn_1']").attr('id', 'packageHeightReturn_' + cloneId);
clone.find("input[name='packageLargeReturn_1']").prop('name', 'packageLargeReturn_' + cloneId);
clone.find("input[name='packageWidthReturn_1']").prop('name', 'packageWidthReturn_' + cloneId);
clone.find("input[name='packageHeightReturn_1']").prop('name', 'packageHeightReturn_' + cloneId);
clone.find("textarea[name='deliveryRemarksReturn_1']").prop('name', 'deliveryRemarksReturn_' + cloneId);
clone.appendTo('.container-bultos-return');
}
// EventListener para radiobuttons al clonar formulario bulto
jQuery("input[type='radio']").on('change', function () {
index_id = jQuery(this)[0].name.indexOf('_');
id_radio = jQuery(this)[0].name.substring(index_id + 1, jQuery(this)[0].name.length);
if (this.value == '0') {
jQuery('#packageCustomDescReturn_' + id_radio).prop('disabled', false);
jQuery('#packageTariffCodeReturn_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDescReturn_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDescReturn_' + id_radio).prop('required', false);
} else {
jQuery('#packageCustomDescReturn_' + id_radio).prop('disabled', true);
jQuery('#packageTariffCodeReturn_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDescReturn_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDescReturn_' + id_radio).prop('required', true);
}
});
});
// Clonación de bultos
jQuery('#correos-num-parcels').change(function () {
var selected = jQuery('#input_select_carrier').find('option:selected');
var carrier_type = selected.data('carrier_type');
var max_packages = selected.data('max_packages');
jQuery('.container-bulto-cloned').remove();
if (jQuery(this).val() == 1) {
jQuery('.all-packages-equal-container').addClass('hidden-block');
jQuery('#partial_delivery_container').addClass('hidden-block');
} else {
jQuery('.all-packages-equal-container').removeClass('hidden-block');
jQuery('#partial_delivery_container').removeClass('hidden-block');
}
var cloneId = 1;
for (var i = 1; i < jQuery(this).val(); i++) {
cloneId++;
id_bulto = 'containerBulto_' + cloneId;
// Clonación de formulario sin eventos. Se asigna id único a cada campo
var clone = jQuery('#containerBulto_1').clone(true, true).attr({ id: id_bulto }).addClass('container-bulto-cloned');
clone.find('.card-header').html('Bulto ' + cloneId);
clone.find('#DescriptionRadioDesc_1').attr('id', 'DescriptionRadioDesc_' + cloneId);
clone.find('#DescriptionRadioTariff_1').attr('id', 'DescriptionRadioTariff_' + cloneId);
clone.find("input[name='DescriptionRadio_1']").prop('name', 'DescriptionRadio_' + cloneId);
clone.find("select[name='packageCustomDesc_1']").attr('id', 'packageCustomDesc_' + cloneId);
clone.find("select[name='packageCustomDesc_1']").prop('name', 'packageCustomDesc_' + cloneId);
clone.find("input[name='packageTariffCode_1']").attr('id', 'packageTariffCode_' + cloneId);
clone.find("input[name='packageTariffCode_1']").prop('name', 'packageTariffCode_' + cloneId);
clone.find("input[name='packageTariffDesc_1']").attr('id', 'packageTariffDesc_' + cloneId);
clone.find("input[name='packageTariffDesc_1']").prop('name', 'packageTariffDesc_' + cloneId);
clone.find("input[name='packageRef_1']").prop('value', '');
clone.find("input[name='packageRef_1']").prop('name', 'packageRef_' + cloneId);
clone.find("input[name='packageLarge_1']").prop('name', 'packageLarge_' + cloneId);
clone.find("input[name='packageWidth_1']").prop('name', 'packageWidth_' + cloneId);
clone.find("input[name='packageHeight_1']").prop('name', 'packageHeight_' + cloneId);
clone.find("textarea[name='deliveryRemarks_1']").prop('name', 'deliveryRemarks_' + cloneId);
/**
* Tabs de documentación aduanera
*/
clone.find('#tabs_customs_doc_1').attr('id', 'tabs_customs_doc_' + cloneId);
clone.find('#customs_desc_1').attr('data-number', cloneId);
clone.find('#customs_code_1').attr('data-number', cloneId);
clone.find('#add_description_1').attr('data-number', cloneId);
clone.find('#del_description_1').attr('data-number', cloneId);
clone.find('#add_description_1').prop('disabled', false);
clone.find('#add_description_1').attr('id', 'add_description_' + cloneId);
clone.find('#del_description_1').attr('id', 'del_description_' + cloneId);
clone.find('#added_customs_description_1').html('');
clone.find('#added_customs_description_1').attr('id', 'added_customs_description_' + cloneId);
clone.find('#customs_desc_tab_1').attr('id', 'customs_desc_tab_' + cloneId);
clone.find('#customs_code_tab_1').attr('id', 'customs_code_tab_' + cloneId);
clone.find('#customs_desc_1').attr('id', 'customs_desc_' + cloneId);
clone.find('#customs_code_1').attr('id', 'customs_code_' + cloneId);
clone.find("input[name='packageWeight_1']").prop('value', '');
clone.find("input[name='packageWeight_1']").attr('id', 'packageWeight_' + cloneId);
clone.find("input[name='packageWeight_1']").prop('name', 'packageWeight_' + cloneId);
clone.find("input[name='packageWeightDesc_1']").prop('value', '');
clone.find("input[name='packageWeightDesc_1']").attr('id', 'packageWeightDesc_' + cloneId);
clone.find("input[name='packageWeightDesc_1']").prop('name', 'packageWeightDesc_' + cloneId);
clone.find("input[name='packageAmount_1']").prop('value', '');
clone.find("input[name='packageAmount_1']").attr('id', 'packageAmount_' + cloneId);
clone.find("input[name='packageAmount_1']").prop('name', 'packageAmount_' + cloneId);
clone.find("input[name='packageUnits_1']").prop('value', '');
clone.find("input[name='packageUnits_1']").prop('name', 'packageUnits_' + cloneId);
clone.find('#packageUnits_1').attr('id', 'packageUnits_' + cloneId);
clone.appendTo('.container-bultos');
co_DescriptionCounter[cloneId] = 1;
}
// EventListener para radiobuttons al clonar formulario bulto
jQuery("input[type='radio']").on('change', function () {
index_id = jQuery(this)[0].name.indexOf('_');
id_radio = jQuery(this)[0].name.substring(index_id + 1, jQuery(this)[0].name.length);
if (this.value == '0') {
jQuery('#packageCustomDesc_' + id_radio).prop('disabled', false);
jQuery('#packageTariffCode_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDesc_' + id_radio).prop('disabled', true);
jQuery('#packageTariffDesc_' + id_radio).prop('required', false);
} else {
jQuery('#packageCustomDesc_' + id_radio).prop('disabled', true);
jQuery('#packageTariffCode_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDesc_' + id_radio).prop('disabled', false);
jQuery('#packageTariffDesc_' + id_radio).prop('required', true);
}
});
if (carrier_type == 'international' && jQuery(this).val() > max_packages) {
jQuery('.alert-max-packages').removeClass('hidden-block');
jQuery('#all_packages_equal').prop('disabled', true);
jQuery('#all_packages_equal').prop('checked', true);
jQuery('.container-bulto').each(function () {
if (jQuery(this)[0].id != 'containerBulto_1') {
jQuery('input', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('textarea', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('select', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('.card', this).addClass('package-off');
}
});
} else {
jQuery('.alert-max-packages').addClass('hidden-block');
jQuery('#all_packages_equal').prop('checked', false);
}
});
// Todos los bultos iguales
jQuery('#all_packages_equal').on('click', function () {
if (jQuery(this).is(':checked')) {
jQuery('.container-bulto').each(function () {
if (jQuery(this)[0].id != 'containerBulto_1') {
jQuery('input', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('textarea', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('select', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('.card', this).addClass('package-off');
}
});
} else {
jQuery('.container-bulto').each(function () {
if (jQuery(this)[0].id != 'containerBulto_1') {
jQuery('input', jQuery(this)).each(function () {
jQuery(this).prop('disabled', false);
});
jQuery('textarea', jQuery(this)).each(function () {
jQuery(this).prop('disabled', false);
});
jQuery('select', jQuery(this)).each(function () {
jQuery(this).prop('disabled', false);
});
jQuery('.card', this).removeClass('package-off');
}
});
}
});
/* FUNCIONALIDAD VALORES AÑADIDOS */
// Gestiona cuenta bancaria
jQuery('#bank_acc_number').on('click', function () {
if (jQuery('#bank_acc_number').val().substring(0, 4) === '****') {
ibanNumber = jQuery('#bank_acc_number').val();
}
jQuery('#bank_acc_number').val('');
});
jQuery('#bank_acc_number').on('blur', function () {
if (jQuery('#bank_acc_number').val() == '') {
jQuery('#bank_acc_number').val(ibanNumber);
}
});
// Contrareembolso
jQuery('#contrareembolsoCheckbox').on('click', function () {
var selected_carrier = jQuery('#input_select_carrier').find('option:selected');
var company = selected_carrier.data('company');
if (jQuery(this).is(':checked')) {
if (company == 'Correos') {
jQuery('#cash_on_delivery_value_container').removeClass('hidden-block');
jQuery('#bank_acc_number_container').removeClass('hidden-block');
} else {
jQuery('#cash_on_delivery_value_container').removeClass('hidden-block');
jQuery('#bank_acc_number_container').addClass('hidden-block');
}
} else {
jQuery('#cash_on_delivery_value_container').addClass('hidden-block');
jQuery('#bank_acc_number_container').addClass('hidden-block');
}
});
// Seguro
jQuery('#seguroCheckbox').on('click', function () {
if (jQuery(this).is(':checked')) {
jQuery('.seguro-info').removeClass('hidden-block');
} else {
jQuery('.seguro-info').addClass('hidden-block');
}
});
jQuery('#generate_return_pickup').on('click', function (event) {
generateReturnPickup();
});
// Comprobamos el tipo seleccionado
labelsSelectActions(jQuery('#input_tipo_etiqueta_reimpresion').val());
// Escuchamos cambios de tipo
jQuery('#input_tipo_etiqueta_reimpresion').on('change', function () {
labelsSelectActions(this.value);
});
// switch (jQuery('#input_tipo_etiqueta_reimpresion').val()) {
// case '0':
// jQuery('#input_pos_etiqueta_reimpresion').empty();
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_container_reimpresion').show();
// break;
// case '2':
// jQuery('#input_pos_etiqueta_container_reimpresion').hide();
// break;
// }
switch (jQuery('#input_tipo_etiqueta_reimpresion_return').val()) {
case '0':
jQuery('#input_pos_etiqueta_reimpresion_return').empty();
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_container_reimpresion_return').show();
break;
case '2':
jQuery('#input_pos_etiqueta_container_reimpresion_return').hide();
break;
}
// jQuery('#input_tipo_etiqueta_reimpresion').on('change', function () {
// switch (this.value) {
// case '0':
// jQuery('#input_pos_etiqueta_reimpresion').empty();
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_reimpresion').append('');
// jQuery('#input_pos_etiqueta_container_reimpresion').show();
// break;
// case '2':
// jQuery('#input_pos_etiqueta_container_reimpresion').hide();
// break;
// default:
// break;
// }
// });
jQuery('#input_tipo_etiqueta_reimpresion_return').on('change', function () {
switch (this.value) {
case '0':
jQuery('#input_pos_etiqueta_reimpresion_return').empty();
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_reimpresion_return').append('');
jQuery('#input_pos_etiqueta_container_reimpresion_return').show();
break;
case '2':
jQuery('#input_pos_etiqueta_container_reimpresion_return').hide();
break;
default:
break;
}
});
/* FUNCIONALIDAD SENDERS */
jQuery('#senderSelect').on('change', function (e) {
var sender_id = jQuery(this).val();
var data = {
ajax: true,
token: static_token,
action: 'getSenderById',
sender_id: sender_id,
};
var rand = 'rand=' + new Date().getTime();
var ajaxtrue = '&ajax=true';
jQuery.ajax({
url: AdminOrderURL + rand + ajaxtrue,
type: 'POST',
data: data,
cache: false,
processData: true,
success: function (data) {
parsed_data = JSON.parse(data);
jQuery('#sender_name').val(parsed_data['sender_name']);
jQuery('#sender_contact').val(parsed_data['sender_contact']);
jQuery('#sender_address').val(parsed_data['sender_address']);
jQuery('#sender_city').val(parsed_data['sender_city']);
jQuery('#sender_cp').val(parsed_data['sender_cp']);
jQuery('#sender_phone').val(parsed_data['sender_phone']);
jQuery('#sender_email').val(parsed_data['sender_email']);
jQuery('#sender_nif_cif').val(parsed_data['sender_nif_cif']);
jQuery('#sender_from_time').val(parsed_data['sender_from_time']);
jQuery('#sender_to_time').val(parsed_data['sender_to_time']);
jQuery('#sender_country').val(parsed_data['sender_iso_code_pais']);
jQuery('#correos_code').val(parsed_data['correos_code']);
jQuery('#cex_code').val(parsed_data['cex_code']);
manageCodeAT();
// Comprobamos compativiliad con producto seleccionado
var carrierSelected = jQuery('#input_select_carrier').find('option:selected');
if(carrierSelected.data('company') == 'Correos' && parsed_data['correos_code'] != 0){
jQuery('#client_code').val(parsed_data['correos_code']);
}else if(carrierSelected.data('company') == 'CEX' && parsed_data['cex_code'] != 0){
jQuery('#client_code').val(parsed_data['cex_code']);
}else{
jQuery('#client_code').val('');
senderErrorModal();
}
},
});
});
/* FUNCIONALIDAD CAMBIAR CARRIER */
jQuery('#input_select_carrier').on('change', function (e) {
var selected = jQuery(this).find('option:selected');
var company = selected.data('company');
var carrier_value = selected.val();
var carrier_type = selected.data('carrier_type');
var max_packages = selected.data('max_packages');
// funcionalidad dimensiones por defecto para los siguiente transportistas.
available_carriers_default_dimensions = ['S0179', 'S0176', 'S0178'];
if (available_carriers_default_dimensions.includes(carrier_value) &&
large_by_default > 0 &&
width_by_default > 0 &&
height_by_default > 0 ){
jQuery('input[name^="packageLarge"]').val(large_by_default)
jQuery('input[name^="packageWidth"]').val(width_by_default)
jQuery('input[name^="packageHeight"]').val(height_by_default)
} else {
jQuery('input[name^="packageLarge"]').val('')
jQuery('input[name^="packageWidth"]').val('')
jQuery('input[name^="packageHeight"]').val('')
}
// client_code según remitente
let client_code = '';
if(company == 'Correos' && jQuery('#correos_code').val() != 0){
client_code = jQuery('#correos_code').val();
}else if(company == 'CEX' && jQuery('#cex_code').val() != 0){
client_code = jQuery('#cex_code').val();
}else{
// El remitente no tiene contrato asociado
senderErrorModal();
}
jQuery('#client_code').val(client_code);
var bultos = jQuery('#correos-num-parcels').val();
var require_customs_doc = jQuery('#require_customs_doc_hidden').val();
if (bultos > max_packages) {
jQuery('.alert-max-packages').removeClass('hidden-block');
jQuery('#all_packages_equal').prop('disabled', true);
jQuery('#all_packages_equal').prop('checked', true);
jQuery('.container-bulto').each(function () {
if (jQuery(this)[0].id != 'containerBulto_1') {
jQuery('input', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('textarea', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('select', jQuery(this)).each(function () {
jQuery(this).prop('disabled', true);
});
jQuery('.card', this).addClass('package-off');
}
});
} else {
jQuery('.alert-max-packages').addClass('hidden-block');
jQuery('#all_packages_equal').prop('disabled', false);
jQuery('#all_packages_equal').prop('checked', false);
jQuery('.container-bulto').each(function () {
if (jQuery(this)[0].id != 'containerBulto_1') {
jQuery('input', jQuery(this)).each(function () {
jQuery(this).prop('disabled', false);
});
jQuery('textarea', jQuery(this)).each(function () {
jQuery(this).prop('disabled', false);
});
jQuery('select', jQuery(this)).each(function () {
jQuery(this).prop('disabled', false);
});
jQuery('.card', this).removeClass('package-off');
}
});
}
switch (company) {
case 'Correos':
switch (carrier_type) {
case 'office':
jQuery('.office-container').removeClass('hidden-block');
jQuery('.citypaq-container').addClass('hidden-block');
break;
case 'citypaq':
jQuery('.office-container').addClass('hidden-block');
jQuery('.citypaq-container').removeClass('hidden-block');
break;
case 'homedelivery':
jQuery('.office-container').addClass('hidden-block');
jQuery('.citypaq-container').addClass('hidden-block');
break;
case 'international':
jQuery('.office-container').addClass('hidden-block');
jQuery('.citypaq-container').addClass('hidden-block');
break;
}
setCorreosRangeDate('pickup_date');
if (require_customs_doc) {
jQuery('.customs-correos-container').removeClass('hidden-block');
jQuery('#customs-labels-container').removeClass('hidden-block');
}
if (bultos > 1) {
jQuery('#partial_delivery_container').removeClass('hidden-block');
} else {
jQuery('#partial_delivery_container').addClass('hidden-block');
}
if (jQuery('#contrareembolsoCheckbox').is(':checked')) {
jQuery('#cash_on_delivery_value_container').removeClass('hidden-block');
jQuery('#bank_acc_number_container').removeClass('hidden-block');
} else {
jQuery('#cash_on_delivery_value_container').addClass('hidden-block');
jQuery('#bank_acc_number_container').addClass('hidden-block');
}
break;
case 'CEX':
jQuery('.office-container').addClass('hidden-block');
jQuery('.citypaq-container').addClass('hidden-block');
switch (carrier_type) {
case 'office':
jQuery('.office-container').removeClass('hidden-block');
jQuery('.citypaq-container').addClass('hidden-block');
break;
default:
jQuery('.office-container').addClass('hidden-block');
jQuery('.citypaq-container').addClass('hidden-block');
break;
}
// jQuery('.office-container').addClass('hidden-block');
// jQuery('.citypaq-container').addClass('hidden-block');
jQuery('.alert-more-5-labels').addClass('hidden-block');
jQuery('#inputCheckPrintLabel').prop('disabled', false);
setCEXRangeDate('pickup_date');
jQuery('.customs-correos-container').addClass('hidden-block');
jQuery('#customs-labels-container').addClass('hidden-block');
jQuery('#partial_delivery_container').addClass('hidden-block');
if (jQuery('#contrareembolsoCheckbox').is(':checked')) {
jQuery('#cash_on_delivery_value_container').removeClass('hidden-block');
jQuery('#bank_acc_number_container').addClass('hidden-block');
} else {
jQuery('#cash_on_delivery_value_container').addClass('hidden-block');
jQuery('#bank_acc_number_container').addClass('hidden-block');
}
break;
}
manageCodeAT();
manageDeliverySaturday(company);
});
jQuery.validator.addMethod('validate_nif_cif_nie', function (value) {
if (jQuery('#customer_dni').val() == '') {
return true;
} else {
result = validate_nif_cif_nie(value);
return result.valid;
}
});
jQuery.validator.addMethod(
'validate_acc_iban',
function (value) {
if (value.substring(0, 4) === '****') {
return true;
} else {
return validate_acc_iban(value);
}
},
wrongACCAndIBAN
); /* Retornamos el literal traducible del settings-user-configuration.tpl */
// Validación select de recogida y recogida de devolución
// jQuery('#pickupButtonMsg').on('click', function () {
// if (!jQuery('#package_type').val()) {
// jQuery('#package_type').addClass('error');
// }
// });
jQuery('#returnPickupButtonMsg').on('click', function () {
if (!jQuery('#return_package_type').val()) {
jQuery('#return_package_type').addClass('error');
}
});
/**
* Tabs de documentación aduanera
*/
let co_cloneNumber = 1;
let addingDesc = true;
let addingTarriffCode = false;
let type = '_shipping';
let activeTab = '';
jQuery('#customs_correos_container_shipping').on('mouseover', function (event) {
type = '_shipping';
co_DescriptionCounter[co_cloneNumber] = co_DescriptionCounter_shipping;
});
jQuery('#customs_correos_container_return').on('mouseover', function (event) {
type = '_return';
co_DescriptionCounter[co_cloneNumber] = co_DescriptionCounter_return;
});
activeTab = getActiveTab(co_cloneNumber, type);
if (activeTab == 'desc_tab') {
showCustomsDesc(co_cloneNumber, '_shipping');
showCustomsDesc(co_cloneNumber, '_return');
} else if (activeTab == 'code_tab') {
showCustomsCode(co_cloneNumber, '_shipping');
showCustomsCode(co_cloneNumber, '_return');
}
jQuery('#customs_correos_container_shipping .nav-link, #customs_correos_container_return .nav-link').on('click', function (event) {
event.preventDefault();
co_cloneNumber = jQuery(this).attr('data-number');
jQuery(this).addClass('active');
if (jQuery(this).attr('data-type') == 'customs_desc') {
addingDesc = true;
addingTarriffCode = false;
showCustomsDesc(co_cloneNumber, type);
setCustomsDescActive(co_cloneNumber, type);
jQuery('#customs_correos_container' + type + ' #DescriptionRadioDesc_' + co_cloneNumber).val(1);
jQuery('#customs_correos_container' + type + ' #DescriptionRadioTariff_' + co_cloneNumber).val(0);
} else if (jQuery(this).attr('data-type') == 'customs_code') {
addingDesc = false;
addingTarriffCode = true;
showCustomsCode(co_cloneNumber, type);
setCustomsCodeActive(co_cloneNumber, type);
jQuery('#customs_correos_container' + type + ' #DescriptionRadioTariff_' + co_cloneNumber).val(1);
jQuery('#customs_correos_container' + type + ' #DescriptionRadioDesc_' + co_cloneNumber).val(0);
}
});
let co_AddedDescription;
let co_DescriptionCounter = {};
let co_DescriptionCounter_shipping = 1;
let co_DescriptionCounter_return = 1;
co_DescriptionCounter[co_cloneNumber] = 1;
jQuery('#customs_correos_container_shipping .add_description, #customs_correos_container_return .add_description').on('click', function (event) {
event.preventDefault();
co_cloneNumber = jQuery(this).attr('data-number');
co_AddedDescription = jQuery('#customs_correos_container' + type + ' #added_customs_description_' + co_cloneNumber);
let customsCode = jQuery('#customs_correos_container' + type + ' #packageCustomDesc_' + co_cloneNumber).val();
let customsDesc = jQuery('#customs_correos_container' + type + ' #packageCustomDesc_' + co_cloneNumber + ' option:selected').text();
let TariffCode = jQuery('#customs_correos_container' + type + ' #packageTariffCode_' + co_cloneNumber).val();
let TariffDesc = jQuery('#customs_correos_container' + type + ' #packageTariffDesc_' + co_cloneNumber).val();
let AmountElement = jQuery('#customs_correos_container' + type + ' #packageAmount_' + co_cloneNumber);
let WeightElement = jQuery('#customs_correos_container' + type + ' #packageWeightDesc_' + co_cloneNumber);
let UnitsElement = jQuery('#customs_correos_container' + type + ' #packageUnits_' + co_cloneNumber);
let Amount = AmountElement.val();
let Weight = WeightElement.val();
let Units = UnitsElement.val();
if (Amount == '') {
AmountElement.addClass('error');
return;
} else if (Weight == '') {
WeightElement.addClass('error');
return;
} else if (Units == '') {
UnitsElement.addClass('error');
return;
} else {
AmountElement.removeClass('error');
WeightElement.removeClass('error');
UnitsElement.removeClass('error');
}
if (co_DescriptionCounter[co_cloneNumber] <= 5) {
jQuery('#customs_correos_container' + type + ' #add_description_' + co_cloneNumber).prop('disabled', false);
jQuery('#customs_correos_container' + type + ' #del_description_' + co_cloneNumber).prop('disabled', false);
if (addingDesc) {
co_AddedDescription.append(
""
);
} else if (addingTarriffCode) {
co_AddedDescription.append(
""
);
}
co_DescriptionCounter[co_cloneNumber]++;
if (type == '_shipping') {
co_DescriptionCounter_shipping++;
} else if (type == '_return') {
co_DescriptionCounter_return++;
}
}
if (co_DescriptionCounter[co_cloneNumber] > 5) {
jQuery('#customs_correos_container' + type + ' #add_description_' + co_cloneNumber).prop('disabled', true);
}
AmountElement.val('');
WeightElement.val('');
UnitsElement.val('');
});
jQuery('#customs_correos_container_shipping .del_description, #customs_correos_container_return .del_description').on('click', function (event) {
event.preventDefault();
if (co_DescriptionCounter[co_cloneNumber] < 1) {
return;
}
co_cloneNumber = jQuery(this).attr('data-number');
co_DescriptionCounter[co_cloneNumber]--;
if (type == '_shipping') {
co_DescriptionCounter_shipping--;
} else if (type == '_return') {
co_DescriptionCounter_return--;
}
jQuery('#customs_correos_container' + type + ' #customs_desc' + type + '_' + co_cloneNumber + co_DescriptionCounter[co_cloneNumber]).remove();
jQuery('#customs_correos_container' + type + ' #customs_tariff' + type + '_' + co_cloneNumber + co_DescriptionCounter[co_cloneNumber]).remove();
if (co_DescriptionCounter[co_cloneNumber] == 1) {
jQuery('#customs_correos_container' + type + ' #add_description_' + co_cloneNumber).prop('disabled', false);
jQuery('#customs_correos_container' + type + ' #del_description_' + co_cloneNumber).prop('disabled', true);
} else if (co_DescriptionCounter[co_cloneNumber] < 6) {
jQuery('#customs_correos_container' + type + ' #add_description_' + co_cloneNumber).prop('disabled', false);
}
});
/////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////// LIMPIA EL +34 ///////////////////
/////////////////////////////////////////////////////////////////////////////////////////
const phoneField = jQuery('#customer_phone').val();
let newPhoneField = phoneField.replace(/0034|0034\s|\+34|\+34\s/g, '').trim();
jQuery('#customer_phone').val(newPhoneField);
/////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////// FUNCIONES ///////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
function labelsSelectActions(label_type) {
switch (label_type) {
case '0': // Adhesiva
jQuery('#input_pos_etiqueta_container_reimpresion').show();
jQuery('#input_format_etiqueta_container_reimpresion').show();
let format_selected = jQuery('#input_format_etiqueta_reimpresion').val();
switch (format_selected) {
case '1': // 3/A4
loadLabelSelectPositions('#input_pos_etiqueta_reimpresion', 3);
break;
default: // Estandar y 4/A4
loadLabelSelectPositions('#input_pos_etiqueta_reimpresion', 4);
break;
}
jQuery('#input_format_etiqueta_reimpresion').on('change', function () {
switch (this.value) {
case '1': // 3/A4
loadLabelSelectPositions('#input_pos_etiqueta_reimpresion', 3);
break;
default: // Estandar y 4/A4
loadLabelSelectPositions('#input_pos_etiqueta_reimpresion', 4);
break;
}
});
break;
case '1': // Medio Folio
loadLabelSelectPositions('#input_pos_etiqueta_reimpresion', 2);
jQuery('#input_pos_etiqueta_container_reimpresion').show();
break;
case '2': // Térmica
jQuery('#input_pos_etiqueta_container_reimpresion').hide();
// Reset input formato
jQuery('#input_format_etiqueta_container_reimpresion').hide();
jQuery('#input_format_etiqueta_reimpresion').val(0);
break;
default:
break;
}
}
// Funcion que nos permite rellenar dinámicamente el select de posiciones de etiquetas
function loadLabelSelectPositions(element, positions) {
let select_input = jQuery(element);
select_input.empty();
for (let i = 1; i <= positions; i++) {
select_input.append('');
}
}
// Botón seleccionar remitente desde modal
jQuery('#errorSender-change').on('click', (e) => {
e.preventDefault();
jQuery('.errorSender-screen').hide();
jQuery('#senderSelect').focus();
});
function senderErrorModal(){
// Sender Name
let error_sender_name = jQuery('.errorSender-text .error_sender_name');
let optionSenderText = jQuery('#senderSelect option:selected').text();
error_sender_name.text(optionSenderText);
// Company Name
let error_company_name = jQuery('.errorSender-text .error_company_name');
let optionDataCompany = jQuery('#input_select_carrier option:selected').attr('data-company');
error_company_name.text(optionDataCompany);
// Mostramos modal
jQuery('.errorSender-screen').show();
const position = jQuery('.errorSender-screen').offset().top - 200;
jQuery('html, body').animate({
scrollTop: position,
}, 1000);
}
});
/**
* eliminar tracking_number al cancelar un envío en Prestashop
*/
function removeTrackingNumberInfo() {
if (platform == 'ps') {
jQuery('#orderShippingTabContent .table td:last').prev().html('');
}
}