var Mackolik = Mackolik || {};
Mackolik.Standing = Mackolik.Standing || {};

Mackolik.Standing.Form = {
    getForm: function(fnCallback) {
        Mackolik.Standing.Form.fnCallback = fnCallback;
        //var url = APP_ROOT + '/National/Data/FormData.aspx?id=' + Mackolik.Standing.oSeason.iSeasonId;
        var url = APP_ROOT + '/National/Data/FormData.aspx?id=' + Mackolik.National.seasonId;
        var callback = new AjaxCallback(function(response) { Mackolik.Standing.Form.getFormCompleted(response) });
        var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback);
    },
    getFormCompleted: function(response) {
        data = eval("(" + response.responseText + ")");
        this.writeForm(data);
        if (Mackolik.Standing.oStatus != null) {
            this.writeStatus(Mackolik.Standing.oStatus);
        }
        Mackolik.Standing.Form.fnCallback();
        //Mackolik.Analytics.trackEvent('Puan Durumu', 'Form', 'Sezon Id = ' + Mackolik.Standing.oSeason.iSeasonId);
    },
    writeStatus: function(data) {
        var rows = document.getElementById('dvForm').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 + 1 + data[i][2]].cells[0];
                    cell.title = data[i][1];
                    //cell.style.backgroundColor = STATUSCOLORS[data[i][0]-1];
                    cell.className = "status" + data[i][0];
                }
            }
        }
    },
    writeForm: function(data) {
        var header = '<table width="100%" cellpadding=1 cellspacing=0 border=0 style="border:1px solid #cccccc;" class="rowData">';
        var headerRow = '<tr class="puan_header"><td rowspan=2 colspan=2 style="padding-left:10px"><b>TAKIM</b></td><td colspan=3 align=center>Toplam</td><td width=2 rowspan=30 bgcolor="#DAE4E5" style="background-image:none;"> </td><td colspan=3 align=center>İçerde</td><td rowspan=30 width=2 bgcolor="#DAE4E5" style="background-image:none;"> </td><td colspan=3 align=center>Dışarda</td></tr>';
        var headerRow2 = '<tr align=center class="puan_header bg2"><td width="19" height="17" align=right>O</td><td width="19" align=right>P</td><td>Son 10 Maç</td><td width="19" align=right>O</td><td width="19" align=right>P</td><td>Son 10 Maç</td><td width="19" align=right>O</td><td width="19" align=right>P</td><td>Son 10 Maç</td></tr>'
        var rowFormat = '<tr class="alt{0} puan_row" align=left><td width="34" align=right>{1}</td><td width="150" align=left>{13} <a href="javascript:popTeam({2},\'' + Mackolik.Standing.sSeasonName + '\')" class="style3">{3}</a></td><td align=right>{7}</td><td align=right><b>{8}</b></td><td align=left style="padding-left:10px;">{4}</td><td align=right>{9}</td><td align=right><b>{10}</b></td><td align=left style="padding-left:10px;">{5}</td><td align=right>{11}</td><td align=right><b>{12}</b></td><td align=left style="padding-left:10px;">{6}</td></tr>';

        var sbForm = new StringBuilder();
        sbForm.append(header);
        sbForm.append(headerRow);
        sbForm.append(headerRow2);

        var region = 1;
        var rownum = 0;
        var flag = '';
        for (var i = 0; i < data.length; i++) {
            var team = data[i];

            if (team[10]) {
                if (team[10] != region) {
                    sbForm.append('<tr style="background-color:#dae4e5"><td colspan=30>&nbsp;</td></tr>')
                    rownum = 0;
                    region = team[10];
                }
            }

            var allseries = team[1].split("");
            var homeseries = team[2].split("");
            var awayseries = team[3].split("");

            function serieToImage(serie) {
                var format = '<img src="' + ICON_PATH + 'p-form-{0}.gif">&nbsp;';
                var sbSerie = new StringBuilder();

                for (var j = 0; j < serie.length; j++) {
                    if (serie[j] == '0') {
                        sbSerie.appendFormat(format, 'l');
                    }
                    if (serie[j] == '1') {
                        sbSerie.appendFormat(format, 'd');
                    }
                    if (serie[j] == '3') {
                        sbSerie.appendFormat(format, 'w');
                    }
                }
                return sbSerie;
            }

            rownum++;
            flag = '';
            if (Mackolik.Standing.aTeams.flags[team[0]]) {
                flag = "<img src='" + IMG_PATH + "/flags/" + Mackolik.Standing.aTeams.flags[team[0]] + ".gif' title='" + Mackolik.Standing.aTeams.countries[team[0]] + "'>";
            }

            sbForm.appendFormat(rowFormat, i % 2 + 1, rownum, team[0], Mackolik.Standing.aTeams.names[team[0]],
                serieToImage(allseries), serieToImage(homeseries), serieToImage(awayseries),
                team[4], team[5], team[6], team[7], team[8], team[9], flag);
        }

        sbForm.append('</table>');
        document.getElementById('dvForm').innerHTML = sbForm;

        var rows = document.getElementById('dvForm').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);
        }

    }
}
