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 )