178 lines
5.7 KiB
JavaScript
178 lines
5.7 KiB
JavaScript
|
var userData = "";
|
||
|
|
||
|
$(document).ready(function () {
|
||
|
userData = $.parseJSON(localStorage.getItem("userData"));
|
||
|
FastClick.attach(document.body);
|
||
|
setView();
|
||
|
setEvents();
|
||
|
});
|
||
|
|
||
|
function setEvents() {
|
||
|
|
||
|
$(".btnSalir").on("click", function () {
|
||
|
cerrar();
|
||
|
});
|
||
|
|
||
|
$(".in").on("click", function () {
|
||
|
fichar('in');
|
||
|
});
|
||
|
|
||
|
$(".inMiddle").on("click", function () {
|
||
|
fichar('middle');
|
||
|
});
|
||
|
|
||
|
$(".outMiddle").on("click", function () {
|
||
|
fichar('middle');
|
||
|
});
|
||
|
|
||
|
$(".out").on("click", function () {
|
||
|
fichar('out');
|
||
|
});
|
||
|
|
||
|
setTimeout(function () {
|
||
|
cerrar();
|
||
|
}, 5000);
|
||
|
}
|
||
|
|
||
|
function setView() {
|
||
|
$(".footer").hide();
|
||
|
$("#txtNombre").text(userData["name"] + " " + userData["surname"]);
|
||
|
getInfo();
|
||
|
$("." + userData["button1"]).show();
|
||
|
$("." + userData["button2"]).show();
|
||
|
}
|
||
|
|
||
|
function fichar(direction) {
|
||
|
$.post({
|
||
|
urlPath: 'clockIn',
|
||
|
jsonData: [userData['userFk'], direction],
|
||
|
processData: false,
|
||
|
success: function (msg) {
|
||
|
if (msg[0].error){
|
||
|
printErrores(msg);
|
||
|
setTimeout(function () {
|
||
|
cerrar();
|
||
|
}, 3000);
|
||
|
}else {
|
||
|
$(".confirm").fadeIn(200);
|
||
|
$(".txtConfirm").append('FICHADA REGISTRADA');
|
||
|
setTimeout(function () {
|
||
|
cerrar();
|
||
|
}, 1000);
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function setView() {
|
||
|
$(".footer").hide();
|
||
|
$(".in").hide();
|
||
|
$(".inMiddle").hide();
|
||
|
$(".outMiddle").hide();
|
||
|
$(".out").hide();
|
||
|
$("#txtNombre").text(userData["name"] + " " + userData["surname"]);
|
||
|
getInfo();
|
||
|
$("." + userData["button1"]).show();
|
||
|
$("." + userData["button2"]).show();
|
||
|
}
|
||
|
|
||
|
function getInfo() {
|
||
|
$.post({
|
||
|
urlPath: 'getClockIn',
|
||
|
jsonData: [userData['userFk']],
|
||
|
processData: false,
|
||
|
success: function (data) {
|
||
|
$('.footer').show();
|
||
|
printHorario(data);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function printHorario(horarios) {
|
||
|
var c = "in";
|
||
|
for (var i = 0; i < horarios.length; i++) {
|
||
|
if (i % 2 !== 0) {
|
||
|
c = "out";
|
||
|
} else {
|
||
|
c = "in";
|
||
|
}
|
||
|
if (horarios[i]["7_dias_antes"] === "total") {
|
||
|
if (horarios.length > (i + 1)) {
|
||
|
printTotalHours(horarios[i + 1]);
|
||
|
}
|
||
|
if (horarios.length > (i + 2)) {
|
||
|
$(".total").text('Total: ' + horarios[i + 2]["1_dia_antes"] + 'h');
|
||
|
}
|
||
|
break;
|
||
|
}
|
||
|
$(".listHorario").append('<li><div class="time ' + ifIsEmpty(horarios[i]["6_dias_antes"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["6_dias_antes"]) + '</p></div><div class="time ' + ifIsEmpty(horarios[i]["5_dias_antes"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["5_dias_antes"]) + '</p></div><div class="time ' + ifIsEmpty(horarios[i]["4_dias_antes"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["4_dias_antes"]) + '</p></div><div class="time ' + ifIsEmpty(horarios[i]["3_dias_antes"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["3_dias_antes"]) + '</p></div><div class="time ' + ifIsEmpty(horarios[i]["2_dias_antes"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["2_dias_antes"]) + '</p></div><div class="time ' + ifIsEmpty(horarios[i]["1_dia_antes"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["1_dia_antes"]) + '</p></div><div class="time ' + ifIsEmpty(horarios[i]["mismo_dia"]) + '"><img src="img/' + c + '.png" alt=""/><p>' + ifIsEmptyText(horarios[i]["mismo_dia"]) + '</p></div></li>');
|
||
|
}
|
||
|
var listWeekName = printWeek();
|
||
|
$(".listHorario").prepend('<li class="headerLi"><label>' + listWeekName[5] + '</label><label>' + listWeekName[4] + '</label><label>' + listWeekName[3] + '</label><label>' + listWeekName[2] + '</label><label>' + listWeekName[1] + '</label><label>' + listWeekName[0] + '</label><label class="hoy">HOY</label></li>');
|
||
|
}
|
||
|
|
||
|
function printTotalHours(horarios) {
|
||
|
$(".listHorario").append('<li><br><hr></li>');
|
||
|
$(".listHorario").append('<li><div class="time">' + ifIsEmptyText(horarios["6_dias_antes"])
|
||
|
+ '</div><div class="time">' + ifIsEmptyText(horarios["5_dias_antes"])
|
||
|
+ '</div><div class="time">' + ifIsEmptyText(horarios["4_dias_antes"])
|
||
|
+ '</div><div class="time">' + ifIsEmptyText(horarios["3_dias_antes"])
|
||
|
+ '</div><div class="time">' + ifIsEmptyText(horarios["2_dias_antes"])
|
||
|
+ '</div><div class="time">' + ifIsEmptyText(horarios["1_dia_antes"])
|
||
|
+ '</div><div class="time">' + ifIsEmptyText(horarios["mismo_dia"])
|
||
|
+ '</div></li>');
|
||
|
}
|
||
|
|
||
|
function printWeek() {
|
||
|
var listWeekName = [];
|
||
|
var curr = new Date();
|
||
|
for (var i = 0; i < 7; i++) {
|
||
|
curr.setDate(curr.getDate() - 1);
|
||
|
listWeekName.push(weekDays[curr.getDay()]);
|
||
|
}
|
||
|
return listWeekName;
|
||
|
}
|
||
|
|
||
|
var weekDays = [
|
||
|
'Domingo',
|
||
|
'Lunes',
|
||
|
'Martes',
|
||
|
'Miércoles',
|
||
|
'Jueves',
|
||
|
'Viernes',
|
||
|
'Sábado'
|
||
|
];
|
||
|
|
||
|
function printErrores(errores) {
|
||
|
var error ='';
|
||
|
for (var i = 0; i < errores.length; i++) {
|
||
|
if (errores[i].error) {
|
||
|
error += errores[i].error + "<br>";
|
||
|
}
|
||
|
}
|
||
|
printError(error);
|
||
|
}
|
||
|
|
||
|
function ifIsEmpty(value) {
|
||
|
if (value.trim().length === 0) {
|
||
|
return "hide";
|
||
|
} else {
|
||
|
return "show";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function ifIsEmptyText(value) {
|
||
|
if (value.trim().length === 0) {
|
||
|
return "00:00";
|
||
|
} else {
|
||
|
return value;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function cerrar(){
|
||
|
$(".loading").fadeIn(200);
|
||
|
localStorage.removeItem("userData");
|
||
|
setTimeout(function () {
|
||
|
window.history.back();
|
||
|
}, 200);
|
||
|
}
|