﻿var MKW = MKW || {};

MKW.LiveScore = {
    SEQUENCE_NO: -1,
    SEQ_REQUEST_INTERVAL: 5000,
    groupId: 0,
    groupName: '',
    date: '',
    type: 0,
    live: 0,
    timeout: null,
    soundOn: true,
    isPlay: false,
    hasCouponTab: true,
    sNewGoals: '',
    aGroups: [],
    aSelectedGroups: [],
    //loadingMsg: "<div class='loading_div'><h3>" + MKW.Message.messages["Loading"] + "</h3><img src='" + ICON_PATH + "loading.gif' alt=''></div>",
    typeName: function() {
        switch (this.type) {
            case 0:
                return "Lige göre";
                break;
            case 1:
                return "Tarihe göre";
                break;
            case 2:
                return "Kuponlarım";
                break;
            case 3:
                return "Maç Seç";
                break;
        }
    },
    writeLoading: function() {
        if (!this.loadingMsg) {
            this.loadingMsg = "<div class='loading_div'><h3>" + MKW.Message.messages["Loading"] + "</h3><img src='" + ICON_PATH + "loading.gif' alt=''></div>";
        }
        this.copyBanner();
        if (this.type == 3) {
            document.getElementById('dvSelectionScores').innerHTML = this.loadingMsg;
        } else {
            document.getElementById('dvScores').innerHTML = this.loadingMsg;
        }
    },
    getGroupScores: function(id, name) {
        ID = id;
        this.groupId = id;
        this.groupName = name;
        this.date = '';
        var type = this.type;

        this.writeLoading();
        var url = APP_ROOT + '/AjaxHandlers/LiveData.ashx?group=' + id + '&type=' + type + '&tz=' + MKW.TimeZone.selectedTZ;
        var callback = new AjaxCallback(
            function(response) { MKW.LiveScore.getLiveScoresCompleted(response, type) }, null,
            function(response) { MKW.LiveScore.errorHandler(); });
        var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback);

        if (this.timeout) {
            clearTimeout(this.timeout);
        }
        this.timeout = setTimeout(MKW.LiveScore.getSequenceNo, this.SEQ_REQUEST_INTERVAL);
        //Mackolik.Analytics.trackEvent('Canlı Sonuçlar', 'Grup = ' + name, 'Tip = ' + this.typeName());
    },
    getScores: function() {
        if (this.date) {
            this.getDailyScores(this.date);
            return;
        }

        var url = APP_ROOT + '/AjaxHandlers/LiveData.ashx?group=' + this.groupId + '&type=' + this.type + '&live=' + this.live + '&tz=' + MKW.TimeZone.selectedTZ;
        var type = this.type;
        var callback = new AjaxCallback(function(response) { MKW.LiveScore.getLiveScoresCompleted(response, type) }, null,
        function(response) { MKW.LiveScore.errorHandler(); });
        var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback);
        if (this.timeout) {
            clearTimeout(this.timeout);
        }
        this.timeout = setTimeout(MKW.LiveScore.getSequenceNo, this.SEQ_REQUEST_INTERVAL);
    },
    getScoresByLeague: function() {
        this.writeLoading();
        this.type = 0;
        if (this.date) {
            this.getDailyScores(this.date);
        } else {
            this.getScores();
        }
    },
    getScoresByDate: function() {
        this.writeLoading();
        this.type = 1;
        if (this.date) {
            this.getDailyScores(this.date);
        } else {
            this.getScores();
        }
    },
    getDailyScores: function(date) {
        if (!isDate(date)) {
            return false;
        }
        this.groupId = 0;
        this.groupName = date;
        this.date = date;
        this.writeLoading();

        var url = APP_ROOT + '/AjaxHandlers/LiveData.ashx?group=' + this.groupId + '&type=' + this.type + '&live=' + this.live + '&date=' + date + '&tz=' + MKW.TimeZone.selectedTZ;
        var type = this.type;
        var callback = new AjaxCallback(function(response) { MKW.LiveScore.getLiveScoresCompleted(response, type) }, null,
        function(response) { MKW.LiveScore.errorHandler(); });
        var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback);

        //Mackolik.Analytics.trackEvent('Canlı Sonuçlar', 'Grup = ' + this.groupName, 'Tip = ' + this.typeName() + ' Canlı=' + this.live);

        if (MKW.LiveScore.Menu) {
            MKW.LiveScore.Menu.clearMenu();
        }
        if (this.timeout) {
            clearTimeout(this.timeout);
        }
        if (isToday(this.date)) {
            this.timeout = setTimeout(MKW.LiveScore.getSequenceNo, this.SEQ_REQUEST_INTERVAL);
        }
    },
    getLiveScores: function(type) {
        this.type = type;
        this.getGroupScores(0, MKW.Message.messages["LiveScores.TodaySummary"].toUpperCase());
    },
    getLiveScoresCompleted: function(response, type) {
        try {
            var data = eval("(" + response.responseText + ")");
            this.copyBanner();
            if (document.getElementById('dvScores')) {
                if (type == 0) {
                    this.writeLiveScoresByGroup(data);
                } else if (type == 1) {
                    this.writeLiveScoresByDate(data);
                } else if (type == 3) {
                    MKW.LiveScore.MatchSelection.writeLiveScoresBySelection(data);
                }
            }
            this.writeBanner();

            if (this.isPlay && this.soundOn && this.controlMatches()) {
                this.playSound();
            }
            if (this.sNewGoals != '') {
                var dExpiration = new Date();
                dExpiration.setTime(dExpiration.getTime() + (120 * 60 * 1000)); //90 dakika 	
                setCookie("PLAYEDGOALS", this.sNewGoals, dExpiration);
                this.sNewGoals = '';
            }
        }
        catch (err) {
            this.errorHandler();
        }
    },
    getSequenceNo: function() {
        var url = APP_ROOT + '/AjaxHandlers/LiveScoreHandler.ashx?op=seqNo';
        var callback = new AjaxCallback(
        function(response) { MKW.LiveScore.getSequenceNoCompleted(response) }, null,
        function(response) { MKW.LiveScore.errorHandler(); });
        var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback);
    },
    getSequenceNoCompleted: function(response) {
        try {
            var data = eval("(" + response.responseText + ")");
            if (this.SEQUENCE_NO != data) {
                this.SEQUENCE_NO = data;
                MKW.LiveScore.getScores();
                //LiveScores.getGroupScores(ID);
            } else {
                if (this.timeout) {
                    clearTimeout(this.timeout);
                }
                this.timeout = setTimeout(MKW.LiveScore.getSequenceNo, this.SEQ_REQUEST_INTERVAL);
            }
        }
        catch (err) {
            this.errorHandler();
        }
    },
    clearOptions: function() {
        if (this.type == 2 || this.type == 3) {
            this.type = 0;
        }
        this.live = 0;
        document.getElementById("chkLive").checked = false;
        document.getElementById("txtCalendar").value = "";
    },
    writeBanner: function() {
        function cumulativeOffset(element) {
            var valueT = 0
            var valueL = 0;
            do {
                valueT += element.offsetTop || 0;
                valueL += element.offsetLeft || 0;
                element = element.offsetParent;
            }
            while (element);

            return [valueL, valueT];
        }

        var ph = document.getElementById('bannerPlaceHolder');
        if (ph) {
            var b = document.getElementById("bannerContainer");
            var offset = cumulativeOffset(ph);
            bTop = offset[1]; // - document.getElementById("dvScores").offsetTop)
            bLeft = offset[0]; // - document.getElementById("dvScores").offsetLeft)
            b.style.left = bLeft + 'px';
            b.style.top = bTop + 'px';
            b.style.display = 'block';
        }
    },
    copyBanner: function() {
        var b = document.getElementById("bannerContainer");
        b.style.display = 'none';
    },
    writeLiveScoresByGroup: function(livedata) {
        var header = '<table cellspacing=0 cellpadding=0 border=0 id="resultsList">';
        header = header + '<colgroup><col width=30 /><col width=30 /><col width=10 /><col width=10 /><col width=190 /><col width=10 /><col width=100 /><col width=10 /><col width=190 /><col width=20 /><col width=50 /><col width=30 /><col width=10 /><col width=10 /></colgroup>';
        var groupFormat = '<tr class="groupHeader competition"><td colspan="10"><img src="' + GROUP_FLAG_PATH + '{0}.gif" height="11"/>&nbsp;<a href="javascript:popLeague({3})"><strong>{1}</strong> - {2}</a></td><td colspan="4" align=right></td></tr>';
        var dateFormat = '<tr class="groupHeader dateHeader"><td colspan="10">{0}</td><td align=center style="padding:0">{1}</td><td>&nbsp;</td><td colspan="2">&nbsp;</td></tr>';
        var rowFormat = '<tr class="alt{0}" id="row_{15}"><td>{12}</td><td align=center>{1}</td><td>{11}</td><td>{13}</td><td align=right><a href="javascript:popTeam({7})">{2}</a></td><td align=right>{5}</td><td class="score">{3}</td><td>{6}</td><td><a href="javascript:popTeam({8})">{4}</a></td><td>{14}</td><td align=center>{10}</td><td>{17}</td><td><a href="javascript:popComparison({15})">{9}</a></td><td>{16}</td></tr>';
        var bannerRow = '<tr><td class="bannerPlaceHolderTd" align="center" colspan="14"><div id="bannerPlaceHolder"/></td></tr>';

        var sbScores = new StringBuilder();
        sbScores.append(header);
        document.getElementById('dvNoMatches').style.display = "none";
        this.isPlay = false;
        var serverTime = livedata.t;
        var data = livedata.m;
        this.aContextMenuElements = [];
        var iGroupCounter = 0;
        var bBannerAdded = false;
        var bChangeSelectionGroups = false;

        if (this.aGroups.groupId != this.groupId || this.aGroups.live != this.live || this.aGroups.date != this.date) {
            bChangeSelectionGroups = true;
            this.aGroups = [];
            this.aSelectedGroups = [];
            this.aGroups.groupId = this.groupId;
            this.aGroups.live = this.live;
            this.aGroups.date = this.date
        }
        for (var i = 0; i < data.length; i++) {
            if (iGroupCounter == 2 && !bBannerAdded) {
                sbScores.append(bannerRow);
                bBannerAdded = true;
            }

            var groupData = data[i];
            if (!groupData.g) {
                continue;
            }
            if (this.aSelectedGroups.length > 0 && !this.aSelectedGroups.contains(groupData.g[2])) {
                continue;
            }

            if (bChangeSelectionGroups) {
                this.aGroups.push({ id: groupData.g[2], gId: groupData.g[0], name: groupData.g[3], gName: groupData.g[1] });
            }

            if (groupData.g.length == 0) {
                document.getElementById('dvNoMatches').style.display = "block";
                break;
            }
            var bTSL = false;
            iGroupCounter++;

            sbScores.appendFormat(groupFormat, groupData.g[0], groupData.g[1], groupData.g[3], groupData.g[2]);

            for (var j = 0; j < groupData.r.length; j++) {
                var dateData = groupData.r[j];

                sbScores.appendFormat(dateFormat, dateData.d, MKW.Message.messages["HT"]);

                for (var k = 0; k < dateData.m.length; k++) {
                    var matchData = dateData.m[k];
                    var score = '';
                    var match_status = '';
                    var stadium_status = '&nbsp;';
                    var matchDetail = matchData[14];

                    var redCard1 = '&nbsp;', redCard2 = '&nbsp;';

                    if (matchDetail.f2 || matchDetail.f2 == 0) {
                        score = "<span class='oldScore'>(" + matchDetail.f2 + ")</span> ";
                    }
                    if (matchDetail.t) {
                        stadium_status = '<span title="' + MKW.Message.messages["NeutralGround"] + '" style="color:red;font-weight:bold">' + MKW.Message.messages["NeutralGround.N"] + '</span>';
                    }
                    if (matchDetail.s) {
                        stadium_status = '<span title="Seyircisiz" style="color:red;font-weight:bold">S</span>';
                    }
                    if (matchData[8] == 1) {
                        score = score + '<img src="' + ICON_PATH + 'ball.gif">';
                    }
                    if (matchData[5] == 0) {
                        score = score + '&nbsp;&nbsp;&nbsp;<a href="javascript:popMatch(' + matchData[0] + ')">v</a>&nbsp;&nbsp;&nbsp;';
                    } else {
                        if (matchDetail.k1) {
                            redCard1 = '<img src="' + ICON_PATH + 'kk-' + matchDetail.k1 + '.gif">';
                        }
                        if (matchData[5] == 1 || matchData[5] == 2 || matchData[5] == 3 || matchData[5] == 5 || matchData[5] == 11) {
                            score = score + '<a href="javascript:popMatch(' + matchData[0] + ')" style="color:#dd0000;">' + matchData[12] + " - " + matchData[13] + '</a>';
                        } else if (matchData[5] == 9) {
                            score = score + '<a href="javascript:popMatch(' + matchData[0] + ')">P - P</a>';
                        } else {
                            score = score + '<a href="javascript:popMatch(' + matchData[0] + ')">' + matchData[12] + " - " + matchData[13] + '</a>';
                        }
                        if (matchDetail.k2) {
                            redCard2 = '<img src="' + ICON_PATH + 'kk-' + matchDetail.k2 + '.gif">';
                        }
                    }
                    if (matchData[9] == 1) {
                        score = score + '<img src="' + ICON_PATH + 'ball.gif">';
                    }
                    /*
                    match_status = '<a href="javascript:popComparison('+ matchData[5]+')"><img border=0 src="'+ICON_PATH+'compare.gif"></a>';
                    */
                    if (matchData[5] == 0) {
                        match_status = "&nbsp;";
                    } else if (matchData[5] == 1 || matchData[5] == 3 || matchData[5] == 5) {
                        if (parseInt(matchData[6]) < 0) {
                            match_status = "<span class='red_score'>0</span>";
                        } else {
                            match_status = "<span class='red_score'>" + matchData[6] + "<img src='" + ICON_PATH + "blink_bg.gif'/></span>";
                        }
                    } else if (matchData[5] == 2) {
                        match_status = "<span class='red_score'>" + matchData[6] + "</span>";
                    } else {
                        match_status = "<span class='bold_score'>" + matchData[6] + "</span>";
                    }
                    if (matchDetail.f1 || matchDetail.f1 == 0) {
                        score = score + " <span class='oldScore'>(" + matchDetail.f1 + ")</span> ";
                    }
                    var rowType = (k % 2) + 1;

                    if (matchData[8] == 1 || matchData[9] == 1) {
                        rowType = "goal";
                        this.isPlay = true;
                        this.sNewGoals += matchData[0] + '_' + matchData[12] + '_' + matchData[13] + "|";
                    }
                    if (!match_status) {
                        match_status = "&nbsp;";
                    }
                    var team1 = matchData[2];
                    if (matchDetail.e == 1) {
                        team1 = "<b>" + matchData[2] + "</b>";
                    }
                    var team2 = matchData[4];
                    if (matchDetail.e == 2) {
                        team2 = "<b>" + matchData[4] + "</b>";
                    }
                    var flag1 = "&nbsp;"
                    var flag2 = "&nbsp;"
                    if (matchDetail.bh) {
                        flag1 = "<img src='" + SMALL_FLAG_PATH + matchDetail.bh + ".gif' title='" + matchDetail.bhn + "' height=11>";
                    }
                    if (matchDetail.ba) {
                        flag2 = "<img src='" + SMALL_FLAG_PATH + matchDetail.ba + ".gif' title='" + matchDetail.ban + "' height=11>";
                    }
                    sbScores.appendFormat(rowFormat, rowType, match_status, team1, score, team2, redCard1, redCard2, matchData[1], matchData[3], '<img border=0 src="' + ICON_PATH + 'compare.gif" height="11">', matchData[7] ? matchData[7] : '&nbsp;', stadium_status, matchData[15], flag1, flag2, matchData[0], '', '&nbsp;');
                }
            }
        }
        var sTab = this.writeTabRow(0, serverTime);
        document.getElementById('dvScores').innerHTML = sTab + "<div style='width:100%'>" + sbScores + "</div>";

        this.aGroups.sort(sortGroupArray);
    },

    writeLiveScoresByDate: function(livedata) {
        var groupDataFormat = '<div><a href="javascript:popLeague({3})">{1}</a></div>';
        var dateFormat = '<tr class="groupHeader competition"><td colspan="11"><b>{0}</b></td><td align=center><b>{1}</b><td colspan=3>&nbsp;</td></tr>';
        var rowFormat = '<tr class="alt{0}" id="row_{16}"><td nowrap><img src="' + GROUP_FLAG_PATH + '{12}.gif" height="11"/></td><td title="{14}" nowrap>{13}</td><td nowrap align=center>{17}</td><td align=center>{1}</td><td>{18}</td><td align=right><a href="javascript:popTeam({7})">{2}</a></td><td nowrap align=right>{5}</td><td nowrap class="score">{3}</td><td nowrap>{6}</td><td><a href="javascript:popTeam({8})">{4}</a></td><td>{19}</td><td nowrap title="İlk Yarı Sonucu" align=center>{10}</td><td nowrap>{11}</td><td>{20}</td><td nowrap><a href="javascript:popComparison({16})"><img src="' + ICON_PATH + 'compare.gif" height="11"></a></td></tr>';
        var header = '<table cellspacing=0 cellpadding=0 border=0 id="resultsList" width="100%">';
        header = header + '<colgroup><col width=12 /><col width=40 /><col width=30 /><col width=30 /><col width=20 /><col width=145 /><col width=8 /><col width=70 /><col width=8 /><col width=145 /><col width=20 /><col width=40 /><col width=10 /><col width=20 /><col width=20 /></colgroup>';
        var bannerRow = '<tr><td class="bannerPlaceHolderTd" align="center" colspan="15"><div id="bannerPlaceHolder"/></td></tr>';
        var bChangeSelectionGroups = false;
        var sbScores = new StringBuilder();

        var serverTime = livedata.t;
        var dateData = livedata.m;

        if (this.aGroups.groupId != this.groupId || this.aGroups.live != this.live || this.aGroups.date != this.date) {
            bChangeSelectionGroups = true;
            this.aGroups = [];
            this.aSelectedGroups = [];
            this.aGroups.groupId = this.groupId;
            this.aGroups.live = this.live;
            this.aGroups.date = this.date
        }

        sbScores.append(header);
        document.getElementById('dvNoMatches').style.display = "none";
        this.isPlay = false;
        var iOldStatus = 0;
        // 1=Baslamamis, 2=Canli, 3=Bitmis
        var k = 0;
        for (var j = 0; j < dateData.length; j++) {
            var sbDate = new StringBuilder();
            var bDateAdded = false;

            sbDate.appendFormat(dateFormat, dateData[j].d, MKW.Message.messages["HT"]);
            //sbScores.appendFormat(dateFormat, dateData[j].d);
            var data = dateData[j].m;

            for (var i = 0; i < data.length; i++) {
                var matchData = data[i];
                if (this.aSelectedGroups.length > 0 && !this.aSelectedGroups.contains(matchData[15])) {
                    continue;
                }
                bDateAdded = true;

                if (k == 10) {
                    sbDate.append(bannerRow);
                    //sbScores.append(bannerRow);
                }

                if (bChangeSelectionGroups && !this.aGroups.containsProperty(matchData[15], "id")) {
                    this.aGroups.push({ id: matchData[15], gId: matchData[16], name: matchData[18], gName: matchData[17] });
                }

                var score = '';
                var match_status = '';
                var stadium_status = '&nbsp;';
                var matchDetail = matchData[14];
                var redCard1 = '&nbsp;', redCard2 = '&nbsp;';

                if (matchDetail.f2 || matchDetail.f2 == 0) {
                    score = "<span class='oldScore'>(" + matchDetail.f2 + ")</span> ";
                }
                if (matchDetail.t) {
                    stadium_status = '<span title="' + MKW.Message.messages["NeutralGround"] + '" style="color:red;font-weight:bold">' + MKW.Message.messages["NeutralGround.N"] + '</span>';
                }
                if (matchDetail.s) {
                    stadium_status = '<span title="Seyircisiz" style="color:red;font-weight:bold">S</span>';
                }
                if (matchData[8] == 1) {
                    score = score + '<img src="' + ICON_PATH + 'ball.gif">';
                }
                if (matchData[5] == 0) {
                    score = score + '&nbsp;<a href="javascript:popMatch(' + matchData[0] + ')">v</a>&nbsp;';
                } else {
                    if (matchDetail.k1) {
                        redCard1 = '<img src="' + ICON_PATH + 'kk-' + matchDetail.k1 + '.gif">';
                    }
                    if (matchData[5] == 1 || matchData[5] == 2 || matchData[5] == 3 || matchData[5] == 5) {
                        score = score + '<a href="javascript:popMatch(' + matchData[0] + ')" style="color:#dd0000;">' + matchData[12] + " - " + matchData[13] + '</a>';
                    } else if (matchData[5] == 9) {
                        score = score + '<a href="javascript:popMatch(' + matchData[0] + ')">P - P</a>';
                    } else if (matchData[5] == 11) {
                        score = score + '<a href="javascript:popMatch(' + matchData[0] + ')" style="color:#dd0000;">' + matchData[12] + " - " + matchData[13] + '</a>';
                    } else {
                        score = score + '<a href="javascript:popMatch(' + matchData[0] + ')">' + matchData[12] + " - " + matchData[13] + '</a>';
                    }
                    if (matchDetail.k2) {
                        redCard2 = '<img src="' + ICON_PATH + 'kk-' + matchDetail.k2 + '.gif">';
                    }
                }
                if (matchData[9] == 1) {
                    score = score + '<img src="' + ICON_PATH + 'ball.gif">';
                }
                if (matchData[5] == 0) {
                    match_status = "&nbsp;";
                } else if (matchData[5] == 2) {
                    match_status = "<span class='red_score'>" + matchData[6] + "</span>";
                } else if (matchData[5] == 1 || matchData[5] == 3 || matchData[5] == 5) {
                    if (parseInt(matchData[6]) < 0) {
                        match_status = "<span class='red_score'>0</span>";
                    } else {
                        match_status = "<span class='red_score'>" + matchData[6] + "<img src='" + ICON_PATH + "blink_bg.gif'/></span>";
                    }
                } else {
                    match_status = "<span class='bold_score'>" + matchData[6] + "</span>";
                }

                if (matchDetail.f1 || matchDetail.f1 == 0) {
                    score = score + " <span class='oldScore'>(" + matchDetail.f1 + ")</span> ";
                }
                var rowType = (k % 2) + 1;

                if (matchData[8] == 1 || matchData[9] == 1) {
                    rowType = "goal";
                    this.isPlay = true;
                    this.sNewGoals += matchData[0] + '_' + matchData[12] + '_' + matchData[13] + "|";
                }
                var sbGroupData = new StringBuilder();

                sbGroupData.appendFormat(groupDataFormat, matchData[16], matchData[21], matchData[17], matchData[15]);

                if (!match_status) {
                    match_status = "&nbsp;";
                }

                var team1 = matchData[2];
                if (matchDetail.e == 1) {
                    team1 = "<b>" + matchData[2] + "</b>";
                }

                var team2 = matchData[4];
                if (matchDetail.e == 2) {
                    team2 = "<b>" + matchData[4] + "</b>";
                }

                var flag1 = "&nbsp;"
                var flag2 = "&nbsp;"
                if (matchDetail.bh) {
                    flag1 = "<img src='" + SMALL_FLAG_PATH + matchDetail.bh + ".gif' title='" + matchDetail.bhn + "'>";
                }
                if (matchDetail.ba) {
                    flag2 = "<img src='" + SMALL_FLAG_PATH + matchDetail.ba + ".gif' title='" + matchDetail.ban + "'>";
                }

                //sbScores.appendFormat(rowFormat,
                sbDate.appendFormat(rowFormat,
                    rowType, match_status, team1, score, team2,  //4
                    redCard1, redCard2, matchData[1], matchData[3], '<img src="' + ICON_PATH + 'compare.gif">',  // 9
                    matchData[7] ? matchData[7] : '&nbsp;', stadium_status, matchData[16], sbGroupData, matchData[17] + ' ' + matchData[18], // 14
                    matchData[20], matchData[0], matchData[20], flag1, flag2, '&nbsp;');
                k++;
            }
            if (bDateAdded) {
                sbScores.append(sbDate.toString());
            }
        }
        var sTab = this.writeTabRow(1, serverTime);
        document.getElementById('dvScores').innerHTML = sTab + "<div style='width:100%'>" + sbScores + "</div>";
        this.aGroups.sort(sortGroupArray);
    },
    writeTabRow: function(type, serverTime) {
        var sbTab = new StringBuilder();

        sbTab.append('<div class="hd tabs" id="scores-tab"><ul id="todaytabs" style="width:620px;">');
        sbTab.appendFormat('<li class="{0} first" id="leagueOrder" style="width:150px;"><em><a hidefocus="true" id="league-order" href="#" onclick="orderByLeague();">{1}</a></em><span class="pipe"></span></li>', type == 0 ? "on" : type == 1 ? "off" : "", MKW.Message.messages["LiveScores.GroupByLeague"]);
        sbTab.appendFormat('<li class="{0} tab2" id="dateOrder" style="width:150px;"><em><a hidefocus="true" id="date-order" href="#" onclick="orderByDate();">{1}</a></em><span class="pipe"></span></li>', type == 1 ? "on" : type == 2 ? "off" : "", MKW.Message.messages["LiveScores.OrderByDate"]);
        //sbTab.appendFormat('<li class="{0} tab3" id="mySelection" style="width:100px;"><em><a hidefocus="true" href="#" onclick="getSelections();">Maç Seç</a></em><span class="pipe"></span></li>', type == 3 ? "on" : type == 4 ? "off" : "");
        sbTab.append('</ul></div>');
        if (type == 0 || type == 1) {
            sbTab.appendFormat('<div><table width="100%"><tr><td width="40%"><input type="button" value="{1}" class="btn-bg" onclick="javascript:MKW.LiveScore.chooseLeague();">&nbsp;{0}</td><td width="60%" style="text-align:right">', this.aSelectedGroups.length > 0 ? "<input type='button' value='" + MKW.Message.messages["LiveScores.AllLeagues"] + "' class='btn-bg' onclick='javascript:MKW.LiveScore.clearSelection()'>" : "", MKW.Message.messages["LiveScores.SelectLeague"]);
            /*
            if (this.groupId != 0 && this.groupId != "all" && this.groupId != "live") {
            sbTab.appendFormat('<b><img src="' + GROUP_FLAG_PATH + '{0}.gif" /> {1}</b> - {2}', this.groupId, this.groupName, serverTime);
            } else {
            sbTab.appendFormat('<b>{0}</b> - {1}', this.groupName, serverTime);
            }*/
            sbTab.appendFormat('<b>{0}</b> - {1}', this.groupName, serverTime);
            sbTab.append('</td></tr></table></div>');
        }
        return sbTab.toString();
    },
    createBlockDiv: function() {
        if (document.getElementById("dvBlock")) {
            return;
        }
        var blockDiv = document.createElement("div");
        blockDiv.setAttribute("id", "dvBlock");
        blockDiv.className = "modal-cover";
        blockDiv.style.cssText = "height:" + document.body.scrollHeight + "px;";
        //blockDiv.style.cssText = "position:absolute;z-index:1010;width:100%;height:" + document.body.scrollHeight + "px;left:0;top:0;background-color:gray;opacity:0.5;filter:Alpha(Opacity=50)";
        document.body.appendChild(blockDiv);
    },
    closeLeagueSelection: function() {
        var blockDiv = document.getElementById("dvBlock");
        var chDiv = document.getElementById("dvLeagueSelection");
        document.body.removeChild(blockDiv);
        chDiv.style.display = "none";
        //document.getElementById("dvTopBanner").style.visibility = "visible";
        var aFrames = document.getElementsByTagName("iframe")
        for (var i = 0; i < aFrames.length; i++) {
            aFrames[i].style.visibility = "visible";
        }
        window.onscroll = "";
    },
    chooseLeague: function() {
        var chDiv = document.getElementById("dvLeagueSelection");
        var chDivInner = document.getElementById("dvLeagueSelectionInner");
        var tableformat = "<table width='100%' cellspacing=0 cellpadding=2 class='rowData' style='_width:97%'>{0}</table>";
        var format = "<td><input type='checkbox' value='{0}' {4}>&nbsp;<img src='" + GROUP_FLAG_PATH + "{2}.gif'/>&nbsp;<b>{1}</b> - {3}</td>";
        var splitter = "<td style='background-color:#cccccc' rowspan=50>&nbsp;</td>";
        this.createBlockDiv();
        var sbLeagues = new StringBuilder();
        var sbTable = new StringBuilder();
        var j = 0;
        if (this.aGroups) {
            for (var i = 0; i < this.aGroups.length; i++) {
                if (i % 2 == 0) {
                    sbLeagues.appendFormat("<tr class='alt{0}'>", j % 2 + 1);
                }
                sbLeagues.appendFormat(format, this.aGroups[i].id, this.aGroups[i].gName, this.aGroups[i].gId, this.aGroups[i].name, this.aSelectedGroups.contains(this.aGroups[i].id) ? 'checked' : '');
                /*
                if (i == 0) {
                sbLeagues.append(splitter);
                }*/
                if (i % 2 == 1) {
                    sbLeagues.append("</tr>");
                    j++;
                }
            }
            if (this.aGroups.length % 2 == 1) {
                sbLeagues.append("<td>&nbsp;</td></tr>");
            }
        }

        sbTable.appendFormat(tableformat, sbLeagues.toString());
        chDivInner.innerHTML = sbTable.toString();
        chDiv.style.top = document.documentElement.scrollTop + "px";
        window.onscroll = function() {
            chDiv.style.top = document.documentElement.scrollTop + "px";
        }
        //document.getElementById("dvTopBanner").style.visibility = "hidden";
        var aFrames = document.getElementsByTagName("iframe")
        for (var i = 0; i < aFrames.length; i++) {
            aFrames[i].style.visibility = "hidden";
        }

        chDiv.style.display = "";

    },
    selectAll: function() {
        var dvInner = document.getElementById("dvLeagueSelectionInner");
        var aElems = dvInner.getElementsByTagName("input");
        for (var i = 0; i < aElems.length; i++) {
            aElems[i].checked = true;
        }
    },
    deselectAll: function() {
        var dvInner = document.getElementById("dvLeagueSelectionInner");
        var aElems = dvInner.getElementsByTagName("input");
        for (var i = 0; i < aElems.length; i++) {
            aElems[i].checked = false;
        }
    },
    saveSelection: function() {
        var dvInner = document.getElementById("dvLeagueSelectionInner");
        var aElems = dvInner.getElementsByTagName("input");
        this.aSelectedGroups = [];
        for (var i = 0; i < aElems.length; i++) {
            if (aElems[i].checked) {
                this.aSelectedGroups.push(parseInt(aElems[i].value));
            }
        }
        this.closeLeagueSelection();
        this.getScores();
    },
    clearSelection: function() {
        this.aSelectedGroups = [];
        this.getScores();
    },
    changeSound: function() {
        if (this.soundOn) {
            this.soundOn = false;
            //document.getElementById("lblSound").innerHTML = "Ses Kapalı";
            document.getElementById("imgSoundOn").style.display = "none";
            document.getElementById("imgSoundOff").style.display = "";
        } else {
            this.soundOn = true;
            //document.getElementById("lblSound").innerHTML = "Ses Açık";
            document.getElementById("imgSoundOff").style.display = "none";
            document.getElementById("imgSoundOn").style.display = "";
        }
    },
    playSound: function() {
        var sStr = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' WIDTH='1' HEIGHT='1'>";
        sStr += "<param name='movie' value='" + ICON_PATH + "goal.swf' />";
        sStr += "<param name='quality' value='high' />";
        sStr += "<param name='wmode' value='transparent' />";
        sStr += "<embed src='" + ICON_PATH + "goal.swf' quality=best wmode=transparent />";
        sStr += "</object>";
        //alert("GOOOOOOAAAALLLLLL!!!!!");
        document.getElementById("SOUND_HOLDER").innerHTML = sStr;
    },
    errorHandler: function() {
        if (this.timeout) {
            clearTimeout(this.timeout);
        }
        this.timeout = setTimeout(MKW.LiveScore.getSequenceNo, this.SEQ_REQUEST_INTERVAL);
    },
    onTimeZoneChanged: function(type, args, me) {
        me.getScores();
    },
    controlMatches: function() {
        if (this.sNewGoals == '') {
            return false;
        }
        var playedGoals = getCookie("PLAYEDGOALS");
        if (!playedGoals) {
            return true;
        }
        var colArray = this.sNewGoals.split('|');
        try {
            for (var i = 0; i < colArray.length - 1; i++) {
                var newGoalToken = colArray[i];
                var macID = newGoalToken.split('_')[0];
                if (playedGoals.indexOf(newGoalToken) == -1) {
                    return true;
                }
            }
        } catch (e)
        { }
    }
}

function highlight(obj) {
    var HIGH_COLOR = "#c7d2df";
    if (obj.style.backgroundColor == "") {
        obj.style.backgroundColor = HIGH_COLOR;
    } else {
        obj.style.backgroundColor = "";
    }
}

function sortGroupArray(a, b) {
    var x = a.gName + a.name;
    x = replaceTurkish(x);
    var y = b.gName + b.name;
    y = replaceTurkish(y);

    if (x < y) return -1;
    if (x > y) return +1;
    return 0;
}