﻿var MKW = MKW || {};
MKW.Standing = MKW.Standing || {};

MKW.Standing.UnderOver = {
    getUnderOver : function(fnCallback) {
        MKW.Standing.UnderOver.fnCallback = fnCallback;
        var url = APP_ROOT + '/AjaxHandlers/StandingHandler.ashx?op=uoData&id=' + MKW.Standing.oSeason.iSeasonId;
        var callback = new AjaxCallback(function(response) { MKW.Standing.UnderOver.getUnderOverCompleted(response) });
        var transaction = YAHOO.util.Connect.asyncRequest( 'GET', url, callback ); 
    },
    getUnderOverCompleted: function(response) {
        data = eval("(" + response.responseText+ ")");
        this.writeUnderOver(data);
        if (MKW.Standing.oStatus != null) {
            this.writeStatus(MKW.Standing.oStatus);
        }
        MKW.Standing.UnderOver.fnCallback();
        //MKW.Analytics.trackEvent('Puan Durumu', 'Alt-Üst', 'Sezon Id = ' + MKW.Standing.oSeason.iSeasonId);
    },
    writeStatus : function(data){
        var rows = document.getElementById('dvUnderOver').firstChild.rows;
        
        if (rows) {
            for(var i=0;i<data.length;i++) {
                for (var j=0; j<data[i][3]; j++) {
                    var cell = rows[j+data[i][2]+1].cells[0];
                    cell.title = data[i][1];
                    cell.className = "status"+data[i][0];
                }
            }
        }
    },    
    writeUnderOver : function (data) {
        var header = '<table width="100%" cellpadding=1 cellspacing=0 border=0 style="border:1px solid #cccccc;" class="rowData">';
        var firstRow = '<tr class="puan_header"><td colspan=2 rowspan=2 style="padding-left:10px"><b>{0}</b></td><td colspan=3 align=center>{1}</td><td rowspan=30 bgcolor="#DAE4E5" style="background-image:none;"> </td><td colspan=3 align=center>{2}</td><td rowspan=30 bgcolor="#DAE4E5" style="background-image:none;"> </td><td colspan=3 align=center>{3}</td></tr><tr align=center class="puan_header bg2"><td width="19" height="17">{4}</td><td width="19">{5}</td><td width="133">{6}</td><td width="19">{4}</td><td width="19">{5}</td><td width="133">{6}</td><td width="19">{4}</td><td width="18">{5}</td><td width="133">{6}</td></tr>';
        var rowFormat = '<tr class="alt{0} puan_row" align=right><td width="34">{1}</td><td width="150" align=left>{13} <a href="javascript:popTeam({2})" class="style3">{3}</a></td><td>{4}</td><td>{5}</td><td align=left>{6}</td><td>{7}</td><td>{8}</td><td align=left>{9}</td><td>{10}</td><td>{11}</td><td align=left>{12}</td></tr>';

        var sbForm = new StringBuilder();
        sbForm.append(header);
        sbForm.appendFormat(firstRow, standingMessages["Team"].toUpperCase(), standingMessages["Standing.Overall"], standingMessages["Standing.Home"], standingMessages["Standing.Away"], standingMessages["Standing.U"], standingMessages["Standing.O"], standingMessages["Standing.Form.LastMatches"]);
        
        var region = 1;
        var rownum = 0;
        var flag = '';

        for (var i=0;i<data.length; i++) {
            var team = data[i];
            
            if (team[1]) {
                if (team[1]!=region) {
                    sbForm.append('<tr style="background-color:#dae4e5"><td colspan=30>&nbsp;</td></tr>')
                    rownum = 0;
                    region = team[1];
                }
            }
            var allseries = team[4].split("");
            var homeseries = team[7].split("");
            var awayseries = team[10].split("");
            
            function serieToImage(serie) {
                var format = '&nbsp;<img src="'+ICON_PATH+'img-{0}.gif">';
                var sbSerie = new StringBuilder();
                
                for (var j=0;j<serie.length;j++) {
                    sbSerie.appendFormat(format, serie[j]=='A'?'alt':'ust');
                }
                return sbSerie;
            }
            rownum++;
            flag = '';
            if (MKW.Standing.aTeams.flags[team[0]]) {
                flag = "<img src='" + IMG_PATH + "/flags/" + MKW.Standing.aTeams.flags[team[0]] + ".gif' title='" + MKW.Standing.aTeams.countries[team[0]] + "'>";
            }

            sbForm.appendFormat(rowFormat, i%2+1, rownum, team[0], MKW.Standing.aTeams.names[team[0]],
               team[2], team[3], serieToImage(allseries), 
               team[5], team[6], serieToImage(homeseries), 
               team[8], team[9], serieToImage(awayseries), flag);
        }
        
        sbForm.append('</table>');
        document.getElementById('dvUnderOver').innerHTML = sbForm;
        
        var rows = document.getElementById('dvUnderOver').firstChild.rows;

        for(var i=0,j=2;i<data.length;i++,j++) {
            if (rows[j].cells.length == 1) {
                i--;
                continue;
            }
            rows[j].team = data[i][0];
            YAHOO.util.Event.addListener(rows[j], "mouseover", standingOver);
            YAHOO.util.Event.addListener(rows[j], "mouseout", standingOut);
        }                
    }
}
