App-Dochazka-WWW
view release on metacpan or search on metacpan
share/js/dochazka-www/caches.js view on Meta::CPAN
coreLib.displayError(st.payload.message);
}
populateContinue(populateArray);
};
ajax(rest, sc, fc);
},
populateLastPlusOffset = function (populateArray) {
var beginTime,
date = $('#iNdate').text(),
eolei,
endTime,
i,
lastExistIntvl = $('#iNlastexistintvl').text().trim().replace(/\s/g, ''),
offset = $('#iNoffset').text(),
schedAfter,
schedIntvls = $('#iNschedintvls').text().trim().replace(/\s/g, '').split(';'),
withinSchedIntvl,
rest, sc, fc, populateContinue;
console.log("Entering populateLastPlusOffset()");
console.log("Date", date);
share/js/dochazka-www/caches.js view on Meta::CPAN
}
if (schedIntvls && ! lastExistIntvl) {
[beginTime, endTime] = schedIntvls[0].split('-');
[beginTime, endTime] = dt.canonicalizeTimeRangeOffset(beginTime + String(offset));
populateLastPlusOffsetFormFields(beginTime + '-' + endTime);
populateContinue(populateArray);
return null;
}
// Names/meanings of variables
//
// "eolei": end of last existing interval
[beginTime, endTime] = lastExistIntvl.split('-');
eolei = endTime;
console.log("eolei is " + eolei);
//
// "withinSchedIntvl": eolei falls within a schedule interval (boolean)
// Example: eolei is 8:00, schedIntvl is 8:00-12:00 -> true
// Example: eolei is 12:00, schedIntvl is 8:00-12:00 -> false
// Example: eolei is 11:55, schedIntvl is 8:00-12:00 -> true
// (Calculate withSchedIntvl by comparing eolei with each schedIntvl in turn.
// If computation is true for any of them, then the result is true)
for (i = 0; i < schedIntvls.length; i += 1) {
withinSchedIntvl = dt.isTimeWithinTimeRange(eolei, schedIntvls[i]);
if (withinSchedIntvl) {
[beginTime, endTime] = dt.canonicalizeTimeRangeOffset(eolei + String(offset));
populateLastPlusOffsetFormFields(beginTime + '-' + endTime);
populateContinue(populateArray);
return null;
}
}
console.log("eolei does not fall within any of the schedule intervals");
//
// "schedAfter": first schedule interval that lies fully after eolei
schedAfter = null;
for (i = 0; i < schedIntvls.length; i += 1) {
if (dt.isTimeRangeAfterTime(schedIntvls[i], eolei)) {
schedAfter = schedIntvls[i];
break;
}
}
// if schedAfter, add offset to beginning of schedAfter
// else, add offset to eolei
if (schedAfter) {
console.log("There is a schedule interval after eolei");
[beginTime, endTime] = schedAfter.split('-');
[beginTime, endTime] = dt.canonicalizeTimeRangeOffset(beginTime + String(offset));
} else {
console.log("There is no schedule interval after eolei");
[beginTime, endTime] = dt.canonicalizeTimeRangeOffset(eolei + String(offset));
}
populateLastPlusOffsetFormFields(beginTime + '-' + endTime);
populateContinue(populateArray);
},
populateLastPlusOffsetFormFields = function (buf) {
var formField = $('#iNlastplusoffset'),
formInput = $('input[id="iNtimerange"');
formField.html(String(buf));
formInput.val(String(buf));
( run in 1.651 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )