File: /var/www/vhost/disk-apps/teamdemo.sports-crowd.com/public/js/banners.js
const url = "";
function saveImage(id) {
var fImage = document.getElementById("image");
fImage = fImage.files[0];
if (fImage) {
var formData = new FormData();
formData.append("id", id);
formData.append("image", fImage);
$.ajax({
type: "POST",
dataType: "json",
processData: false,
contentType: false,
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
url: "/banners/saveImage",
success: function (r) {
if (r.r) {
swal(r.m, {
icon: "success",
buttons: {
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
$(location).attr("href", url + "/banners");
}
});
} else {
swal("Error", Lang.get("messagesClient.banner_tag1"), "error");
}
},
});
} else {
alert("No hay archivo.");
}
}
function updateImage(id) {
var fImage = document.getElementById("image");
fImage = fImage.files[0];
if (fImage) {
var formData = new FormData();
formData.append("id", id);
formData.append("image", fImage);
$.ajax({
type: "POST",
dataType: "json",
processData: false,
contentType: false,
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
url: "/banners/updateImage",
success: function (r) {
if (r.r) {
swal(r.m, {
icon: "success",
buttons: {
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
$(location).attr("href", url + "/banners");
}
});
} else {
swal("Ok", r.m, "error");
}
},
});
} else {
alert("No hay archivo.");
}
}
function createBanner() {
$("#createBanner").validator("update");
$("#createBanner")
.validator("update")
.on("submit", function (e) {
e.preventDefault();
if ($("#selectCategoryId").val() != "") {
$("#link").prop("required", false);
$("#selectCategoryId").prop("required", true);
} else {
$("#link").prop("required", true);
$("#selectCategoryId").prop("required", false);
}
var value = $("#createBanner input[name='value']").val();
var category_id = $("#createBanner select[name='category_id']").val();
var type_action_id = $("#createBanner select[name='type_action_id']").val();
if (
(type_action_id == "1" && !category_id) ||
(type_action_id == "1" && category_id == "0")
) {
swal("Debes seleccionar una categoria", "error");
return;
} else if (type_action_id == "1" && category_id != "0") {
value = category_id;
}
$("#btn-create-banner").addClass("displayNone");
$("#spinnerButton").removeClass("displayNone");
var info = {
name: $("#createBanner input[name='name']").val(),
description: $(
" #createBanner input[name='description']"
).val(),
order: $("#createBanner input[name='order']").val(),
type_action_id: $(
" #createBanner select[name='type_action_id']"
).val(),
value,
};
swal(Lang.get("messagesClient.banner_tag3"), {
buttons: {
cancel: "No",
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
$.ajax({
url: "/banners/create",
type: "POST",
contentType: "application/json",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr(
"content"
),
"Content-Type": "application/json",
},
data: JSON.stringify(info),
success: function (r) {
if (r.r) {
var id_banner = r.d.id;
var image = document.getElementById("image");
if (image != null) {
saveImage(id_banner);
} else {
swal(r.m, {
icon: "success",
buttons: {
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
$(location).attr(
"href",
url + "/banners"
);
}
});
}
} else {
swal("Error", r.m, "error");
$("#btn-create-banner").removeClass(
"displayNone"
);
$("#spinnerButton").addClass("displayNone");
}
},
error: function (e) {
swal("Error", Lang.get("messagesClient.banner_tag4"), "error");
$("#btn-create-banner").removeClass("displayNone");
$("#spinnerButton").addClass("displayNone");
},
});
} else {
$("#btn-create-banner").removeClass("displayNone");
$("#spinnerButton").addClass("displayNone");
}
});
});
}
function clickEditBanner(value) {
_table = $("#example2").DataTable();
index = _table.page();
localStorage.setItem("productsTableIndex", index);
$(location).attr("href", url + "/banners/edit/" + value);
}
function editBanner() {
$("#editBanner").validator("update");
$("#editBanner")
.validator("update")
.on("submit", function (e) {
e.preventDefault();
if ($("#selectCategoryId").val() != "") {
$("#link").prop("required", false);
$("#selectCategoryId").prop("required", true);
} else {
$("#link").prop("required", true);
$("#selectCategoryId").prop("required", false);
}
var value = $("#editBanner input[name='value']").val();
var category_id = $("#editBanner select[name='category_id']").val();
var type_action_id = $(
"#editBanner select[name='type_action_id']"
).val();
if (
(type_action_id == "1" && !category_id) ||
(type_action_id == "1" && category_id == "0")
) {
swal("Debes seleccionar una categoria", "error");
return;
} else if (type_action_id == "1" && category_id != "0") {
value = category_id;
}
$("#btn-edit-banner").addClass("displayNone");
$("#spinnerButton").removeClass("displayNone");
var info = {
id: $("#btn-edit-banner").attr("data-id"),
name: $("#editBanner input[name='name']").val(),
description: $("#editBanner input[name='description']").val(),
order: $("#editBanner input[name='order']").val(),
type_action_id: $("#editBanner select[name='type_action_id']").val(),
value,
};
swal(Lang.get("messagesClient.banner_tag5"), {
buttons: {
cancel: "No",
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
$.ajax({
url: "/banners/update",
type: "PUT",
contentType: "application/json",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr(
"content"
),
"Content-Type": "application/json",
},
data: JSON.stringify(info),
success: function (r) {
if (r.r) {
var id_banner = r.d.id;
var image = document.getElementById("image")
.value;
if (image != "") {
updateImage(id_banner);
} else {
swal(r.m, {
icon: "success",
buttons: {
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
localStorage.setItem(
"setPageTable",
true
);
$(location).attr(
"href",
url + "/banners"
);
}
});
}
} else {
swal("Error", r.m, "error");
$("#btn-edit-banner").removeClass(
"displayNone"
);
$("#spinnerButton").addClass("displayNone");
}
},
error: function (e) {
swal("Error", Lang.get("messagesClient.banner_tag6"), "error");
$("#btn-edit-banner").removeClass("displayNone");
$("#spinnerButton").addClass("displayNone");
},
});
} else {
$("#btn-edit-banner").removeClass("displayNone");
$("#spinnerButton").addClass("displayNone");
}
});
});
}
function setPageTable() {
localStorage.setItem("setPageTable", true);
$(location).attr("href", "/banners");
}
/**Activar/Desactivar Banner usando switch*/
function chkBanner(value) {
var state;
if ($("#Checkactive" + value).is(":checked")) {
state = 1;
} else {
state = 0;
}
var info = {
id: value,
state: state,
};
$.ajax({
url: "/banners/active",
type: "POST",
contentType: "application/json",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
"Content-Type": "application/json",
},
data: JSON.stringify(info),
success: function (r) {
if (r.r) {
swal("Ok", r.m);
} else {
swal("Error", r.m, "error");
}
},
error: function (e) {
swal("Error", Lang.get("messagesClient.banner_tag7"), "error");
},
});
}
/**Método para eliminar banner*/
function clickDeleteBanner(value) {
swal(Lang.get("messagesClient.banner_tag8"), {
buttons: {
cancel: "No",
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
var info = {
id: value,
};
$.ajax({
url: "/banners/delete",
type: "POST",
contentType: "application/json",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr(
"content"
),
"Content-Type": "application/json",
},
data: JSON.stringify(info),
success: function (r) {
if (r.r) {
swal(r.m, {
icon: "success",
buttons: {
Ok: true,
},
}).then((val) => {
if (val == "Ok") {
$(location).attr("href", url + "/banners");
}
});
} else {
swal("Error", r.m, "error");
}
},
error: function (e) {
swal("Error", Lang.get("messagesClient.banner_tag9"), "error");
},
});
}
});
}
function changeType(type, type_selected = false) {
if (type == 2 || type == 3) {
$("#container_category").addClass("hide");
$("#container_value").removeClass("hide");
if (!type_selected) {
$("#value").val("");
}
}
if (type == 1) {
$("#container_category").removeClass("hide");
$("#container_value").addClass("hide");
$("#category_id").empty();
$.ajax({
type: "GET",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
url: "/categories/list",
data: null,
success: function (response) {
if (response.r) {
$("#category_id").prop("disabled", false);
$("#category_id")
.append(
'<option value="0" selected disabled>-- Seleccionar</option>'
)
.select("refresh");
for (var i = 0; i < response.data.length; i++) {
if (
type_selected &&
type_selected == response.data[i].id
) {
$("#category_id")
.append(
'<option value="' +
response.data[i].id +
'" selected>' +
response.data[i].name +
"</option>"
)
.select("refresh");
} else {
$("#category_id")
.append(
'<option value="' +
response.data[i].id +
'">' +
response.data[i].name +
"</option>"
)
.select("refresh");
}
}
}
},
error: function (textStatus, errorThrown) {
swal("Error", Lang.get("messagesClient.field_datasources.error_delete"), "error");
},
});
}
}