

/*
 * Author : Morten Hekkvang @ Four Of A Kind
 * Copyright : Four of a Kind 2010.08-Present
 */

var lghBoxElementList = false;
var lghBoxCurrentElement = false;
var lghBoxNextElement = false;
var lghBoxPrevElement = false;
var lghBoxActiveElement = false;
var lghBoxAddedToCart = false;
var lghBoxViewSample = false;
var lghBoxActiveImg = false;

$.lghBox = function(){

        var selector = "a[rel='lghbox']";

        lghBoxElementList = $(selector);

        //alert(lghBoxElementList.length);

        $(selector).click(function(){
            
            for(var i in lghBoxElementList) {
                if(this == lghBoxElementList[i]) {
                    lghBoxCurrentElement = i;

                    if(i < lghBoxElementList.length - 1) {
                        lghBoxNextElement = parseInt(i) + 1;
                    } else {
                        lghBoxNextElement = -1;
                    }

                    if(i > 0) {
                        lghBoxPrevElement = parseInt(i) - 1;
                    } else {
                        lghBoxPrevElement = -1;
                    }

                    break;
                }
            }

            lghBoxActiveElement = $(this);

            $("#lghbox-content .lghbox-innercontent a.next").removeClass("hidden");
            $("#lghbox-content .lghbox-innercontent a.previous").removeClass("hidden");

            if(lghBoxNextElement == -1) $("#lghbox-content .lghbox-innercontent a.next").hide();
            if(lghBoxPrevElement == -1) $("#lghbox-content .lghbox-innercontent a.previous").hide();

            if($("#lghbox-content").css('display') == "none") {
                $("#lghbox-content .lghbox-innercontent").css({height: 0, width: 0});
                $("#lghbox-content .lghbox-innercontent a.next").hide();
                $("#lghbox-content .lghbox-innercontent a.previous").hide();

                lghBoxViewSample = false;
            }

            lghBoxActiveImg = new Image();

            var imgSRC = $(this).attr("href");

            lghBoxActiveImg.src = imgSRC;

            var imgWidth = lghBoxActiveImg.width;
            var imgHeight = lghBoxActiveImg.height;

            $("#lghbox-content .lghbox-innercontent").css("background-image", "");

            var theCode = $(this).attr("title");
            var newHTML = $.ajax({url:"getname.php?Code=" + theCode, async: false}).responseText;
            $("#lghbox-content .lghbox-textcontent").html(theCode + " " + newHTML);
            
            $('#lghbox-content .lghbox-customkeys .view .viewLink').attr("href", "images/samples/4x8/" + theCode + ".jpg");

            var incart = $.ajax({ url: "incart.php", async: false }).responseText;

            var pattern = new RegExp(":" + theCode + ":", "i");

            if(incart.match(pattern)) {
                $("#lghbox-content .lghbox-customkeys a.select").css("background-image", "url('images/incartlabel.gif')");
                $("#lghbox-content .lghbox-customkeys a.select").css("width", "106px");
            } else {
                $("#lghbox-content .lghbox-customkeys a.select").css("background-image", "url('images/samplelabel.gif')");
                $("#lghbox-content .lghbox-customkeys a.select").css("width", "94px");
            }

            if(!lghBoxActiveImg) {
                $(lghBoxActiveImg).unbind("load");

                $(lghBoxActiveImg).bind("load", function() {
                    var imgWidth = lghBoxActiveImg.width;
                    var imgHeight = lghBoxActiveImg.height;

                    $("#lghbox-content").fadeIn(600);

                    $("#lghbox-content").css({marginLeft:-(imgWidth/2), marginTop:-((imgHeight + 135)/2)});

                    $("#lghbox-content .lghbox-innercontent").animate({height: imgHeight, width: imgWidth}, 600, function() {
                        if(lghBoxNextElement != -1) $("#lghbox-content .lghbox-innercontent a.next").fadeIn("fast");
                        if(lghBoxPrevElement != -1) $("#lghbox-content .lghbox-innercontent a.previous").fadeIn("fast");
                    });

                    $("#lghbox-content .lghbox-innercontent").css("background-image", "url('"+ lghBoxActiveImg.src + "')");
                });
            } else {
                var imgWidth1 = lghBoxActiveImg.width;
                var imgHeight1 = lghBoxActiveImg.height;

                $("#lghbox-content").fadeIn(600);

                $("#lghbox-content").css({marginLeft:-(imgWidth1/2), marginTop:-((imgHeight1 + 135)/2)});

                if(imgWidth1 > 0) {
                    $("#lghbox-content .lghbox-innercontent").animate({height: imgHeight1, width: imgWidth1}, 600, function() {
                        if(lghBoxNextElement != -1) $("#lghbox-content .lghbox-innercontent a.next").fadeIn("fast");
                        if(lghBoxPrevElement != -1) $("#lghbox-content .lghbox-innercontent a.previous").fadeIn("fast");
                    });

                    $("#lghbox-content").css("width", imgWidth1);
                    $("#lghbox-content").css("height", imgHeight1 + 80);
                } else {
                    $("#lghbox-content").css({marginLeft:-(700/2), marginTop:-((350 + 135)/2)});

                    $("#lghbox-content .lghbox-innercontent").animate({height: 350, width: 700}, 600, function() {
                        if(lghBoxNextElement != -1) $("#lghbox-content .lghbox-innercontent a.next").fadeIn("fast");
                        if(lghBoxPrevElement != -1) $("#lghbox-content .lghbox-innercontent a.previous").fadeIn("fast");
                    });

                    $("#lghbox-content").css("width", 700);
                    $("#lghbox-content").css("height", 430);
                }

                $("#lghbox-content .lghbox-innercontent").css("background-image", "url('"+ lghBoxActiveImg.src + "')");
            }
            
            $("#lghbox-blackbox").fadeIn('slow');

            $("#lghbox-content .lghbox-control a.close").unbind('click');

            $("#lghbox-blackbox").click(function(){
                $("#lghbox-blackbox").fadeOut('slow');
                $("#lghbox-content").fadeOut('slow', function(){
                    if(lghBoxAddedToCart) {
                        window.location.reload();
                    }
                });
            });

            $("#lghbox-content .lghbox-control a.close").click(function(){
                $("#lghbox-blackbox").fadeOut('slow');
                $("#lghbox-content").fadeOut('slow', function(){
                    if(lghBoxAddedToCart) {
                        window.location.reload();
                    }
                });
            });

            $("#lghbox-content .lghbox-innercontent a.next").unbind('click');

            $("#lghbox-content .lghbox-innercontent a.next").click(function(){
                if(lghBoxNextElement != -1) {
                    $(lghBoxActiveElement).removeClass("lghbox-activeelement");

                    $(lghBoxElementList[lghBoxNextElement]).click();
                }
            });

            $("#lghbox-content .lghbox-innercontent a.previous").unbind('click');

            $("#lghbox-content .lghbox-innercontent a.previous").click(function(){
                if(lghBoxPrevElement != -1) {
                    $(lghBoxActiveElement).removeClass("lghbox-activeelement");

                    //alert($(lghBoxElementList[lghBoxPrevElement]).attr("href"));

                    $(lghBoxElementList[lghBoxPrevElement]).click();
                }
            });

            $("#lghbox-content .lghbox-customkeys a.select").unbind("click");
            $("#lghbox-content .lghbox-customkeys a.select").click(function() {
                $.ajax({ url:"addtocart.php?Code=" + $(lghBoxActiveElement).attr("title"), async:false });
                lghBoxAddedToCart = true;
                $(lghBoxActiveElement).click();
            });
            
            return false;
        });

        if($("#lghbox-blackbox").length == 0){
            $('<div id="lghbox-blackbox"></div>').appendTo(document.body);
            $('<div id="lghbox-content"></div>').appendTo(document.body);
                $('<div class="lghbox-control"></div>').appendTo($('#lghbox-content')[0]);
                    $('<a href="#" class="close"></a>').appendTo($('#lghbox-content .lghbox-control')[0]);
                    $('<div style="clear: both"></div>').appendTo($('#lghbox-content .lghbox-control')[0]);

                $('<div class="lghbox-innercontent"></div>').appendTo($('#lghbox-content'));
                    $('<a href="#" class="previous"></a>').appendTo($('#lghbox-content .lghbox-innercontent')[0]);
                    $('<a href="#" class="next"></a>').appendTo($('#lghbox-content .lghbox-innercontent')[0]);

                //$('<div class="lghbox-textcontent">A1246 Allegheny Red Oak</div>').appendTo($('#lghbox-content'));

                $('<div class="lghbox-customkeys"></div>').appendTo($('#lghbox-content'));
                    $('<div class="lghbox-textcontent">A1246 Allegheny Red Oak</div>').appendTo($('#lghbox-content .lghbox-customkeys')[0]);
                    $('<div class="view"><a href="" target="_blank" class="viewLink">Click here for a high resolution <br />4’x8’ image</a></div>').appendTo($('#lghbox-content .lghbox-customkeys')[0]);
                    $('<a href="#" class="select"></a>').appendTo($('#lghbox-content .lghbox-customkeys')[0]);
        }

        $(window).scroll(function() {
            $("#lghbox-blackbox").css("top", $(window).scrollTop());
        });
}
