File: /var/www/vhost/disk-apps/sigedo-qas.allup.com.co/resources/js/views/userprograms.js
$(document).ready(function() {
$("#institution_id").on("change", function(e) {
getCovenants(e.target.value);
});
$("#covenant_id").on("change", function(e) {
getCovenantprograms(e.target.value);
});
$("#covenantprogram_id").on("change", function(e) {
getServices(e.target.value);
});
var route = window.location.href;
route = route.split("/");
if (
route[3] == "userprograms" &&
route[5] == "programs" &&
route[7] == "edit"
) {
var institution_id = document.getElementById("institution_id").value;
var covenant_id = document.getElementById("covenant_id");
covenant_id = covenant_id.getAttribute("current");
var covenantprogram_id = document.getElementById("covenantprogram_id");
covenantprogram_id = covenantprogram_id.getAttribute("current");
var service_id = document.getElementById("service_id");
service_id = service_id.getAttribute("current");
var data = {
covenant_id,
covenantprogram_id,
service_id,
};
getCovenants(institution_id, data);
}
function getData() {
var institution_id = document.getElementById("institution_id").value;
var covenant_id = document.getElementById("covenant_id").value;
var covenantprogram_id = document.getElementById("covenantprogram_id")
.value;
var service_id = document.getElementById("service_id").value;
var rotation_start_date = document.getElementById("rotation_start_date")
.value;
var rotation_end_date = document.getElementById("rotation_end_date").value;
if (!institution_id || institution_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.institution_required"),
});
return;
}
if (!covenant_id || covenant_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.covenant_required"),
});
return;
}
if (!covenantprogram_id || covenantprogram_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.covenantprogram_required"),
});
return;
}
if (!service_id || service_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.services_required"),
});
return;
}
var data = {
institution_id,
covenant_id,
covenantprogram_id,
service_id,
rotation_start_date,
rotation_end_date,
};
return data;
}
$("#button_create").on("click", function(e) {
e.preventDefault();
if ((data = getData())) {
var user_id = $("#form_create").attr("user_id");
data.user_id = user_id;
Swal.fire({
title: Lang.get("fronjs.title_create"),
text: Lang.get("fronjs.text_create"),
type: "warning",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: Lang.get("fronjs.yes"),
cancelButtonText: Lang.get("fronjs.not"),
}).then((result) => {
if (result.value) {
var laddaBtn = e.currentTarget;
var ladda = Ladda.create(laddaBtn);
ladda.start();
$.ajax({
url: "/userprograms/" + user_id + "/programs",
type: "POST",
dataType: "json",
contentType: "application/json",
data: JSON.stringify(data),
success: function(response) {
ladda.stop();
if (response.status) {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
showConfirmButton: true,
}).then((val) => {
$(location).attr(
"href",
"/userprograms/" + user_id + "/programs"
);
});
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
}
});
}
});
$("#button_update").on("click", function(e) {
e.preventDefault();
var data = getData();
if (data) {
var user_id = $("#form_edit").attr("user_id");
data.user_id = user_id;
var userprogram_id = $("#form_edit").attr("userprogram_id");
const newData = Object.assign(
{ _method: $("input[name=_method]").val() },
data
);
Swal.fire({
title: Lang.get("fronjs.title_update"),
text: Lang.get("fronjs.text_update"),
type: "warning",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: Lang.get("fronjs.yes"),
cancelButtonText: Lang.get("fronjs.not"),
}).then((result) => {
if (result.value) {
var laddaBtn = e.currentTarget;
var ladda = Ladda.create(laddaBtn);
ladda.start();
$.ajax({
url:
"/userprograms/" +
user_id +
"/programs/" +
userprogram_id +
"/edit",
type: "POST",
dataType: "json",
contentType: "application/json",
data: JSON.stringify(newData),
success: function(response) {
ladda.stop();
if (response.status) {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
showConfirmButton: true,
}).then((val) => {
$(location).attr(
"href",
"/userprograms/" + user_id + "/programs"
);
});
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
}
});
}
});
});
window.deleteRegistry = function(user_id, userprogram_id) {
var data = {
_method: "DELETE",
};
Swal.fire({
title: Lang.get("fronjs.title_delete"),
type: "warning",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: Lang.get("fronjs.yes"),
cancelButtonText: Lang.get("fronjs.not"),
showLoaderOnConfirm: true,
allowOutsideClick: false,
allowEscapeKey: false,
preConfirm: (login) => {
return new Promise((resolve, reject) => {
$.ajax({
url: "/userprograms/" + userprogram_id + "/programs",
type: "POST",
dataType: "json",
contentType: "application/json",
data: JSON.stringify(data),
success: function(response) {
if (response.status) {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
showConfirmButton: true,
}).then((val) => {
$(location).attr(
"href",
"/userprograms/" + user_id + "/programs"
);
});
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
});
},
}).then((result) => {
console.log(result);
});
};
window.getCovenants = function(institution_id, data = false) {
$("#covenant_id")
.find("option")
.remove()
.end();
$("#covenantprogram_id")
.find("option")
.remove()
.end();
$("#service_id")
.find("option")
.remove()
.end();
if (!institution_id || institution_id == 0) {
return;
}
$.ajax({
url: "/userprograms/listCovenants/" + institution_id,
type: "GET",
data: null,
success: function(response) {
if (response.status) {
var covenants = response.data;
$("#covenant_id").append(
`<option value="0" disabled selected>${Lang.get(
"fronjs.select"
)}</option>`
);
for (var i = 0; i < covenants.length; i++) {
$("#covenant_id").append(
`<option value="${covenants[i].id}" ${
data && data.covenant_id == covenants[i].id ? "selected" : ""
}>${covenants[i].name}</option>`
);
}
if (data) {
getCovenantprograms(data.covenant_id, data);
}
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
};
window.getCovenantprograms = function(covenant_id, data = false) {
$("#covenantprogram_id")
.find("option")
.remove()
.end();
$("#service_id")
.find("option")
.remove()
.end();
if (!covenant_id || covenant_id == 0) {
return;
}
$.ajax({
url: "/userprograms/listCovenantprograms/" + covenant_id,
type: "GET",
data: null,
success: function(response) {
if (response.status) {
var covenant = response.data;
$("#covenantprogram_id").append(
`<option value="0" disabled selected>${Lang.get(
"fronjs.select"
)}</option>`
);
for (var i = 0; i < covenant["covenantprograms"].length; i++) {
$("#covenantprogram_id").append(
`<option value="${covenant["covenantprograms"][i].id}" ${
data &&
data.covenantprogram_id == covenant["covenantprograms"][i].id
? "selected"
: ""
}>
${covenant["covenantprograms"][i].program.name} - ${
covenant["covenantprograms"][i].rotation.name
}</option>`
);
}
if (data) {
getServices(data.covenantprogram_id, data.service_id);
}
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
};
window.getServices = function(covenantprogram_id, curren_service = false) {
$("#service_id")
.find("option")
.remove()
.end();
if (!covenantprogram_id || covenantprogram_id == 0) {
return;
}
$.ajax({
url: "/userprograms/listServices/" + covenantprogram_id,
type: "GET",
data: null,
success: function(response) {
if (response.status) {
var covenantprogram = response.data;
$("#service_id").append(
`<option value="0" disabled selected>${Lang.get(
"fronjs.select"
)}</option>`
);
for (var i = 0; i < covenantprogram["services"].length; i++) {
$("#service_id").append(
`<option value="${covenantprogram["services"][i].id}" ${
curren_service &&
curren_service == covenantprogram["services"][i].id
? "selected"
: ""
}>${covenantprogram["services"][i].name}</option>`
);
}
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
};