File: /var/www/vhost/disk-apps/sigedo-qas.allup.com.co/resources/js/views/institutions.js
$(document).ready(function() {
$('#accredited').change(function() {
if(this.checked) {
$('#containerAccredited').removeClass('displayNone');
}else{
$('#containerAccredited').addClass('displayNone');
}
});
$('#department_id').change(function() {
changeDepartment(this.value);
});
function getData(){
var name = document.getElementById("name").value;
var code = document.getElementById("code").value;
var nit = document.getElementById("nit").value;
var sector_id = document.getElementById("sector_id").value;
var academic_character_id = document.getElementById("academic_character_id").value;
var city_id = document.getElementById("city_id").value;
var address = document.getElementById("address").value;
var phone = document.getElementById("phone").value;
var url_web_page = document.getElementById("url_web_page").value;
var accredited = $('#accredited').is(":checked");
var date_accredited = document.getElementById("date_accredited").value;
var resolution_accredited = document.getElementById("resolution_accredited").value;
var validity_accredited = document.getElementById("validity_accredited").value;
var responsible = document.getElementById("responsible").value;
var position_id = document.getElementById("position_id").value;
var active = document.getElementById("active").value == "true" ? true : false;
if (!name || name == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.name_required"),
});
return;
}
if (!code || code == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.code_required"),
});
return;
}
if (!nit || nit == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.nit_required"),
});
return;
}
if (!sector_id || sector_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.sector_required"),
});
return;
}
if (!academic_character_id || academic_character_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.academic_character_required"),
});
return;
}
if (!city_id || city_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.city_required"),
});
return;
}
if (!address || address == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.address_required"),
});
return;
}
if (!phone || phone == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.phone_required"),
});
return;
}
if(accredited){
if (!date_accredited || date_accredited == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.date_accredited_required"),
});
return;
}
if (!resolution_accredited || resolution_accredited == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.resolution_accredited_required"),
});
return;
}
if (!validity_accredited || validity_accredited == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.validity_accredited_required"),
});
return;
}
}
if (!responsible || responsible == "") {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.responsible_required"),
});
return;
}
if (!position_id || position_id == 0) {
Swal.fire({
type: "error",
title: "Oops...",
text: Lang.get("fronjs.position_required"),
});
return;
}
var data = {
name,
code,
nit,
sector_id,
academic_character_id,
city_id,
address,
phone,
url_web_page,
accredited,
date_accredited,
resolution_accredited,
validity_accredited,
responsible,
position_id,
active,
};
return data;
}
$("#button_create").on("click", function(e) {
e.preventDefault();
if(data = getData()){
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: "/institutions",
type: "POST",
dataType: "json",
contentType: 'application/json',
data: JSON.stringify(data),
success: function(response) {
if (response.status) {
ladda.stop();
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
showConfirmButton: true,
}).then((val) => {
$(location).attr("href", "/institutions");
});
} else {
ladda.stop();
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 institution_id = $("#form_edit").attr("institution_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: "/institutions/" + institution_id,
type: "POST",
dataType: "json",
contentType: 'application/json',
data: JSON.stringify(newData),
success: function(response) {
if (response.status) {
ladda.stop();
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
showConfirmButton: true,
}).then((val) => {
$(location).attr("href", "/institutions");
});
} else {
ladda.stop();
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
}
});
}
});
});
window.changeDepartment = function(department_id,city = false) {
$.ajax({
type: "GET",
url: "/cities/" + department_id,
data: null,
success: function(response) {
$("#city_id option").remove();
if (response.status) {
$("#city_id").append('<option value="0" selected disabled>'+Lang.get("fronjs.select")+'</option>');
for (var i = 0; i < response.data.cities.length; i++) {
if(city && city == response.data.cities[i].id){
$("#city_id").append(
'<option value="' +
response.data.cities[i].id +
'" selected>' +
response.data.cities[i].name +
"</option>"
);
}else{
$("#city_id").append(
'<option value="' +
response.data.cities[i].id +
'">' +
response.data.cities[i].name +
"</option>"
);
}
}
}
},
error: function(textStatus, errorThrown) {
alert("error");
}
});
}
window.deleteRegistry = function(institution_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: "/institutions/" + institution_id,
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", "/institutions");
});
} else {
Swal.fire({
type: response.type,
title: response.title,
text: response.message,
});
}
},
});
});
},
}).then((result) => {
console.log(result);
});
};