'
var nextOrderProductTitle = '
' + contractItem?.¿nodo?.título + (artículo de contrato?.¿nodo?.¿Título variante? (' - ' + contratoItem?.¿nodo?.títulovariante): '') + (artículo de contrato?.¿nodo?.cantidad > 1 ? 'X' + contratoItem?.¿nodo?.cantidad + '' : '') + '
'
jQuery('#orderImage_' + orderItem.identificacióndividir("/").estallido()).append(próximaOrderImage);
jQuery('#orderTitle_' + orderItem.identificacióndividir("/").estallido()).append(próximo título del producto del pedido);
si (artículo de contrato.¿nodo?.títulovariante == nulo) {
jQuery('.appstle_variantTitle_' + contractItem.¿nodo?.ID del Productodividir('/')[4]).esconder();
}
});
})
}
// API de próximos pedidos LLAME AQUÍ
si (subítem.¿nodo?.estado == "ACTIVO" && !isPrepaidplan) {
var nextOrderUrl;
si (id de cliente! = nulo) {
nextOrderUrl = "https://subscription-admin.manzanacom/api/subscription-billing-attempts/top-orders?contractId=" + contractId + "&customerId=" + customerId + "&shop=" + shopName
}
demás {
nextOrderUrl = "https://subscription-admin.manzanacom/api/subscription-billing-attempts/top-orders?contractId=" + contractId + "&customerUid=" + token + "&shop=" + shopName
}
jQuery.ajax({
escriba: "OBTENER",
URL: próxima URL del pedido,
tipo de datos: "json",
encabezados: {
'Control-de-acceso-permitir-origen': '*',
},
éxito: función (resultado, estado, xhr) {
si (resultado?.longitud > 0) {
resultado.mapa((artículo de pedido) => {
var próximoOrden =
'
'
var nextOrderOld = '
'
jQuery('#orderAcc_' + subItem.nodo.nodo.identificacióndividir('/')[4]).agregar(próximoPedido);
subartículo.nodo.nodo.¿líneas?.¿bordes?.paraCada(elementocontrato => {
si (artículo de contrato.¿nodo?.ID de producto! = nulo) {
var nextOrderImage = '
'
var nextOrderProductTitle = '
' + contractItem?.¿nodo?.título + (artículo de contrato?.¿nodo?.¿Título variante? (' - ' + contratoItem?.¿nodo?.títulovariante): '') + (artículo de contrato?.¿nodo?.cantidad > 1 ? 'X' + contratoItem?.¿nodo?.cantidad + '' : '') + '
'
jQuery('#orderImage_' + orderItem?.identificación).append(próximaOrderImage);
jQuery('#orderTitle_' + orderItem?.identificación).append(próximo título del producto del pedido);
si (artículo de contrato.nodo.nodo.títulovariante == nulo) {
jQuery('.appstle_variantTitle_' + contractItem.¿nodo?.¿ID del Producto?.dividir('/')[4]).esconder();
}
}
demás {
var nextOrderImage =
'
'
+ '
'
+ '' + elementocontrato.¿nodo?.título + 'ha sido eliminado'
+ '
'
+ '
'
jQuery('#orderImage_' + orderItem.identificación).agregar (próxima imagen de pedido)
}
});
})
}
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
}
})
}
}
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
}
});
});
jQuery(".appstle_preloader").desvanecerse (2000, función () {
jQuery(".appstle_myProduct").desvanecerse(1000);
jQuery(".appstle_myProduct").css('visibilidad', 'visible');
if (getDeviceType() !== "móvil") {
jQuery('.appttle_single_item_contract').cada(función(índice, el) {
var contratoId = jQuery(el).attr('id-contrato-datos');
var alturaimagen = jQuery('.appstle_subscription_contract_content_wrapper_' + contractId).altura();
jQuery('.apptle_subscription_contract_image_wrapper_' + contractId).padre().css('altura', alturaimagen);})
}
});
}
demás {
jQuery(".appstle_preloader").desvanecerse (2000, función () {
jQuery(".appstle_myProduct").append("
" + noSubscriptionMessage + "
").desvanecerse(1000);
jQuery(".appstle_myProduct").css('visibilidad', 'visible');
});
}
adjuntarListener();
}
función skipBillingOrder(id) {
si (id! = nulo && id! = indefinido) {
jQuery('.appstle_skiporder_' + id).html('Procesando.')
jQuery.ajax({
tipo: "PONER",
URL: "https://suscripción-admin.manzanacom/api/subscription-billing-attempts/skip-order/" + id + "?shop=" + Shopify.comercio,
tipo de datos: "json",
encabezados: {
'Control-de-acceso-permitir-origen': '*',
},
éxito: función (resultado, estado, xhr) {
ventana.alquiler.recargar();
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
}
});
} demás {
alerta ("No se encuentra el ID del pedido")
}
}
función actualizarDetallesPago(id) {
si (id! = nulo && id! = indefinido) {
jQuery('.apptle_paidBtnUpdate_' + id).html('Procesando.');
jQuery.ajax({
tipo: "PONER",
URL: "https://suscripción-admin.manzanacom/api/subscription-contracts-update-paid-method?contractId=" + id + "&shop=" + Shopify.comercio,
tipo de datos: "json",
encabezados: {
'Control-de-acceso-permitir-origen': '*',
},
éxito: función (resultado, estado, xhr) {
jQuery(".apptle_paidSuccessMessage_" + id).espectáculo();
jQuery('.apptle_paidBtnUpdate_' + id).html(texto de éxito);
setTimeout(función() {jQuery('.appstle_paymentBtnUpdate_' + id).html(updatePaymentBtnText);},5000)
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
jQuery(".apptle_paidSuccessMessage_" + id).espectáculo();
jQuery('.apptle_paidBtnUpdate_' + id).html(texto de éxito);
setTimeout(función() {jQuery('.appstle_paymentBtnUpdate_' + id).html(updatePaymentBtnText);},5000)
},
});
}
demás {
alerta ("No se encuentra el ID del contrato")
}
}
función cancelar suscripción (id) {
si (id! = nulo && id! = indefinido) {
jQuery('.apptle_cancelBtnText_' + id).html('Procesando.')
jQuery.ajax({
escriba: "BORRAR",
URL: "https://suscripción-admin.manzanacom/api/subscription-contracts/" + id + "?shop=" + Shopify.comercio,
tipo de datos: "json",
encabezados: {
'Control-de-acceso-permitir-origen': '*',
},
éxito: función (resultado, estado, xhr) {
suscripciónInit();
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
}
});
} demás {
alerta ("No se encontró la identificación del producto")
}
}
función mostrarFrecuenciaForm(contratoId) {
// jQuery("#orderFrequencyform_" + contractId).espectáculo();
jQuery(".apptle_orderFrequencyformDiv_" + contractId).bajar deslizándose();
jQuery('.editBtnFrequency_' + contractId).esconder();
}
función mostrarChangeOrderDateForm(contratoId){
// jQuery("#orderDateform_" + contractId).espectáculo();
jQuery(".appstle_orderDateformDiv_" + contractId).bajar deslizándose();
jQuery('.editBtnOrderDate_' + contractId).esconder();
}
función ocultarOrderDateForm(contratoId){
// jQuery("#orderDateform_" + contractId).esconder();
jQuery(".appstle_orderDateformDiv_" + contractId).deslizar hacia arriba();
jQuery('.editBtnOrderDate_' + contractId).espectáculo();
}
función ocultarFrecuenciaForma(contratoId) {
jQuery(".apptle_orderFrequencyformDiv_" + contractId).deslizar hacia arriba();
// jQuery("#orderFrequencyform_" + contractId).esconder();
jQuery('.editBtnFrequency_' + contractId).espectáculo();
}
función actualizarOrderDate(contratoId) {
var nextBillingDate = documento.formularios["orderDateform_" + contractId].cambiar fecha de pedidovalor;
if (nextBillingDate!= null && nextBillingDate!= indefinido) {
// jQuery("#orderDateform_" + contractId).esconder();
jQuery(".appstle_orderDateformDiv_" + contractId).deslizar hacia arriba();
jQuery("#orderDateloadingText_" + contractId).espectáculo();
jQuery.ajax({
tipo: "PONER",
URL: "https://suscripción-admin.manzanacom/api/subscription-contracts-update-billing-date?contractId=" + contractId + "&nextBillingDate=" + nueva fecha (nextBillingDate).toISOString() + "&tienda=" + Shopify.comercio,
tipo de datos: "json",
encabezados: {
'Control-de-acceso-permitir-origen': '*',
},
éxito: función (resultado, estado, xhr) {
suscripciónInit()
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
}
});
// jQuery("#orderloadingText_"+contratoId).esconder();
} demás {
alert("Proporcione el recuento de frecuencia o el intervalo de frecuencia")
}
}
función actualizarFrecuencia(contratoId) {
var frecuenciaCount = documento.formularios["orderFrequencyform_" + contractId]?.recuento de frecuencias?.valor;
var frecuenciaInterval = documento.formularios["orderFrequencyform_" + contractId]?.¿Intervalo de frecuencia?.valor;
si (cuentafrecuencia <= 0)
alert("El recuento de frecuencias debe ser mayor que 1")
if (cuentafrecuencia!= nulo && cuentafrecuencia!= indefinido && cuentafrecuencia >= 0 &&intervalofrecuencia!= nulo &&intervalfrecuencia!= indefinido) {
// jQuery("#orderFrequencyform_" + contractId).esconder();
jQuery(".apptle_orderFrequencyformDiv_" + contractId).deslizar hacia arriba();
jQuery("#orderloadingText_" + contractId).espectáculo();
jQuery.ajax({
tipo: "PONER",
URL: "https://suscripción-admin.manzanacom/api/subscription-contracts-update-billing-interval?contractId=" + contractId + "&interval=" + frecuenciaInterval + "&intervalCount=" + frecuenciaCount + "&shop=" + Shopify.comercio,
tipo de datos: "json",
encabezados: {
'Control-de-acceso-permitir-origen': '*',
},
éxito: función (resultado, estado, xhr) {
suscripciónInit();
},
error: función (xhr, estado, error) {
consola.log("Resultado: " + estado + " " + error + " " + xhr.estado + " " + xhr.estadoTexto)
}
});
// jQuery("#orderloadingText_"+contratoId).esconder();
} demás {
alert("Proporcione el recuento de frecuencia o el intervalo de frecuencia")
}
}
función adjuntarListener() {
jQuery('.appstle_product-search-button').on('hacer clic', función() {
var contractId = jQuery(esto).attr('id-contrato-datos');
var Producto seleccionado = jQuery('select[data-contract-id=' + contractId + ']');
si (!selectedProduct.valor()) {
alert('Por favor seleccione un producto para agregar.')
devolver;
}
jQuery(".appstle_myProduct").desvanecerse(500, función () {
jQuery(".appstle_preloader").desvanecerse(250);
});
var addLine_settings = {
"asíncrono": verdadero,
"dominiocruzado": verdadero,
"url": 'https://subscription-admin.manzanacom/api/subscription-contracts-add-line-item?contractId=' + contractId + '&price=' + producto seleccionado.attr('data-variant-price') + '&cantidad=1&shop=' + shopName + '&variantId=' + producto seleccionado.attr('id-variante-datos'),
"método": "PONER",
"encabezados": {
"control-cache": "sin caché",
}
}
jQuery.ajax(addLine_settings).done(function (response) {
subscriptionInit();
})
})
jQuery('.appstle_select_wrapper select').on('cambiar', función() {
var currentValue= jQuery(esto).valor();
var selectedVariantPrice = jQuery(esto).buscar('opción[valor="' + valoractual + '"]').attr('precio-variante-datos');
var formid = jQuery(esto).attr('edición de datos');
jQuery('#' + formulario).attr('precio-datos', PrecioVariante seleccionado);
})
jQuery('.appttle_editButton').on('hacer clic', función() {
var formid = jQuery(esto).attr('edición de datos');
jQuery('#' + formulario).encontrar('appstle_edit_wrapper').bajar deslizándose();
jQuery('#' + formulario).encontrar('appstle_editDeleteGroup').esconder();
jQuery('#' + formulario).encontrar('appstle_buttonGroup').espectáculo();
})
jQuery('.apptle_cancelButton').on('hacer clic', función() {
var formid = jQuery(esto).attr('edición de datos');
jQuery('#' + formulario).encontrar('appstle_edit_wrapper').deslizar hacia arriba();
jQuery('#' + formulario).encontrar('appstle_editDeleteGroup').espectáculo();
jQuery('#' + formulario).encontrar('appstle_buttonGroup').esconder();
})
jQuery('.apptle_deleteButton').on('hacer clic', función() {
var formid = jQuery(esto).attr('edición de datos');
var lineId = jQuery('#' + formid).attr('id-línea-datos');
let prepaidPlanFlag = jQuery('#' + formid).attr('datos-esPrepago');
var contractId = jQuery('#' + formid).attr('id-contrato-datos');
var tienda = jQuery('#' + formid).attr('tienda de datos'); eliminar confirmación emergente (prepaidPlanFlag); // Mostrando Eliminar confirmar modal // Al hacer clic en confirmar, el código ejecutará jQuery('.appstle_delete_model_yesbtn').on('hacer clic', función() {
ocultarDeleteConfirmPopup(); // Ocultar el modelo de confirmación
jQuery(".appstle_myProduct").desvanecerse(500, función () {
jQuery(".appstle_preloader").desvanecerse(250);
});
configuración de var = {
"asíncrono": verdadero,
"dominiocruzado": verdadero,
"url": 'https://subscription-admin.manzanacom/api/subscription-contracts-remove-line-item?contractId=' + contractId + '&lineId=' + lineId + '&shop=' + tienda,
"método": "PONER",
"encabezados": {
"control-cache": "sin caché",
"token-cartero": "06eaf057-9152-2ff9-616b-c8f3f319e47f"
}
}
jQuery.ajax(configuración).done(function (response) {
subscriptionInit();
});
})
})
jQuery('.appttle_updateButton').on('hacer clic', función() {
var formid = jQuery(esto).attr('edición de datos');
var lineId = jQuery('#' + formid).attr('id-línea-datos');
var contractId = jQuery('#' + formid).attr('id-contrato-datos');
var tienda = jQuery('#' + formid).attr('tienda de datos');
precio var = jQuery('#' + formid).attr('precio-datos');
var formData = jQuery('#' + formid + 'formulario').fabricar en serie();
var inputElementValue = jQuery('#' + formid).buscar('entrada')[0].valor;
if (validarNúmero(inputElementValue)) {
jQuery(".appstle_myProduct").desvanecerse(500, función () {
jQuery(".appstle_preloader").desvanecerse(250);
});
jQuery('#' + formulario).encontrar('appttle_input_error').esconder();
configuración de var = {
"asíncrono": verdadero,
"dominiocruzado": verdadero,
"url": 'https://subscription-admin.manzanacom/api/subscription-contracts-update-line-item?contractId=' + contractId + '&price=' + precio + '&lineId=' + lineId + '&shop=' + tienda + '&' + formData,
"método": "PONER",
"encabezados": {
"control-cache": "sin caché",
"token-cartero": "06eaf057-9152-2ff9-616b-c8f3f319e47f"
}
}
jQuery.ajax(configuración).done(function (response) {
subscriptionInit();
});
} else {
jQuery('#' + formid).encontrar('appttle_input_error').espectáculo();
}
});
agregarVariante();
addSelect2InHead();
addIconCssInHead();
}
función agregarVariante() {
var elementosWithProductId = Matriz.prototipo.rebanadacall(jQuery('[datos-id-producto]'))
const addVariantItem = async () => {
si (elementosConProductId.longitud > 0) {
var elemento = elementosConProductId.cambio();
configuración de var = {
"asíncrono": verdadero,
"dominiocruzado": verdadero,
"url": 'https://subscription-admin.manzanacom/api/data/product?productId=' + jQuery(elemento).attr('id-producto-datos') + '&tienda=' + nombre de la tienda,
"método": "OBTENER",
"encabezados": {
"control-cache": "sin caché",
"token-cartero": "06eaf057-9152-2ff9-616b-c8f3f319e47f"
}
}
jQuery.ajax(configuración).hecho (función (respuesta) {
var variantes = respuesta?.variantes;
jQuery(variantes).cada(función (índice, variante) {
opción var = jQuery('
', {
valor: variante.admin_graphql_api_id,
texto: variante.título,
seleccionado: ((variante?.admin_graphql_api_id == jQuery(elemento).attr("id-variante-datos")) ? verdadero Falso),
})
opción.attr('precio-variante-datos', variante.precio);
opción.appendTo(jQuery(elemento).buscar('seleccionar'));
});
si (variantes.longitud <= 1) {
jQuery(elemento).encontrar('appstle_select_wrapper').esconder();
}
agregarVariantItem();
});
}
}
agregarVariantItem();
}
función addLineItem(elementos, contractId) {
var elementos seleccionados = elementos;
jQuery(".appstle_myProduct").desvanecerse(500, función () {
jQuery(".appstle_preloader").desvanecerse(250);
});
var addline = función() {
si (artículos seleccionados.longitud > 0) {
var elemento = elementos seleccionados.cambio();
configuración de var = {
"asíncrono": verdadero,
"dominiocruzado": verdadero,
"url": 'https://subscription-admin.manzanacom/api/data/product?productId=' + artículo + '&shop=' + nombre de tienda,
"método": "OBTENER",
"encabezados": {
"control-cache": "sin caché",
}
}
jQuery.ajax(configuración).hecho (función (respuesta) {
var primeraVariante = respuesta?.variantes[0]
var addLine_settings = {
"asíncrono": verdadero,
"dominiocruzado": verdadero,
"url": 'https://subscription-admin.manzanacom/api/subscription-contracts-add-line-item?contractId=' + contractId + '&price=' + firstVariant?.precio + '&cantidad=1&tienda=' + nombre de la tienda + '&variantId=' + primeraVariante?.admin_graphql_api_id,
"método": "PONER",
"encabezados": {
"control-cache": "sin caché",
}
}
jQuery.ajax(addLine_settings).done(function (response) {
addline();
})
});
} else {
subscriptionInit();
}
}
addline();
}
function validateNumber(value) {
var type = typeof value;
if (type === 'undefined') {
return true;
} else if (!value.recortar()) {
falso retorno;
} más si (isNaN(valor)) {
falso retorno;
} si no (parseInt(valor) < 1) {
falso retorno;
} demás {
devolver verdadero;
}
};
función agregarSelect2InHead() {
jQuery('cabeza').append('