﻿(function (banner) {

    if (banner) {

        var $wrap = $(banner),
        auto = true,
        btid = null,
        headBG = document.getElementById("homeHeaderBG"),
        headFadeBG = document.getElementById("headerWrapFadeBG"),
        bannerBG = document.getElementById("headerWrap"),
        bannerFadeBG = document.getElementById("homeHeaderFadeBG"),
        slides = $wrap.find(".slide"),
        tot = slides.length,
        curSlide = 0,
        counter = document.getElementById("bannerCount"),
        showSlide = function (i) {
            if (i >= slides.length) { i = 0 }
            else if (i < 0) { i = slides.length - 1 };

            $(slides[curSlide]).stop().animate({
                "opacity": 0
            }, function () { this.style.display = "none" });
            slides[i].style.display = "block";
            $(slides[i]).stop().animate({ "opacity": 1 });


            headFadeBG.style.backgroundImage = "url('/images/homeBanners/" + (i + 1) + "-bg.jpg')";
            bannerFadeBG.style.backgroundImage = "url('/images/homeBanners/" + (i + 1) + ".jpg')";

            $(bannerFadeBG).stop().animate({
                "opacity": 1
            }, function () {
                headBG.style.backgroundImage = "url('/images/homeBanners/" + (i + 1) + ".jpg')";
                bannerBG.style.backgroundImage = "url('/images/homeBanners/" + (i + 1) + "-bg.jpg')";
                $(this).css("opacity", 0);
            });

            $(headFadeBG).stop().animate({
                "opacity": 1
            }, function () {
                $(this).css("opacity", 0);
            });

            curSlide = i;

            counter.innerHTML = (curSlide + 1) + "/" + tot;



            if (auto) {
                btid = setTimeout(function () {
                    showSlide(curSlide + 1);
                }, 6000);
            } else {
                clearTimeout(btid);
            }
        };

        showSlide(0);

        document.getElementById("bannerNext").onclick = function () {
            auto = false;
            showSlide(curSlide + 1);
        };
        document.getElementById("bannerPrev").onclick = function () {
            auto = false;
            showSlide(curSlide - 1);
        };
    };

})(document.getElementById("homeBanner"));


function ShowPollResults(choice) {
    $(".pollResults").html("<h2>Submitting poll...</h2>");
    var pollOb,
    o =  $.ajax({
        type: "POST",
        url: "/Services/WDS.asmx/AddPollEntryRank",
        data: "{ PollEntryUID: '" + choice + "' }",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function (msg, status, err) {
            $(".outputMsg").html("There has been an error submitting your choice, please try again");
        },
        success: function (msg) {
            // -- Loop through all results    						    
                
            pollOb = {};
            pollOb.Name = msg.d.Name;
            pollOb.Description = msg.d.Description;
            pollOb.entries = msg.d.PollEntry;
            displayPollGraph(pollOb);

        }
    });

}

function GetPollResults(choice) {
    $(".pollResults").html("<h2>Loading results...</h2>");
    
    var pollOb,
    o =  $.ajax({
        type: "POST",
        url: "/Services/WDS.asmx/ViewPollResults",
        data: "{ PollUID: '" + choice + "' }",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function (msg, status, err) {
            $(".outputMsg").html("There has been an error getting the poll results, please try again");
        },
        success: function (msg) {
            // -- Loop through all results    						    

            pollOb = {};
            pollOb.Name = msg.d.Name;
            pollOb.Description = msg.d.Description;
            pollOb.entries = msg.d.PollEntry;
            displayPollGraph(pollOb);

        }
    });

};

var displayPollGraph = function(obj){
    $("#detail").css("display","none");
    var resultsWrap = $(".pollResults").html(""),
    results = obj.entries;
    
    resultsWrap.css("display","block");
    for(var x in results) {
        var row = document.createElement("div"),
        barWrap = document.createElement("div")
        bar = document.createElement("span");
        row.innerHTML = "<span>" + results[x].Name + "</span>";
        barWrap.setAttribute(classAttr,"pollBar");
        bar.style.width = results[x].Percentage + "%";
        bar.innerHTML = Math.floor(Math.round(results[x].Percentage)) + "%";
        barWrap.appendChild(bar);
        row.appendChild(barWrap);
        resultsWrap.append(row);
    };
    $("#votePoll,#showPoll").unbind('click').css("visibility","hidden");
};


$("#votePoll").click(function () {
    ShowPollResults($("#pollEntries input:checked").val());
});

$("#showPoll").click(function () {
    GetPollResults($(".pollUID").val());
});


