const USECOOKIES_ADDDEVICE = false;
var $loader = $('#loader');
var TIME_ACT_REST_DATA = 30 * 1000; //30 segundos
const WWW_DOMAIN = "https://itccloud.es";
$(document).ready(function(e) {
if ($('.datepicker').length > 0) {
$('.datepicker').datepicker({
format: "dd/mm/yyyy",
weekStart: 1,
language: (LANG?LANG.label_lang:'en'),
clearBtn: true,
autoclose: true,
todayHighlight: true,
toggleActive: true
});
}
});
// Función para guardar un valor en localStorage o cookies
function saveStorage(key, valor, usarCookies) {
if (usarCookies) {
var expirationDate = new Date();
expirationDate.setFullYear(expirationDate.getFullYear() + 1); // Establecer la fecha de vencimiento en 1 año
var cookieString = key + "=" + valor + "; expires=" + expirationDate.toUTCString();
document.cookie = cookieString; // Almacenar en cookies
} else localStorage.setItem(key, valor); // Almacenar en localStorage
}
// Función para recuperar un valor de localStorage o cookies
function loadStorage(key, usarCookies) {
if (usarCookies) {
// Recuperar de cookies
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].trim();
if (cookie.indexOf(key + "=") === 0) {
return cookie.substring(key.length + 1);
}
}
return null; // Si la cookie no se encuentra
} else {
return localStorage.getItem(key); // Recuperar de localStorage
}
}
$.extend({
redirectPostURL: function(page, args) {
//alert(JSON.stringify(args));
if ($loader) $loader.show(); //Inhabilita el volver a dar la navegación y dar el error (aparece la ventana de "pensando")
var form = '';
$.each( args, function( key, value ) {
form += '';
});
$('').appendTo('body').submit();
}
});
$.extend({
redirectURL: function(page, args) {
//alert(JSON.stringify(args));
if ($loader) $loader.show(); //Inhabilita el volver a dar la navegación y dar el error (aparece la ventana de "pensando")
var form = '';
$.each( args, function( key, value ) {
form += '';
});
$('').appendTo('body').submit();
}
});
function isBtnValidar(target) {
var $inputValidar = $('.in-validar');
$inputValidar.removeClass('has-error');
var flagError = false;
$.each($("input, select, textarea",$(target)), function(i,v) {
var theTag = v.tagName;
var theElement = $(v);
var theValue = theElement.val();
//Validaciones
if (theElement.attr("obligatorio") == "true") { //Campos obligatorios
if (theValue == "") {
theElement.addClass('has-error');
flagError = true;
}
}
if (theElement.attr("numerico") == "true") { //Campos numéricos
if (theValue != "") {
if (isNaN(theValue)) {
theElement.addClass('has-error');
flagError = true;
}
}
}
if (theElement.attr("check") == "true") { //Campos check
if (!theElement.is(":checked")) {
theElement.addClass('has-error');
flagError = true;
}
}
var elementSize = 0;
var elementLength = 0;
if (theElement.attr("longitud") != null) { //Campos longitud cadena
if (theValue != "") {
elementSize = parseInt(theValue.length);
elementLength = parseInt(theElement.attr("longitud"));
if (elementSize != elementLength) {
theElement.addClass('has-error');
flagError = true;
}
}
}
if (theElement.attr("email") == "true") { //Email
if (theValue != "") {
var filtro=/^.+@.+\..{2,3}$/;
if (filtro.test(theValue) == false) {
theElement.addClass('has-error');
flagError = true;
}
}
}
});
return !flagError;
}
function showMsg(sMessage,sWin) {
var $winmodal = $('#'+sWin+'-modal');
if ($winmodal.length == 0) $winmodal = $('#error-modal');
if ($winmodal.length > 0) {
$('.reason', $winmodal).html(sMessage);
$winmodal.modal('show');
}
}
function b64toBlob(b64Data, contentType, sliceSize) {
contentType = contentType || '';
sliceSize = sliceSize || 512;
var byteCharacters = Base64.decode(b64Data);
var byteArrays = [];
for (var offset = 0; offset < byteCharacters.length; offset += sliceSize) {
var slice = byteCharacters.slice(offset, offset + sliceSize);
var byteNumbers = new Array(slice.length);
for (var i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
var byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
var blob = new Blob(byteArrays, {type: contentType});
return blob;
}
function descargarFileBin(name, b64Data, contentType, sliceSize) {
var blob=b64toBlob(b64Data, contentType, sliceSize);
var link=document.createElement('a');
var url;
if(window.navigator.msSaveOrOpenBlob) { //IExplorer
$(link).click(function(){
window.navigator.msSaveOrOpenBlob(blob, name);
});
} else {
url=window.URL.createObjectURL(blob);
$(link).attr("download", name);
$(link).attr("href", url);
}
document.body.appendChild(link);
link.click();
setTimeout(function(){
document.body.removeChild(link);
window.URL.revokeObjectURL(url);
}, 100);
}
$(document).on('click', '#btndesconectar', function(e) {
e.preventDefault();
e.stopPropagation();
var $btn = $(this);
$loader.show();
$.getJSON('disconnect.jsp', function(data) {
//console.log(JSON.stringify(data));
var res = data.result;
if (res == "1") window.location = WWW_DOMAIN;
else $loader.hide();
});
});