Current File : /home/getxxhzo/app.genicards.com/resources/assets/js/coupon_code/coupon_code.js |
// document.addEventListener("turbo:load", loadCouponCodeData);
document.addEventListener("DOMContentLoaded", loadCouponCodeData);
function loadCouponCodeData() {
var dateFormat = getFormattedDateTime(userDateFormate);
window.couponExpireAt = $("#couponExpireAt").flatpickr({
locale: getLoggedInUserLang,
minDate: new Date().fp_incr(1),
dateFormat: "Y-m-d",
altInput: true,
altFormat: dateFormat,
});
window.editCouponExpireAt = $("#editCouponExpireAt").flatpickr({
locale: getLoggedInUserLang,
minDate: new Date().fp_incr(1),
dateFormat: "Y-m-d",
altInput: true,
altFormat: dateFormat,
});
}
listenSubmit("#addCouponCodeForm", function (e) {
e.preventDefault();
if ($("#percentageType").prop("checked") == true) {
if ($("#couponDiscount").val() > 100) {
displayErrorMessage(Lang.get("js.coupon_code_percent_validation"));
return false;
}
}
$("#couponCodeSaveBtn").attr("disabled", true);
$("#couponName").trigger("keyup");
$.ajax({
url: route("coupon-codes.store"),
type: "post",
data: $(this).serialize(),
success: function (result) {
$("#couponCodeSaveBtn").attr("disabled", false);
Livewire.dispatch("refresh");
displaySuccessMessage(result.message);
$("#couponCodeModal").modal("hide");
},
error: function (result) {
$("#couponCodeSaveBtn").attr("disabled", false);
displayErrorMessage(result.responseJSON.message);
},
});
});
listenSubmit("#editCouponCodeForm", function (e) {
e.preventDefault();
if ($("#editCouponPercentageType").prop("checked") == true) {
if ($("#editCouponDiscount").val() > 100) {
displayErrorMessage(Lang.get("js.coupon_code_percent_validation"));
return false;
}
}
$("#editCouponCodeSaveBtn").attr("disabled", true);
let id = $("#editCouponId").val();
$("#editCouponName").trigger("keyup");
$.ajax({
url: route("coupon-codes.update", id),
type: "put",
data: $(this).serialize(),
success: function (result) {
$("#editCouponCodeSaveBtn").attr("disabled", false);
Livewire.dispatch("refresh");
displaySuccessMessage(result.message);
$("#editCouponCodeModal").modal("hide");
},
error: function (result) {
$("#editCouponCodeSaveBtn").attr("disabled", false);
displayErrorMessage(result.responseJSON.message);
},
});
});
listenClick(".edit-coupon-code", function () {
let couponId = $(this).attr("data-id");
$.ajax({
url: route("coupon-codes.edit", couponId),
success: function (result) {
let couponCode = result.data;
$("#editCouponId").val(couponCode.id);
$("#editCouponName").val(couponCode.coupon_name);
$("#editcouponLimit").val(couponCode.coupon_limit);
if (couponCode.type == 1) {
$("#editCouponFixedType").prop("checked", true);
$("#editDiscountTypeIcon").text("Flat");
} else {
$("#editCouponPercentageType").prop("checked", true);
$("#editDiscountTypeIcon").text("%");
}
$("#editCouponDiscount").val(couponCode.discount);
editCouponExpireAt.setDate(
moment(couponCode.expire_at).format(
getFormattedDateTime(userDateFormate, 1)
)
);
$("#editCouponExpireAt").val(
moment(couponCode.expire_at).format(
getFormattedDateTime(userDateFormate, 1)
)
);
$("#editCouponStatus").prop("checked", couponCode.status);
$("#editCouponCodeModal").modal("show");
},
error: function (result) {
displayErrorMessage(result.responseJSON.message);
},
});
});
listenClick(".delete-coupon-code", function () {
let id = $(this).attr("data-id");
let url = route("coupon-codes.destroy", id);
deleteItem(url, Lang.get("js.coupon_code"));
});
listenKeyup("#couponName, #editCouponName", function () {
$(this).val($(this).val().toUpperCase().replace(/-/g, ""));
});
listenHiddenBsModal("#couponCodeModal", function () {
$("#addCouponCodeForm")[0].reset();
$("#discountTypeIcon").text("%");
couponExpireAt.clear();
});
listenClick("#changeCouponStatus", function () {
let codeId = $(this).attr("data-id");
let status = $(this).prop("checked");
let url = route("coupon-codes.change-status", codeId);
$.ajax({
url: url,
type: "post",
data: { status: status },
success: function (result) {
displaySuccessMessage(result.message);
Livewire.dispatch("refresh");
},
error: function (result) {
displayErrorMessage(result.responseJSON.message);
},
});
});
listenChange('input[name="type"]', function () {
let icon = $("#discountTypeIcon");
let editFormIcon = $("#editDiscountTypeIcon");
if ($(this).val() == 1) {
icon.text(Lang.get("js.flat"));
editFormIcon.text(Lang.get("js.flat"));
} else {
icon.text("%");
editFormIcon.text("%");
}
});