OpenXE/www/js/mitarbeiterzeiterfassung.js
2021-05-21 08:49:41 +02:00

273 lines
6.2 KiB
JavaScript

jQuery.expr[':'].Contains = function(a, i, m) {
return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
};
jQuery.expr[':'].contains = function(a, i, m) {
return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
};
var mainterval;
var reloaded = false;
$(document).ready(function() {
// Mitarbeiterliste
mitarbeiterListePosHeight();
$(window).scroll(function() {
mitarbeiterListePosHeight();
});
$('.mitarbeiterzeiterfassung').css({
'min-height': ($(window).height() - 240)
});
$('.rOpen-Dialog').click(function(event) {
event.preventDefault();
var adresse = $(this).attr('data-adresse');
var date = $(this).attr('data-date');
jQuery('#dialog')
.load('index.php?module=mitarbeiterzeiterfassung&action=tag&adresse=' + adresse + '&date=' + date,function( response, status, xhr ) {
mainterval = window.setInterval(function(
) {
$('#dialog').find('iframe').contents().find('#dialogreload').each(function(){
window.clearInterval(mainterval);
if(!reloaded)location.reload();
reloaded = true;
});
},100);
if ( status == "error" ) {
var msg = "Sorry but there was an error: ";
$( "#dialog" ).html( msg + xhr.status + " " + xhr.statusText );
}
})
.dialog({
title: date,
width: 600
});
});
$('.yearSelect').change(function() {
$('.yearSelect').find('form').submit();
});
var wTimeout = null;
$('.sollstundenChangeJs').keyup(function() {
var inputField = $(this);
clearTimeout(wTimeout);
setTimeout(function() {
saveSollstundenTag(inputField);
}, 750);
});
$('.iststundenChangeJs').keyup(function() {
var inputField = $(this);
clearTimeout(wTimeout);
setTimeout(function() {
saveIststundenTag(inputField);
}, 750);
});
$('.unbezahltstundenChangeJs').keyup(function() {
var inputField = $(this);
clearTimeout(wTimeout);
setTimeout(function() {
saveunbezahltminutenTag(inputField);
}, 750);
});
$('.urlaubstundenChangeJs').keyup(function() {
var inputField = $(this);
clearTimeout(wTimeout);
setTimeout(function() {
saveurlaubminutenTag(inputField);
}, 750);
});
$('.krankstundenChangeJs').keyup(function() {
var inputField = $(this);
clearTimeout(wTimeout);
setTimeout(function() {
savekrankminutenTag(inputField);
}, 750);
});
$('.filterMitarbeiterJs').keyup(function() {
$('.mitarbeiterListe li').hide();
$('.mitarbeiterListe li:contains("' + $(this).val() + '")').show();
/*
$('.mitarbeiterListe li').filter(function() {
return $.text([this]) === 'blabla';
}).show();
*/
});
});
function mitarbeiterListePosHeight() {
var scrollTop = $(window).scrollTop();
scrollTop = scrollTop-90;
if (scrollTop <= 0) {
scrollTop = 0;
}
var windowHeight = $(window).height();
var newHeight = windowHeight-240;
$('.mitarbeiterzeiterfassungMitarbeiter').css({
height: newHeight,
top: scrollTop
})
}
function saveSollstundenTag(inputField) {
$.ajax({
url: 'index.php?module=mitarbeiterzeiterfassung&action=savesollstundentag',
method: 'GET',
data: {
datum: inputField.attr('data-date'),
adresse: inputField.attr('data-adresse'),
stunden: inputField.val()
},
beforeSend: function() {
App.loading.open();
//inputField.attr('disabled', 'disabled');
},
success: function() {
App.loading.close();
//inputField.removeAttr('disabled');
/*
if (inputField.attr('data-callback').length != 0) {
eval(inputField.attr('data-callback'));
}*/
}
});
}
function saveIststundenTag(inputField)
{
$.ajax({
url: 'index.php?module=mitarbeiterzeiterfassung&action=saveiststundentag',
method: 'GET',
data: {
datum: inputField.attr('data-date'),
adresse: inputField.attr('data-adresse'),
stunden: inputField.val()
},
beforeSend: function() {
App.loading.open();
//inputField.attr('disabled', 'disabled');
},
success: function() {
App.loading.close();
//inputField.removeAttr('disabled');
/*
if (inputField.attr('data-callback').length != 0) {
eval(inputField.attr('data-callback'));
}*/
}
});
}
function saveunbezahltminutenTag(inputField)
{
$.ajax({
url: 'index.php?module=mitarbeiterzeiterfassung&action=saveunbezahltminutentag',
method: 'GET',
data: {
datum: inputField.attr('data-date'),
adresse: inputField.attr('data-adresse'),
stunden: inputField.val()
},
beforeSend: function() {
App.loading.open();
//inputField.attr('disabled', 'disabled');
},
success: function() {
App.loading.close();
//inputField.removeAttr('disabled');
/*
if (inputField.attr('data-callback').length != 0) {
eval(inputField.attr('data-callback'));
}*/
}
});
}
function saveurlaubminutenTag(inputField)
{
$.ajax({
url: 'index.php?module=mitarbeiterzeiterfassung&action=saveurlaubminutentag',
method: 'GET',
data: {
datum: inputField.attr('data-date'),
adresse: inputField.attr('data-adresse'),
stunden: inputField.val()
},
beforeSend: function() {
App.loading.open();
//inputField.attr('disabled', 'disabled');
},
success: function() {
App.loading.close();
//inputField.removeAttr('disabled');
/*
if (inputField.attr('data-callback').length != 0) {
eval(inputField.attr('data-callback'));
}*/
}
});
}
function savekrankminutenTag(inputField)
{
$.ajax({
url: 'index.php?module=mitarbeiterzeiterfassung&action=savekrankminutentag',
method: 'GET',
data: {
datum: inputField.attr('data-date'),
adresse: inputField.attr('data-adresse'),
stunden: inputField.val()
},
beforeSend: function() {
App.loading.open();
//inputField.attr('disabled', 'disabled');
},
success: function() {
App.loading.close();
//inputField.removeAttr('disabled');
/*
if (inputField.attr('data-callback').length != 0) {
eval(inputField.attr('data-callback'));
}*/
}
});
}
function update_wochenstunden(kalenderwoche) {
var stunden = 0;
var tage = $('tr[data-kalenderwoche="'+kalenderwoche+'"]').find('input');
if (tage) {
$.each(tage, function() {
stunden += parseFloat($(this).val());
});
}
$('tr[data-kalenderwoche="'+kalenderwoche+'"]').find('span.wochenstunden').text(stunden);
}