<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Type.registerNamespace('Schedule');
Type.registerNamespace('Schedule.spa');

var sSchedule_portalId = $('.portalIdHidden').val();

var sSchedule_matchesErrorHelper = function () {
    function showMatchesErrorHtml(matchesErrors, gridCell) {
        var sSchedule_doScroll = true;
        var dataModels = sSchedule_common_dataModels();
        if (!matchesErrors || matchesErrors.length &lt;= 0) return;
        var matchModel = dataModels.getModel("EditMatches");
        // create a template using the above definition
        var matchErrorTemplate = kendo.template($("#match-error-template").html());
        var matchesTHead = '&lt;table class="matchesTable" cellpadding="3" cellspacing="2" &gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Event Name&lt;/th&gt;&lt;th&gt;Sr. No&lt;/th&gt;&lt;th&gt;Round&lt;/th&gt;&lt;th&gt;Team 1&lt;/th&gt;&lt;th&gt;Team 2&lt;/th&gt;&lt;th&gt;Date&lt;/th&gt;&lt;th&gt;Start Time&lt;/th&gt;&lt;th&gt;End Time&lt;/th&gt;&lt;th&gt;Location&lt;/th&gt;&lt;th&gt;Field&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td colspan="4"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;';
        $(matchesTHead).appendTo(gridCell);
        $("&lt;div class='matchesDiv'/&gt;").appendTo(gridCell);
        var matchesDiv = gridCell.find(".matchesTable tbody");

        var dataSource = new kendo.data.DataSource({
            data: matchesErrors,
            change: function () { // subscribe to the CHANGE event of the data source
                matchesDiv.html(kendo.render(matchErrorTemplate, this.view())); // populate the table
            },
            schema: {
                model: matchModel
            }
        });

        dataSource.read();
    }

    return {
        showMatchesErrorHtml: showMatchesErrorHtml
    };
};

var Sschedule_commonFunctions = function () {

    //#region -------- Custom Binders -------//
    kendo.data.binders.date = kendo.data.Binder.extend({
        init: function (element, bindings, options) {
            kendo.data.Binder.fn.init.call(this, element, bindings, options);

            this.dateformat = $(element).data("dateformat");
        },
        refresh: function () {
            var data = this.bindings["date"].get();
            if (data) {
                var dateObj = new Date(data);
                $(this.element).text(kendo.toString(dateObj, this.dateformat));
            }
        }
    });
    //#endregion-------Custom Binders ------//

    //#region ------------------- Error Messages ---------------------//

    var duplicateBlackoutError = "You can't make the blackout with the same criteria multiple times. Please check blackout date settings!";

    //#endregion ------------------- Error Messages ---------------------//

    function getServiceRootUrl() {
        var sf = $.ServicesFramework();
        return sf.getServiceRoot('sScheduleEventServices');
    }

    function getServiceRootUrlForScheduleService() {
        var sf = $.ServicesFramework();
        return sf.getServiceRoot('ScheduleService');
    }

    function getUrlVars() {
        var vars = [], hash;

        var hashes2 = window.location.href.slice(window.location.href.indexOf('#') + 1);
        var hashes = hashes2.slice(hashes2.indexOf('?') + 1).split('&amp;');
        for (var i = 0; i &lt; hashes.length; i++) {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }
        return vars;
    }

    var days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
    var minExternalTeamId = -3;
    var byeTeamId = -1;
    var timeList = [
        "8:00",
        "8:30",
        "9:00",
        "9:30",
        "10:00",
        "10:30",
        "11:00",
        "11:30",
        "12:00",
        "12:30",
        "1:00",
        "1:30",
        "2:00",
        "2:30",
        "3:00",
        "3:30",
        "4:00",
        "4:30",
        "5:00",
        "5:30",
        "6:00",
        "6:30",
        "7:00",
        "7:30"
    ];

    var durationDays = [
        "0",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6",
        "7",
        "8",
        "9",
        "10",
        "11",
        "12",
        "13",
        "14",
        "15",
        "16",
        "17",
        "18",
        "19",
        "20",
        "21",
        "22",
        "23",
        "24",
        "25",
        "26",
        "27",
        "28",
        "29",
        "30"
    ];

    var durationHours = [
        "0",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6",
        "7",
        "8",
        "9",
        "10",
        "11",
        "12",
        "13",
        "14",
        "15",
        "16",
        "17",
        "18",
        "19",
        "20",
        "21",
        "22",
        "23"
    ];

    var durationMins = [
        "0",
        "15",
        "30",
        "45"
    ];

    var gameDurationHours = ["0", "1", "2", "3", "4", "5"];

    function setDatePickersNonEditable(datePickername, isEnable) {
        var datepicker = $(datePickername).data("kendoDatePicker");
        if (datepicker == null) return;
        datepicker.readonly(false);
        datepicker.enable(isEnable);
        if (isEnable == false) {
            $(datePickername).attr("disabled", "disabled");

        }
    }

    function setAllTimePickersNonEditable(timePickerName, isEnable) {
        var datepicker = $(timePickerName).data("kendoTimePicker");
        if (datepicker == null) return;
        datepicker.readonly(true);
        datepicker.enable(isEnable);
        if (isEnable == false) {
            //$(timePickerName).attr("disabled", "disabled");
            //$(timePickerName).css({ "background": "#F0ECEC", "cursor": "not-allowed" });
            $(timePickerName).next().children().css("cursor", "not-allowed");
            $(timePickerName).parent().parent().attr("disabled", "disabled");
            $(timePickerName).parent().parent().addClass("disable");

        } else {
            //$(timePickerName).css({ "background": "#fff", "cursor": "default" });
            $(timePickerName).next().children().css("cursor", "pointer");
            $(timePickerName).parent().parent().removeClass("disable");
        }
    }

    function setDisableTimePickersNonEditable(timePickerName) {
        var datepicker = $(timePickerName).data("kendoTimePicker");
        if (datepicker == null) return;
        datepicker.readonly(true);
        datepicker.enable(false);

        $(timePickerName).parent().parent().attr("disabled", "disabled");
        $(timePickerName).parent().parent().addClass("disable");
        $(timePickerName).attr("disabled", "disabled");
        //$(timePickerName).css({ "background": "#fff", "cursor": "default" });
        $(timePickerName).next().children().css("cursor", "pointer");
    }

    function displayErrors(myerrors, className) {
        var errorList = $(className);
        errorList.empty();
        //var myerrors = validator._errors;
        var count = 0;
        $.each(myerrors, function (field, errmsg) {
            //Set focus on first field
            //
            (field);

            //if (count === 0) {
            //	$('#' + field).focus();
            //	count++;
            //}
            //Set css
            $('#blackOutTarget').css({
                'box-shadow': '0 0 5px #d45252',
                'border-color': '#b03535'
            });
            var titlerrmsg = $('#' + field).attr("validationmessage");
            var friendly = $('#' + field).attr("data-myfriendly");

            errorList.append('&lt;li style="text-align:left"&gt;&lt;span&gt;&lt;span class="k-icon k-warning"&gt; &lt;/span&gt;' + errmsg + '&lt;/span&gt;&lt;/li&gt;');
        });
        errorList.show();
    }

    function resetRowIndex(dataSource, checkIsAllocatedBit) {
        var data = dataSource.view();
        var i = 0;
        for (var j = 0; j &lt; data.length; j++) {
            if (checkIsAllocatedBit == false) {
                if (data[j].RowIndex != j + 1)
                    data[j].set("RowIndex", j + 1);
            } else {
                if (data[j].get("IsAllocated") == false) {
                    data[j].set("RowIndex", ++i);
                }
            }
        }

    }


    function resetRowIndexjQuery(selector) {
        var i = 1;
        $.each($(".rowIndex", selector), function () {

            if ($(this).parents('tr .editable-row').css('display') != 'none') {
                $(this).html(i);
                i += 1;
            }
        });
    }

    function getTime(dateValue) {
        if (isInValid(dateValue))
            return '';

        //var date = new Date('1-1-1001 ' + dateValue);
        //var dateParts = dateValue.toString().split(' ');
        //return dateParts[4];
        return kendo.toString(dateValue, "HH:mm");
    }

    function getDateFromDbTime(startTime) {
        if (isInValid(startTime))
            return '';

        var startTimeArray = startTime.split(':');
        var startDate = new Date();
        startDate.setHours(startTimeArray[0]);
        startDate.setMinutes(startTimeArray[1]);
        return startDate;
    }

    function getTimeSpanFromDate(date) {
        if (isInValid(date))
            return '';

        return kendo.toString(date, "HH:mm");
    }

    function getMatchDate(dateValue) {
        if (isInValid(dateValue))
            return '';

        var date = dateValue.split('T');
        if (date.length &lt; 1)
            return '';

        var formatDate = date[0];
        var parseDate = kendo.parseDate(formatDate);
        var retVal = kendo.toString(parseDate, "MM/dd/yyyy") + ' [' + days[parseDate.getDay()] + ']';
        return retVal;
    }

    function getMatchDateDay(dateValue) {
        if (isInValid(dateValue))
            return '';

        var date = dateValue.split('T');
        if (date.length &lt; 1)
            return '';

        var formatDate = date[0];
        var parseDate = kendo.parseDate(formatDate);
        var retVal = ' [' + days[parseDate.getDay()] + ']';
        return retVal;
    }

    function applyChoosenStyle(scope) {
        //breadcrumbHelper();
        //telerikGrid();
        toggleInput(scope);
        //imgToggleInput();
        //chosenSelect();
        tooltip(scope);
        //gridHelper();
        //jqDialog();
        if (jQuery.browser.msie &amp;&amp; jQuery.browser.version &lt;= 8) {
            ieFixes();
        }
    }

    var automationTypes = { PDTF: { name: "PDTF" }, PDT: { name: "PDT" }, P: { name: "P" }, IMPORT: { name: "IMPORT" }, Tournament: { name: "Tournament" } };

    /*-------------- Progress Indicator --------------------------*/

    function showProgress(elementId) {
        //Need to add k-loading class to that element.
        kendo.ui.progress($(elementId), true);
        $(elementId).addClass("k-loading");
    }

    function hideProgress(elementId) {
        kendo.ui.progress($(elementId), false);
        $(elementId).remove("k-loading");
    }

    /*#region -----Kendo Window Alert --------*/

    function showSuccessMessage(message, closeEvent) {
        showMessageWindow(message, closeEvent, false);
    }

    function showMessageWindow(message, closeEvent, isError) {
        if (message == null) return;

        var htmlMessage = '&lt;div style="color:#48749B"&gt;' + message + '&lt;/div&gt;';
        var title = "Match Scheduler";

        if (isError == true) {
            htmlMessage = '&lt;div class="errorLabel"&gt;' + message + '&lt;/div&gt;';
            title = "Action Needed";
        }

        var messageWindow = $("#messageWnd");
        if (!messageWindow.data("kendoWindow")) {
            if (closeEvent != null) {
                messageWindow.kendoWindow({
                    width: "320px",
                    title: title,
                    modal: true,
                    actions: [
                        "Close"
                    ],
                    close: closeEvent
                });
            } else {
                messageWindow.kendoWindow({
                    width: "320px",
                    title: title,
                    modal: true,
                    actions: [
                        "Close"
                    ]
                });
            }
        }

        messageWindow.parent().addClass('scom tournament-popup');
        messageWindow.data("kendoWindow").content(htmlMessage);
        messageWindow.data("kendoWindow").center().open();

    }

    function showMessageForLocationError(message) {
        if (message == null) return;
        var htmlMessage = '&lt;div style="color:#48749B"&gt;' + message + '&lt;/div&gt;';
        var title = "Action Needed";
        var messageWindow = $("#messageWnd");
        if (!messageWindow.data("kendoWindow")) {
            messageWindow.kendoWindow({
                width: "500px",
                title: title,
                modal: true,
                draggable: false,
                resizable: false,
                actions: [
                    "Close"
                ]
            });
        }
        messageWindow.parent().addClass('scom tournament-popup locationerrorpopup');
        messageWindow.data("kendoWindow").content(htmlMessage);
        messageWindow.data("kendoWindow").center().open();
    }

    function showMessage(message, closeEvent) {
        showMessageWindow(message, closeEvent, true);
    }

    function showSuccessMessageWindow(message, closeEvent) {
        if (message == null) return;

        var htmlMessage = '&lt;div style="color:#48749B"&gt;' + message + '&lt;/div&gt;';
        var title = "Match Scheduler";

        var messageWindow = $("#messageWnd");
        if (!messageWindow.data("kendoWindow")) {
            if (closeEvent != null) {
                messageWindow.kendoWindow({
                    width: "320px",
                    title: title,
                    modal: true,
                    actions: [
                        "Close"
                    ],
                    close: closeEvent
                });
            } else {
                messageWindow.kendoWindow({
                    width: "320px",
                    title: title,
                    modal: true,
                    actions: [
                        "Close"
                    ]
                });
            }
        }

        messageWindow.parent().addClass('scom tournament-popup');
        messageWindow.data("kendoWindow").content(htmlMessage);
        messageWindow.data("kendoWindow").center().open();
    }

    /*#endregion -----Kendo Window Alert --------*/

    /*---------- Calendar Functions ------------------*/

    function getTimeSlot(index) {

        var hours = index / 4;
        var mins = 0;
        if (index % 4 != 0)
            mins = (index % 4) * 15;

        var returnDate = new Date(1900, 1, 1, hours, mins, 0);
        return returnDate;

    }

    function setTime(occupiedDate, fieldId, rowId, colId, gameDuration) {

        var startIndex = ((colId - gameDuration) &gt;= 0) ? colId - gameDuration : 0;
        var endIndex = ((colId + gameDuration) &lt;= 96) ? colId + gameDuration : 96;

        var noOfBits = 0;
        var startTime, endTime;

        for (var timeSlot = startIndex; timeSlot &lt; endIndex; timeSlot++) {
            var scheduleType = getScheduleType(rowId + 1, timeSlot);
            if (scheduleType == 7) {
                noOfBits++;
                if (noOfBits == gameDuration) {
                    startTime = GetTime(timeSlot - (gameDuration - 1));
                    endTime = GetTime(timeSlot + 1);
                    break;
                }
            } else {
                noOfBits = 0;
            }
        }

        if (startTime != null) {
            SetMatch(occupiedDate, fieldId, kendo.toString(startTime, "HH:mm"), kendo.toString(endTime, "HH:mm"));
        } else
            SetMatch(null, null, null, null);

    }

    function getTimeDifference(laterDate, earlierDate) {
        var oDiff = new Object();

        var nTotalDiff = laterDate.getTime() - earlierDate.getTime();

        oDiff.Days = Math.floor(nTotalDiff / 1000 / 60 / 60 / 24);
        nTotalDiff -= oDiff.Days * 1000 * 60 * 60 * 24;

        oDiff.Hours = Math.floor(nTotalDiff / 1000 / 60 / 60);
        nTotalDiff -= oDiff.Hours * 1000 * 60 * 60;

        oDiff.Minutes = Math.floor(nTotalDiff / 1000 / 60);
        nTotalDiff -= oDiff.Minutes * 1000 * 60;

        oDiff.Seconds = Math.floor(nTotalDiff / 1000);
        return oDiff;

    }

    function getHoursFromString(timeString) {
        if (isInValid(timeString))
            return '';
        var timeArray = timeString.split(":");
        return timeArray[0];
    }

    function getMinutesFromString(timeString) {
        if (isInValid(timeString))
            return '';
        var timeArray = timeString.split(":");
        return timeArray[1];
    }

    function showConfirmWindow(message, okButtonCallback, cancelButtonCallback) {
        var windowId = "#scheduleConfirmWindow";
        var okButtonId = "#okWindowButton";
        var cancelButtonId = "#cancelWindowButton";

        $(okButtonId).unbind("click");
        $(cancelButtonId).unbind("click");

        var window = $(windowId);
        if (message) {
            $("#messageText").html(message);
        }
        window.kendoWindow({
            width: "690px",
            resizable: false,
            draggable: false,
            pinned: true,
            title: "Match Scheduler Confirmation",
            modal: true,
            actions: [
                "Close"
            ],
        });

        $(okButtonId).on("click", function () {
            window.data("kendoWindow").close();
            okButtonCallback();
        });

        $(cancelButtonId).on("click", function () {
            window.data("kendoWindow").close();
            if (cancelButtonCallback) {
                cancelButtonCallback();
            }
        });

        window.parent().addClass('scom tournament-popup');
        $(okButtonId).addClass('bsb-btn btn-default btn-tournament');
        $(cancelButtonId).addClass('bsb-btn btn-default btn-tournament');

        $(okButtonId).find("i").removeClass();
        $(okButtonId).find("i").addClass("fa fa-check");

        $(cancelButtonId).find("i").removeClass();
        $(cancelButtonId).find("i").addClass("fa fa-times");

        window.data("kendoWindow").center().open();
        return window;
    }

    function showConfirmWindowPost(message, okButtonCallback, cancelButtonCallback) {
        var windowId = "#scheduleConfirmWindowpost";
        var okButtonId = "#okWindowButtonpost";
        var cancelButtonId = "#cancelWindowButtonpost";

        $(okButtonId).unbind("click");
        $(cancelButtonId).unbind("click");

        var window = $(windowId);
        if (message) {
            $("#messageTextpost").html(message);
        }
        window.kendoWindow({
            width: "400px",
            resizable: false,
            draggable: false,
            pinned: true,
            title: "Match Scheduler Confirmation",
            modal: true,
            actions: [
                "Close"
            ],
        });

        $(okButtonId).on("click", function () {
            window.data("kendoWindow").close();
            okButtonCallback();
        });

        $(cancelButtonId).on("click", function () {
            window.data("kendoWindow").close();
            if (cancelButtonCallback) {
                cancelButtonCallback();
            }
        });

        window.parent().addClass('scom tournament-popup');
        $(okButtonId).addClass('bsb-btn btn-default btn-tournament');
        $(cancelButtonId).addClass('bsb-btn btn-default btn-tournament');

        $(okButtonId).find("i").removeClass();
        $(okButtonId).find("i").addClass("fa fa-check");

        $(cancelButtonId).find("i").removeClass();
        $(cancelButtonId).find("i").addClass("fa fa-times");

        window.data("kendoWindow").center().open();
        return window;
    }


    /*---------- Calendar Functions ------------------*/

    function isInValid(inputString) {
        if (inputString == '' || inputString == null)
            return true;
        return false;
    }

    function getTimeFromDate(currentDate) {
        var hours = currentDate.getHours().toString();
        var minutes = currentDate.getMinutes().toString();

        hours = hours.length == 1 ? hours + "0" : hours;
        minutes = minutes.length == 1 ? minutes + "0" : minutes;
        var time = parseInt(hours + minutes);

        return time;
    }

    /*--UI Height Functions -*/

    function calculateHeightOfRow(rowCount, minRows) {
        var height = 55;
        var minHeight = height * minRows;

        if (rowCount &gt; 0) {
            height = rowCount * height;
            if (height &gt; minHeight)
                height = minHeight;
        }

        height = height + 45;
        return height;
    }

    /*--UI Height Functions -*/

    function scrollToTop() {
        if ($("#app").length &gt; 0) {
            var el = $.browser.opera ? $("html") : $("html, body");
            el.animate({ scrollTop: $("#app").offset().top }, 'slow');
        }
    }

    //Validate mins to allowed only 00,15,30 and 45
    function isValidDayTimeMinutes(dayStartTime, dayEndTime) {
        var minute = parseInt(kendo.toString(dayStartTime, "mm"));
        var isStartTimeMinuteValid = isValidMinute(minute);
        minute = parseInt(kendo.toString(dayEndTime, "mm"));
        var isEndTimeMinuteValid = isValidMinute(minute);

        if (!isStartTimeMinuteValid || !isEndTimeMinuteValid) {
            return false;
        }
        return true;
    }
    function isValidMinute(minute) {
        if (minute == 00 || minute == 15 || minute == 30 || minute == 45)
            return true;
        return false;
    }
    function getTimezoneName() {
        var timeSummer = new Date(Date.UTC(2015, 6, 30, 0, 0, 0, 0));
        var summerOffset = -1 * timeSummer.getTimezoneOffset();
        var timeWinter = new Date(Date.UTC(2015, 12, 30, 0, 0, 0, 0));
        var winterOffset = -1 * timeWinter.getTimezoneOffset();
        var timeZoneHiddenField;

        if (-720 == summerOffset &amp;&amp; -720 == winterOffset) { timeZoneHiddenField = 'Dateline Standard Time'; }
        else if (-660 == summerOffset &amp;&amp; -660 == winterOffset) { timeZoneHiddenField = 'UTC-11'; }
        else if (-660 == summerOffset &amp;&amp; -660 == winterOffset) { timeZoneHiddenField = 'Samoa Standard Time'; }
        else if (-600 == summerOffset &amp;&amp; -600 == winterOffset) { timeZoneHiddenField = 'Hawaiian Standard Time'; }
        else if (-540 == summerOffset &amp;&amp; -600 == winterOffset) { timeZoneHiddenField = 'Hawaiian Standard Time'; }
        else if (-570 == summerOffset &amp;&amp; -570 == winterOffset) { timeZoneHiddenField.value = 'Pacific/Marquesas'; }
        //                else if (-540 == summerOffset &amp;&amp; -600 == winterOffset) { timeZoneHiddenField.value = 'America/Adak'; }
        //                else if (-540 == summerOffset &amp;&amp; -540 == winterOffset) { timeZoneHiddenField.value = 'Pacific/Gambier'; }
        else if (-480 == summerOffset &amp;&amp; -540 == winterOffset) { timeZoneHiddenField = 'Alaskan Standard Time'; }
        else if (-480 == summerOffset &amp;&amp; -480 == winterOffset) { timeZoneHiddenField = 'Pacific Standard Time'; }
        else if (-420 == summerOffset &amp;&amp; -480 == winterOffset) { timeZoneHiddenField = 'Pacific Standard Time'; }
        else if (-420 == summerOffset &amp;&amp; -420 == winterOffset) { timeZoneHiddenField = 'US Mountain Standard Time'; }
        else if (-360 == summerOffset &amp;&amp; -420 == winterOffset) { timeZoneHiddenField = 'Mountain Standard Time'; }
        else if (-360 == summerOffset &amp;&amp; -360 == winterOffset) { timeZoneHiddenField = 'Central America Standard Time'; }
        //                else if (-360 == summerOffset &amp;&amp; -300 == winterOffset) { timeZoneHiddenField = 'Pacific/Easter'; }
        else if (-300 == summerOffset &amp;&amp; -360 == winterOffset) { timeZoneHiddenField = 'Central Standard Time'; }
        else if (-300 == summerOffset &amp;&amp; -300 == winterOffset) { timeZoneHiddenField = 'SA Pacific Standard Time'; }
        else if (-240 == summerOffset &amp;&amp; -300 == winterOffset) { timeZoneHiddenField = 'Eastern Standard Time'; }
        else if (-270 == summerOffset &amp;&amp; -270 == winterOffset) { timeZoneHiddenField = 'Venezuela Standard Time'; }
        else if (-240 == summerOffset &amp;&amp; -240 == winterOffset) { timeZoneHiddenField = 'SA Western Standard Time'; }
        else if (-240 == summerOffset &amp;&amp; -180 == winterOffset) { timeZoneHiddenField = 'Central Brazilian Standard Time'; }
        else if (-180 == summerOffset &amp;&amp; -240 == winterOffset) { timeZoneHiddenField = 'Atlantic Standard Time'; }
        else if (-180 == summerOffset &amp;&amp; -180 == winterOffset) { timeZoneHiddenField = 'Montevideo Standard Time'; }
        else if (-180 == summerOffset &amp;&amp; -120 == winterOffset) { timeZoneHiddenField = 'E. South America Standard Time'; }
        else if (-150 == summerOffset &amp;&amp; -210 == winterOffset) { timeZoneHiddenField = 'Mid-Atlantic Standard Time'; }
        else if (-120 == summerOffset &amp;&amp; -180 == winterOffset) { timeZoneHiddenField = 'America/Godthab'; }
        else if (-120 == summerOffset &amp;&amp; -120 == winterOffset) { timeZoneHiddenField = 'SA Eastern Standard Time'; }
        else if (-60 == summerOffset &amp;&amp; -60 == winterOffset) { timeZoneHiddenField = 'Cape Verde Standard Time'; }
        else if (0 == summerOffset &amp;&amp; -60 == winterOffset) { timeZoneHiddenField = 'Azores Daylight Time'; }
        else if (0 == summerOffset &amp;&amp; 0 == winterOffset) { timeZoneHiddenField = 'Morocco Standard Time'; }
        else if (60 == summerOffset &amp;&amp; 0 == winterOffset) { timeZoneHiddenField = 'GMT Standard Time'; }
        else if (60 == summerOffset &amp;&amp; 60 == winterOffset) { timeZoneHiddenField = 'Africa/Algiers'; }
        else if (60 == summerOffset &amp;&amp; 120 == winterOffset) { timeZoneHiddenField = 'Namibia Standard Time'; }
        else if (120 == summerOffset &amp;&amp; 60 == winterOffset) { timeZoneHiddenField = 'Central European Standard Time'; }
        else if (120 == summerOffset &amp;&amp; 120 == winterOffset) { timeZoneHiddenField = 'South Africa Standard Time'; }
        else if (180 == summerOffset &amp;&amp; 120 == winterOffset) { timeZoneHiddenField = 'GTB Standard Time'; }
        else if (180 == summerOffset &amp;&amp; 180 == winterOffset) { timeZoneHiddenField = 'E. Africa Standard Time'; }
        else if (240 == summerOffset &amp;&amp; 180 == winterOffset) { timeZoneHiddenField = 'Russian Standard Time'; }
        else if (240 == summerOffset &amp;&amp; 240 == winterOffset) { timeZoneHiddenField = 'Arabian Standard Time'; }
        else if (270 == summerOffset &amp;&amp; 210 == winterOffset) { timeZoneHiddenField = 'Iran Standard Time'; }
        else if (270 == summerOffset &amp;&amp; 270 == winterOffset) { timeZoneHiddenField = 'Afghanistan Standard Time'; }
        else if (300 == summerOffset &amp;&amp; 240 == winterOffset) { timeZoneHiddenField = 'Pakistan Standard Time'; }
        else if (300 == summerOffset &amp;&amp; 300 == winterOffset) { timeZoneHiddenField = 'West Asia Standard Time'; }
        else if (330 == summerOffset &amp;&amp; 330 == winterOffset) { timeZoneHiddenField = 'India Standard Time'; }
        else if (345 == summerOffset &amp;&amp; 345 == winterOffset) { timeZoneHiddenField = 'Nepal Standard Time'; }
        else if (360 == summerOffset &amp;&amp; 300 == winterOffset) { timeZoneHiddenField = 'N. Central Asia Standard Time'; }
        else if (360 == summerOffset &amp;&amp; 360 == winterOffset) { timeZoneHiddenField = 'Central Asia Standard Time'; }
        else if (390 == summerOffset &amp;&amp; 390 == winterOffset) { timeZoneHiddenField = 'Myanmar Standard Time'; }
        else if (420 == summerOffset &amp;&amp; 360 == winterOffset) { timeZoneHiddenField = 'North Asia Standard Time'; }
        else if (420 == summerOffset &amp;&amp; 420 == winterOffset) { timeZoneHiddenField = 'SE Asia Standard Time'; }
        else if (480 == summerOffset &amp;&amp; 420 == winterOffset) { timeZoneHiddenField = 'North Asia East Standard Time'; }
        else if (480 == summerOffset &amp;&amp; 480 == winterOffset) { timeZoneHiddenField = 'China Standard Time'; }
        else if (540 == summerOffset &amp;&amp; 480 == winterOffset) { timeZoneHiddenField = 'Yakutsk Standard Time'; }
        else if (540 == summerOffset &amp;&amp; 540 == winterOffset) { timeZoneHiddenField = 'Tokyo Standard Time'; }
        else if (570 == summerOffset &amp;&amp; 570 == winterOffset) { timeZoneHiddenField = 'Cen. Australia Standard Time'; }
        else if (570 == summerOffset &amp;&amp; 630 == winterOffset) { timeZoneHiddenField = 'Australia/Adelaide'; }
        else if (600 == summerOffset &amp;&amp; 540 == winterOffset) { timeZoneHiddenField = 'Asia/Yakutsk'; }
        else if (600 == summerOffset &amp;&amp; 600 == winterOffset) { timeZoneHiddenField = 'E. Australia Standard Time'; }
        else if (600 == summerOffset &amp;&amp; 660 == winterOffset) { timeZoneHiddenField = 'AUS Eastern Standard Time'; }
        else if (630 == summerOffset &amp;&amp; 660 == winterOffset) { timeZoneHiddenField = 'Australia/Lord_Howe'; }
        else if (660 == summerOffset &amp;&amp; 600 == winterOffset) { timeZoneHiddenField = 'Tasmania Standard Time'; }
        else if (660 == summerOffset &amp;&amp; 660 == winterOffset) { timeZoneHiddenField = 'West Pacific Standard Time'; }
        else if (690 == summerOffset &amp;&amp; 690 == winterOffset) { timeZoneHiddenField = 'Central Pacific Standard Time'; }
        else if (720 == summerOffset &amp;&amp; 660 == winterOffset) { timeZoneHiddenField = 'Magadan Standard Time'; }
        else if (720 == summerOffset &amp;&amp; 720 == winterOffset) { timeZoneHiddenField = 'Fiji Standard Time'; }
        else if (720 == summerOffset &amp;&amp; 780 == winterOffset) { timeZoneHiddenField = 'New Zealand Standard Time'; }
        else if (765 == summerOffset &amp;&amp; 825 == winterOffset) { timeZoneHiddenField = 'Pacific/Chatham'; }
        else if (780 == summerOffset &amp;&amp; 780 == winterOffset) { timeZoneHiddenField = 'Tonga Standard Time'; }
        else if (840 == summerOffset &amp;&amp; 840 == winterOffset) { timeZoneHiddenField = 'Pacific/Kiritimati'; }
        else
        { timeZoneHiddenField = summerOffset + ',' + winterOffset; }
        return timeZoneHiddenField;
    }

    function stopScroll(element) {
        var activeElement;

        $('.k-list-container').bind('mousewheel DOMMouseScroll', function (e) {
            var scrollTo = null;

            if (!$(activeElement).closest(".k-popup").length) {
                return;
            }

            if (e.type == 'mousewheel') {
                scrollTo = (e.originalEvent.wheelDelta / 10 * -1);
            }
            else if (e.type == 'DOMMouseScroll') {
                scrollTo = 40 * e.originalEvent.detail;
            }

            if (scrollTo) {
                e.preventDefault();
                element.parent().scrollTop(scrollTo + element.parent().scrollTop());
            }
        });

        $('.k-list-container').on('mouseover', function (e) {
            activeElement = e.target;
        });
    }
    function applyStopScrollToDropDown() {
        var dropdownElements = jQuery('select.k-dropdown-light');
        jQuery.each(dropdownElements, function () {
            var widget = $("#" + jQuery(this)[0].id).data("kendoDropDownList");
            if (widget) {
                stopScroll(widget.ul);
            }
        });
    }
    function stopScrollToDatePicker(element) {
        var activeElement;

        $('.k-calendar-container').bind('mousewheel DOMMouseScroll', function (e) {
            var scrollTo = null;

            if (!$(activeElement).closest(".k-popup").length) {
                return;
            }
            if (e.type == 'mousewheel') {
                scrollTo = (e.originalEvent.wheelDelta * -1);
            }
            else if (e.type == 'DOMMouseScroll') {
                scrollTo = 40 * e.originalEvent.detail;
            }
            if (scrollTo) {
                e.preventDefault();
                element.scrollTop(scrollTo + element.scrollTop());
            }
        });

        $('.k-calendar-container').on('mouseover', function (e) {
            activeElement = e.target;
        });
    }
    function setScheduleDates(scheduleDetails) {
        scheduleDetails.MondayStartTime = getTimeSpanFromDate(scheduleDetails.MondayStartTime);
        scheduleDetails.MondayEndTime = getTimeSpanFromDate(scheduleDetails.MondayEndTime);
        scheduleDetails.TuesdayStartTime = getTimeSpanFromDate(scheduleDetails.TuesdayStartTime);
        scheduleDetails.TuesdayEndTime = getTimeSpanFromDate(scheduleDetails.TuesdayEndTime);
        scheduleDetails.WednesdayStartTime = getTimeSpanFromDate(scheduleDetails.WednesdayStartTime);
        scheduleDetails.WednesdayEndTime = getTimeSpanFromDate(scheduleDetails.WednesdayEndTime);
        scheduleDetails.ThursdayStartTime = getTimeSpanFromDate(scheduleDetails.ThursdayStartTime);
        scheduleDetails.ThursdayEndTime = getTimeSpanFromDate(scheduleDetails.ThursdayEndTime);
        scheduleDetails.FridayStartTime = getTimeSpanFromDate(scheduleDetails.FridayStartTime);
        scheduleDetails.FridayEndTime = getTimeSpanFromDate(scheduleDetails.FridayEndTime);
        scheduleDetails.SaturdayStartTime = getTimeSpanFromDate(scheduleDetails.SaturdayStartTime);
        scheduleDetails.SaturdayEndTime = getTimeSpanFromDate(scheduleDetails.SaturdayEndTime);
        scheduleDetails.SundayStartTime = getTimeSpanFromDate(scheduleDetails.SundayStartTime);
        scheduleDetails.SundayEndTime = getTimeSpanFromDate(scheduleDetails.SundayEndTime);
    }

    function disableSaveAndNextButton(button) {
        if (button == null)
            return;
        var params = getUrlVars()
        if (params.viewEvent != undefined &amp;&amp; params.viewEvent === "true") {
            button.setAttribute("disabled", "disabled");
            button.style.pointerEvents = "none";
        } else {
            button.removeAttribute("disabled");
            button.style.pointerEvents = "auto";
        }
    }
    function validateAdditionalReceipents(addtionalReceipts) {
        var receipents = addtionalReceipts.split(';');
        var uniqueReceipents = $.unique(receipents);
        if (receipents.length != uniqueReceipents.length) return false;
        //validate all unique recipents
        var len = uniqueReceipents.length;
        var emailReg = /^(([^&lt;&gt;()[\]\\.,;:\s@\"]+(\.[^&lt;&gt;()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

        var invalidEmails = "";
        for (var i = 0; i &lt; len; i++) {
            var email = uniqueReceipents[i].trim().replace(/^(\r\n|\n|\r)/, "");
            email = email.replace(/(\r\n|\n|\r)$/, "");

            //Replace tab and space (leading and trailing) character
            email = email.replace(/^\s+/, "");
            email = email.replace(/\s+$/, "");

            if (email != "" &amp;&amp; !emailReg.test(email)) {
                invalidEmails += (invalidEmails == "" ? " - " + email : "&lt;br&gt; - " + email);
            }
        }
        return invalidEmails;
    }
    return {
        getUrlVars: getUrlVars,
        getServiceRootUrl: getServiceRootUrl,
        timeList: timeList,
        durationHours: durationHours,
        durationMins: durationMins,
        durationDays: durationDays,
        showMessage: showMessage,
        setDatePickersNonEditable: setDatePickersNonEditable,
        setAllTimePickersNonEditable: setAllTimePickersNonEditable,
        setDisableTimePickersNonEditable: setDisableTimePickersNonEditable,
        displayErrors: displayErrors,
        resetRowIndex: resetRowIndex,
        resetRowIndexjQuery: resetRowIndexjQuery,
        duplicateBlackoutError: duplicateBlackoutError,
        getTime: getTime,
        getDateFromDbTime: getDateFromDbTime,
        gameDurationHours: gameDurationHours,
        getTimeSpanFromDate: getTimeSpanFromDate,
        days: days,
        minExternalTeamId: minExternalTeamId,
        byeTeamId: byeTeamId,
        getMatchDate: getMatchDate,
        getMatchDateDay: getMatchDateDay,
        applyChoosenStyle: applyChoosenStyle,
        automationTypes: automationTypes,
        showProgress: showProgress,
        hideProgress: hideProgress,
        setTime: setTime,
        getTimeDifference: getTimeDifference,
        getHoursFromString: getHoursFromString,
        getMinutesFromString: getMinutesFromString,
        getTimeSlot: getTimeSlot,
        showSuccessMessage: showSuccessMessage,
        showMessageForLocationError: showMessageForLocationError,
        showConfirmWindow: showConfirmWindow,
        showConfirmWindowPost: showConfirmWindowPost,
        getTimeFromDate: getTimeFromDate,
        getTimezoneName: getTimezoneName,
        calculateHeightOfRow: calculateHeightOfRow,
        scrollToTop: scrollToTop,
        isValidDayTimeMinutes: isValidDayTimeMinutes,
        isValidMinute: isValidMinute,
        applyStopScrollToDropDown: applyStopScrollToDropDown,
        stopScroll: stopScroll,
        stopScrollToDatePicker: stopScrollToDatePicker,
        setScheduleDates: setScheduleDates,
        showSuccessMessageWindow: showSuccessMessageWindow,
        disableSaveAndNextButton: disableSaveAndNextButton,
        validateAdditionalReceipents: validateAdditionalReceipents,
        getServiceRootUrlForScheduleService: getServiceRootUrlForScheduleService
    };

}
</pre></body></html>