/home/brandsfa/annurbd.com/public/themes/theme_aster/public/assets/js/tracking-page.js
"use strict";
$('.digital-product-download').on('click',function (){
let action = $('.get-digital-product-download-url').data('action');
$.ajax({
type: "GET",
url: action,
responseType: 'blob',
beforeSend: function () {
$("#loading").addClass("d-grid");
},
success: function (data) {
if (parseInt(data.status) === 1 && data.file_path) {
const a = document.createElement('a');
a.href = data.file_path;
a.download = data.file_name;
a.style.display = 'none';
document.body.appendChild(a);
a.click();
window.URL.revokeObjectURL(data.file_path);
} else if (parseInt(data.status) === 2) {
$('#order_details').modal('hide');
$('#digital-product-order-otp-verify-modal .modal-body').empty().html(data.view);
$('#digital-product-order-otp-verify-modal').modal('show');
newTick(data.data.new_time);
otpVerifyEvents();
} else if (parseInt(data.status) === 0) {
toastr.error(data.message);
$('#digital-product-order-otp-verify-modal').modal('hide');
}
},
error: function () {
},
complete: function () {
$("#loading").removeClass("d-grid");
},
});
});
function otpVerifyEvents() {
$(".otp-form .submit-btn").attr("disabled", true).addClass("disabled");
$(".otp-form *:input[type!=hidden]:first").focus();
let otp_fields = $(".otp-form .otp-field"),
otp_value_field = $(".otp-form .otp-value");
otp_fields.on("input", function (e) {
$(this).val($(this).val().replace(/[^0-9]/g, ""));
let otp_value = "";
otp_fields.each(function () {
let field_value = $(this).val();
if (field_value !== "") otp_value += field_value;
});
otp_value_field.val(otp_value);
if (otp_value.length === 4) {
$(".otp-form .submit-btn").attr("disabled", false).removeClass("disabled");
} else {
$(".otp-form .submit-btn").attr("disabled", true).addClass("disabled");
}
})
.on("keyup", function (e) {
let key = e.keyCode || e.charCode;
if (key === 8 || key === 46 || key === 37 || key === 40) {
$(this).prev().focus();
} else if (key === 38 || key === 39 || $(this).val() !== "") {
$(this).next().focus();
}
})
.on("paste", function (e) {
let paste_data = e.originalEvent.clipboardData.getData("text");
let paste_data_splitted = paste_data.split("");
$.each(paste_data_splitted, function (index, value) {
otp_fields.eq(index).val(value);
});
});
}
$('#verify-otp').on('click',function (){
let formData = $('.submit-digital-product-download-otp');
$.ajaxSetup({
headers: {'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')}
});
$.ajax({
type: "POST",
url: formData.attr('action'),
data: formData.serialize(),
beforeSend: function () {
$("#loading").addClass("d-grid");
},
success: function (data) {
if (data.status === 1) {
$('.verify-message').addClass('text-success').removeClass('text-danger');
if(data.file_path){
const a = document.createElement('a');
a.href = data.file_path;
a.download = data.file_name;
a.style.display = 'none';
document.body.appendChild(a);
a.click();
window.URL.revokeObjectURL(data.file_path);
}
$('#digital_product_order_otp_verify').modal('hide');
}else{
$('.verify-message').addClass('text-danger').removeClass('text-success');
}
$('.verify-message').html(data.message).fadeIn();
},
error: function (error) {
},
complete: function () {
$("#loading").removeClass("d-grid");
},
});
});
$('#resend-otp').on('click',function (){
$('input.otp-field').val('');
$('.verify-message').fadeOut(300).empty();
let formData = $('.submit-digital-product-download-otp');
let action = $('#digital-product-download-otp-reset').data('route');
$.ajaxSetup({
headers: {'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')}
});
$.ajax({
url: action,
method: 'POST',
data: formData.serialize(),
beforeSend: function () {
$("#loading").addClass("d-grid");
},
success: function (data) {
if (data.status === 1) {
newTick(data.data.new_time);
toastr.success(data.message);
} else {
toastr.error(data.message);
}
},
complete: function () {
$("#loading").removeClass("d-grid");
},
});
});
function newTick(newSeconds) {
let newCounter = $('.verify-counter');
let m = Math.floor(newSeconds / 60);
let s = newSeconds % 60;
newSeconds--;
newCounter.html(m + ":" + (s < 10 ? "0" : "") + String(s));
if (newSeconds > 0) {
setTimeout(newTick, 1000);
$('.resend-otp-button').attr('disabled', true);
$(".resend_otp_custom").slideDown();
}
else {
$('.resend-otp-button').removeAttr('disabled');
$(".verify-counter").html("0:00");
$(".resend_otp_custom").slideUp();
}
}