﻿// Uses elements of the previous version, with some modifications.
var TimerIDArray = new Array()
var TimerIDCount = 0;
var auctionUpdateTimeout;
var auctionTimeoutValue = 15;
var lowestTime = 1000;

function updateTimeoutValue(value) {
    auctionTimeoutValue = value
}

function updateAuctions() {
    $.ajax({
        type: "POST",
        url: "AuctionListHandler.ashx" + window.location.search, // :(((
        data: "",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {
            fillStunts(data.stunts);
            fillAuctions(data.auctions);
            //Fjernet fastpris
            //fillFixed(data.fixedprice);
            fillCountdowns(data.countdowns);
            setMainPageLink(data.auctions.length + data.stunts.length);
            
            var updateTime = 0;
            if (parseInt(lowestTime) < parseInt(auctionTimeoutValue)) {
                if (parseInt(lowestTime) < 10) {
                    updateTime = 10;
                } else {
                    updateTime = parseInt(lowestTime) + 1;
                }
            } else {
                updateTime = auctionTimeoutValue;
            }
            auctionUpdateTimeout = window.setTimeout("updateAuctions()", updateTime * 1000);
            //alert(updateTime + " - " + lowestTime + " - " + auctionTimeoutValue);
        },
        error: function (xhr, msg) {
            var response = JSON.parse(xhr.responseText);
            if (response.Message) {
                alert(response.Message);
            }
        }
    });
}

function fillCountdowns(countDowns) {
    lowestTime = 1000;
    for (var c in countDowns) {
        var currCountDown = countDowns[c];
        if (parseInt(currCountDown.time) < parseInt(lowestTime)) {
            lowestTime = currCountDown.time;
        }
        doCountDown(currCountDown.id, currCountDown.time, 0);
    }
}

function formatTime(secondsRest) {
    var text = '';

    var calc = secondsRest;

    var days = Math.floor(calc / 86400);
    calc -= days * 86400;

    var hours = Math.floor(calc / 3600);
    calc -= hours * 3600;

    var minutes = Math.floor(calc / 60);
    calc -= minutes * 60;

    if (secondsRest > 0) {
        if (secondsRest > 300) {
            if (days > 0) { text = text + days + ' d '; }
            if (hours > 0) { text = text + hours + ' t '; }
            if (minutes > 0) { text = text + minutes + ' min igjen'; }
        } else {
            if (days > 0) { text = text + days + ' d '; }
            if (hours > 0) { text = text + hours + ' t '; }
            if (minutes > 0) { text = text + minutes + ' m '; }
            text = text + calc + ' sek igjen';
        }
    }
    else {
        text = 'Oppdateres...';
    }
    return text;
}

function doCountDown(id, secondsRest, TimerId) {
    var rest = secondsRest;
    rest--;
    var calc = rest;

    var text = formatTime(rest);

    if ($("#" + "auc_list_prodtid_" + id)) {
        $("#" + "auc_list_prodtid_" + id).html(text);
        if (rest < 60) {
            $("#" + "auc_list_prodtid_" + id).addClass('atr');
        }
    }

    if (rest > 0) {
        if (TimerId == 0) {
            NewTimerId = TimerIDCount++;
        } else {
            NewTimerId = TimerId;
        }

        if (rest < 121) {
            TimerIDArray[NewTimerId] = setTimeout("doCountDown(" + id + ", " + rest + ", " + NewTimerId + ")", 1000);
        } else {
            TimerIDArray[NewTimerId] = setTimeout("doCountDown(" + id + ", " + (parseInt(rest) - 60) + ", " + NewTimerId + ")", 60000);
        }
    }
}

function fillStunts(data) {

    if (data.length == 0) {
        $('#stuntcontainer').hide();
        return;
    }

    $('#stuntcontainer').show();

    var htmlString = "";

    $('#tablestunts > tbody > tr').remove();

    for (var i = 0; i < data.length; i++) {
        //fix this! :)
        //Fjernet fastpris
        //if (data[i].x.length > 0) { htmlString = htmlString + "<tr class='t0_2' ><td class='ab'><div><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' /></a></div></td><td class='an'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].b + ",-</div><div id='auc_list_prodtid_" + data[i].i + "' class='at'>" + data[i].t + "</div><div class='ag'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='bilder/auksjonsliste/gibudstor.gif' alt='Gi bud'/></a><div class='kn2'><a href='visFastprisProdukt.aspx?id=" + data[i].y + "'>   Kjøp nå - kr " + data[i].x + ",-</a></div></div></td></tr>"; }
        if (data[i].x.length > 0) { htmlString = htmlString + "<tr class='t0_2' ><td class='ab'><div><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' /></a></div></td><td class='an'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].b + ",-</div><div id='auc_list_prodtid_" + data[i].i + "' class='at'>" + data[i].t + "</div><div class='ag'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='bilder/auksjonsliste/gibudstor.gif' alt='Gi bud'/></a></div></td></tr>"; }
        else { htmlString = htmlString + "<tr class='t0_2' ><td class='ab'><div><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' /></a></div></td><td class='an'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].b + ",-</div><div id='auc_list_prodtid_" + data[i].i + "' class='at'>" + data[i].t + "</div><div class='ag'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='bilder/auksjonsliste/gibudstor.gif' alt='Gi bud'/></a></div></td></tr>"; }
    };

    $("#tablestunts").html(htmlString);
}

function fillFixed(data) {

    if (data.length == 0) {
        $('#fixedcontainer').hide();
        return;
    }

    $('#fixedcontainer').show();

    var htmlString = "";
    var cssClass = "t0_1";

    $('#tablefixed > tbody > tr').remove();

    for (var i = 0; i < data.length; i++) {
        if (i % 2) {
            cssClass = "t0_2";
        }
        else {
            cssClass = "t0_1";
        }
        
        htmlString = htmlString + "<tr class='" + cssClass + "' ><td class='ab'> <div>  <a href='visFastprisProdukt.aspx?id=" + data[i].y + "'>  <img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' />  </a> </div></td><td class='an'>  <a href='visFastprisProdukt.aspx?id=" + data[i].y + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].x + ",-</div><div class='at'>&nbsp;</div><div class='ag'>  <div class='kn3'><a href='visFastprisProdukt.aspx?id=" + data[i].y + "'>   Kjøp nå - kr " + data[i].x + ",-</a></div>  </div></td></tr>";        
    };

    $("#tablefixed").html(htmlString);
}

function fillAuctions(data) {
    var htmlString = "";
    var cssClass = "t0_1";
    clearTimeout(auctionUpdateTimeout);

    for (i = 0; i < TimerIDCount; i++) {
        clearTimeout(TimerIDArray[i]);
    }
    TimerIDArray.length = 0;
    TimerIDCount = 0;

    $('#tableauctions > tbody > tr').remove();

    for (var i = 0; i < data.length; i++) {
        if (i % 2) {
            cssClass = "t0_2";
        }
        else {
            cssClass = "t0_1";
        }

        if (data[i].a == 3) {
            cssClass = "t4";
        }

        //fix this! :)
        //Fjernet fastpris
        //if (data[i].x.length > 0) { htmlString = htmlString + "<tr class='"+cssClass+"' ><td class='ab'> <div>  <a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' />  </a> </div></td><td class='an'>  <a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].b + ",-</div><div id='auc_list_prodtid_" + data[i].i + "' class='at'>" + data[i].t + "</div><div class='ag'>  <a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>  <img src='bilder/auksjonsliste/gibudstor.gif' alt='Gi bud'/>  </a><div class='kn2'><a href='visFastprisProdukt.aspx?id=" + data[i].y + "'>   Kjøp nå - kr " + data[i].x + ",-</a></div>  </div></td></tr>"; }
        if (data[i].x.length > 0) { htmlString = htmlString + "<tr class='" + cssClass + "' ><td class='ab'><div><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' /></a></div></td><td class='an'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].b + ",-</div><div id='auc_list_prodtid_" + data[i].i + "' class='at'>" + data[i].t + "</div><div class='ag'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='bilder/auksjonsliste/gibudstor.gif' alt='Gi bud'/></a></div></td></tr>";  }
        else { htmlString = htmlString + "<tr class='" + cssClass + "' ><td class='ab'><div><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='http://www.netthandelen.no/prodbilder/small/" + data[i].p + "' alt='" + data[i].d + "' /></a></div></td><td class='an'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'>" + data[i].d + "</a></td><td class='an2'><div class='ap'>kr " + data[i].b + ",-</div><div id='auc_list_prodtid_" + data[i].i + "' class='at'>" + data[i].t + "</div><div class='ag'><a href='visAuksjon.aspx?Auksjonsid=" + data[i].i + "'><img src='bilder/auksjonsliste/gibudstor.gif' alt='Gi bud'/></a></div></td></tr>"; }
    };

    $("#tableauctions").html(htmlString);
}

function setMainPageLink(count) {
    if (window.location.search.indexOf("utvalg=1") > -1) {
        $('#divmoreauctions').html("<a href='index.aspx?utvalg=0'><img src='bilder/tilbake.jpg' border='0'></a>");
    }
    else {
        if (count < 400) {
            $('#divmoreauctions').hide();
        }
        else {
            $('#divmoreauctions').html("<a href='index.aspx?utvalg=1'><img src='bilder/flereAuksjoner2.jpg' border='0' /></a>");
        }
    }
    $("#divtop").html("<a href='#topp'><img src='bilder/tiltoppen.jpg' border='0' alt='Til toppen' /></a>");
}

$(document).ready(function () {
    updateAuctions();
});
