Skip to content

Commit

Permalink
Closes #22
Browse files Browse the repository at this point in the history
  • Loading branch information
thamara committed Sep 25, 2019
1 parent 149b07c commit dca4f8d
Showing 1 changed file with 25 additions and 6 deletions.
31 changes: 25 additions & 6 deletions js/calendar.js
Original file line number Diff line number Diff line change
Expand Up @@ -206,17 +206,18 @@ class Calendar {
_initCalendar() {
this._generateTemplate();
this.updateBasedOnDB();
this.updateLeaveBy();
$('input[type=\'time\']').on('input propertychange', function() {
updateTimeDayCallback(this.id, this.value);
});


if (!showDay(this.today.getFullYear(), this.today.getMonth(), this.today.getDate())) {
document.getElementById('punch-button').disabled = true;
} else {
document.getElementById('punch-button').disabled = false;
}

this.updateLeaveBy();
$('input[type=\'time\']').on('input propertychange', function() {
updateTimeDayCallback(this.id, this.value);
});

$('#punch-button').on('click', function() {
punchDate();
});
Expand Down Expand Up @@ -339,8 +340,8 @@ class Calendar {
this.today.getFullYear() != this.getYear()) {
return;
}
var [dayBegin, lunchBegin, lunchEnd, dayEnd] = getDaysEntriesFromHTML(this.today.getFullYear(), this.today.getMonth(), this.today.getDate());
var dayKey = this.today.getFullYear() + '-' + this.today.getMonth() + '-' + this.today.getDate() + '-';
var dayBegin = document.getElementById(dayKey + 'day-begin').value;
if (validateTime(dayBegin)) {
var leaveBy = sumTime(dayBegin, getHoursPerDay());
var lunchTotal = document.getElementById(dayKey + 'lunch-total').value;
Expand All @@ -351,6 +352,13 @@ class Calendar {
} else {
document.getElementById('leave-by').value = '';
}

if (dayBegin.length && lunchBegin.length && lunchEnd.length && dayEnd.length) {
//All entries computed
document.getElementById('punch-button').disabled = true;
} else {
document.getElementById('punch-button').disabled = false;
}
}

/*
Expand Down Expand Up @@ -501,6 +509,17 @@ function getDaysEntries(year, month, day) {
store.get(dayStr + 'day-end')];
}

/*
* Returns the entries for the day, from HTML (for performance).
*/
function getDaysEntriesFromHTML(year, month, day) {
var dayStr = year + '-' + month + '-' + day + '-';
return [document.getElementById(dayStr + 'day-begin').value,
document.getElementById(dayStr + 'lunch-begin').value,
document.getElementById(dayStr + 'lunch-end').value,
document.getElementById(dayStr + 'day-end').value];
}

function colorErrorLine(year, month, day, dayBegin, lunchBegin, lunchEnd, dayEnd) {
var trID = ('tr-' + year + '-' + month + '-' + day);
if (hasInputError(dayBegin, lunchBegin, lunchEnd, dayEnd)) {
Expand Down

0 comments on commit dca4f8d

Please sign in to comment.