﻿var maxProdperPage = 5;
var currentRelatedProdPage = 1;

$(document).ready(function() {


    Sys.Application.add_load(function() {

        /*******************************************************************
        /* PDP tabs fix
        /*******************************************************************/

        if ($("#pdptabs td:last").attr("class") == "selected")
            $("#pdptabs td:last").attr("class", "selected-lastclass");
        else
            $("#pdptabs td:last").attr("class", "lastclass");

        /*******************************************************************
        /* PDP spec alt row style fix
        /*******************************************************************/

        // reset
        $(".std-list dt").removeClass("alt");
        $(".std-list dd").removeClass("alt");

        // reapply
        $(".std-list").find("dt:even").addClass("alt");
        $(".std-list").find("dd:even").addClass("alt");

    });

    /*******************************************************************
    /* Recommended Product widget
    /*******************************************************************/


    // Widget for "Other Movie Formats"    
    $(".other_movie_formats a").each(function() {

        if ($(this).html().indexOf("DVD") > -1) {
            $(this).html('<img src="/images/common/buttons/pdp-dvd-icon.gif" class="other-dvd-format">');
        }

        if ($(this).html().indexOf("Blu-ray Disc") > -1) {
            $(this).html('<img src="/images/common/buttons/pdp-blu-ray-icon.gif" class="other-dvd-format">');
        }

    });

    $(".other_movie_formats").show();


    // Manipulate HTML
    $("#relatedProd .fieldbox-tr2")
        .next().removeClass("fieldbox")
        .next().addClass("viewable");

    $("#relatedProd .chkbox")
        .addClass("alsoAdd")
        .removeClass("chkbox");

    $("#relatedProd .price").each(function() {
        if ($(this).find('.rebate-top img').length) {
            // adding regular price
            $(this).prepend($("<span>")
            .addClass("saving-claim")
            .html($(this).find(".rebate-top img").attr("alt"))
            );
            // adding saving claim
            $(this).prepend($("<span>")
            .addClass("prodPrice")
            .html($(this).find(".pricepillred img").attr("alt"))
            );
        } else {
            //adding regular price
            $(this).prepend($("<span>")
            .addClass("prodPrice").css('margin-bottom', '17px')
            .html($(this).find("img").attr("alt"))
            );
        }
    });

    $("#relatedProd .small-desc").addClass("prodTitle");

    $("#relatedProd .viewable").wrapInner($("<div>").addClass("prodList"));
    $("#relatedProd .inner-padding").removeClass("inner-padding");

    $("#relatedProd .img55x55")
        .addClass("img100x100")
        .removeClass("img55x55")
        .each(function() {
            $(this).attr("src", $(this).attr("src").replace("55x55", "100x100"));
        });

    // Used to populate products for testing
    //$("#relatedProd .prodList").append($("#relatedProd .prodList").html());


    $("#relatedProd h2")
        .addClass("header")
        .wrapInner($("<span>").addClass("title"))
        .append($("<div>").attr("id", "paging").addClass("paging"))
        .append($("<span>").addClass("clear"));

    var maxHeight = 0;
    $("#relatedProd .small-desc").each(function() {
        if ($(this).height() > maxHeight)
            maxHeight = $(this).height();
    });
    $("#relatedProd .small-desc").height(maxHeight);

    var totalRelatedProd = $("#relatedProd .fieldbox").length;
    var totalRelatedProdPage = Math.ceil(totalRelatedProd / maxProdperPage);
    $("#relatedProd .prodList").width((140 * totalRelatedProd + 1) + 100);

    if (totalRelatedProd == 0) {
        $("#relatedProd").hide();
    } else {
        $("#relatedProd").show();
    }

    var tempHTML = '<span><a href="#" id="prevPage" ref="noqv">&#171;</a></span>';
    for (var i = 1; i < totalRelatedProdPage + 1; i++) {
        tempHTML += '<span><a href="#" class="RPpage' + i + ' RPpage" ref="noqv">' + i + '</a></span>';
    }
    tempHTML += '<span><a href="#" id="nextPage" ref="noqv">&#187;</a></span>';

    document.getElementById('paging').innerHTML = tempHTML;

    $("#paging .RPpage").each(function() {
        var idx = $("#paging .RPpage").index(this);
        $(this).click(function() {
            setRPPage(idx + 1);
            return false;
        });
    });

    $("#nextPage").click(function() {
        setRPPage(currentRelatedProdPage + 1);
        return false;
    });

    $("#prevPage").click(function() {
        setRPPage(currentRelatedProdPage - 1);
        return false;
    });

    setRPPage(1);


});

function setRPPage(page) {
    if (page > 0 && page < Math.ceil($("#relatedProd .fieldbox").length / maxProdperPage) + 1) {
		$(".prodList").animate({
				left: -700 * (page - 1)
			},1000);
		currentRelatedProdPage = page;
		
		if (page < 2) {
			$("#prevPage").addClass("disabled");
		} else {
			$("#prevPage").removeClass("disabled");
		}

		if (page > Math.ceil($("#relatedProd .fieldbox").length / maxProdperPage) - 1) {
			$("#nextPage").addClass("disabled");
		} else {
			$("#nextPage").removeClass("disabled");
		}
		
		$("#relatedProd .paging a").removeClass("currentPage");
		$("#relatedProd .paging a.RPpage" + currentRelatedProdPage).addClass("currentPage");
	}
	return false;
}

function wheel(event) {
	var delta = 0;
	if (!event) event = window.event;
	if (event.wheelDelta) {
		delta = event.wheelDelta/120; 
		if (window.opera) delta = -delta;
	} else if (event.detail) {
		delta = -event.detail/3;
	}
	
	if(event.preventDefault)
	{
		event.preventDefault();
	}
	event.returnValue = false;
	
	if (delta) {
		if (delta <0)
			setRPPage(currentRelatedProdPage+1);
		else
			setRPPage(currentRelatedProdPage-1);
	}
}


