﻿    function trim(stringToTrim) {
        return stringToTrim.replace(/^\s+|\s+$/g,"");
    }
    function ltrim(stringToTrim) {
        return stringToTrim.replace(/^\s+/,"");
    }
    function rtrim(stringToTrim) {
        return stringToTrim.replace(/\s+$/,"");
    }
    var scrapi;
    var timeoutID;
    var autoScroll = true;
    var gwd = null;
    $(function() {
        var scr = 0;
        //setup scrollable
        $("#scrollableHomepage").scrollable({ circular: true, items: ".items", onSeek: onSlideNavigation });
        scrapi = $('#scrollableHomepage').data('scrollable');

        //add left and right hotspots (allowing user to scroll)
        $("#liveArea").append('<a id="leftScrollableHotspot" class="homepage_hotspot"></a><a id="rightScrollableHotspot" class="homepage_hotspot"></a>');

        //setup hotspots on side of homepage
        /*$('.homepage_hotspot').click(function(){
        var Direction = 1;
        if($(this).attr('id') == 'leftScrollableHotspot') Direction = -1;
        scrapi.move(Direction); 
        cancelAutoScroll();
        });*/
        $('.homepage_hotspot').hide();

        $('.next,.prev').click(cancelAutoScroll);

        timeoutID = setTimeout(autoScrollSlides, 5000);
        /*
        $('#scrollable_slideSelect span a').click(function(){
        var i = $(this).parent().index();
        scrapi.seekTo(i);
        return false;
        });*/

        /**********
        home page pop-up
        **********/

        function getCookie(c_name) {
            var i, x, y, ARRcookies = document.cookie.split(";");
            for (i = 0; i < ARRcookies.length; i++) {
                x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
                y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
                x = x.replace(/^\s+|\s+$/g, "");
                if (x == c_name) {
                    return unescape(y);
                }
            }
        }
        var HotNews = getCookie("HOTNEWS");
        if ($('input#hdnSeenPopUp').val() == 'no' && (HotNews == null || HotNews == 'undefined')) {
            $('div#fancybox-wrap').fadeIn(500, function() { $('input#hdnSeenPopUp').val('yes'); $('input#txtPopEmailAddr').val('email address') });
        }
        $('a#fancybox-close,a#noThanks').live('click', function(e) {
            e.preventDefault();
            $('input#hdnSeenPopUp').val('yes');
            $.ajax({
                data: 'mode=0&seenHomePopUp=true',
                url: 'ajx/_email_signup.aspx'
            });
            $('div#fancybox-wrap').fadeOut();
        });
        $('input#txtPopEmailAddr').focus(function() {
            $(this).val('');
        });
        $('a#btnSignUp').live('click', function(e) {
            $('p#retMsg').hide();
            e.preventDefault();
            var emailVal = $('input#txtPopEmailAddr').val();
            var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
            var isEmail = emailVal.length > 0;
            isEmail = emailPattern.test(emailVal);
            if (isEmail) {
                $.ajax({
                    data: 'mode=1&email=' + emailVal + '&seenHomePopUp=true',
                    url: 'ajx/_email_signup.aspx',
                    success: function(data) {
                        //console.log(data);
                        var trimmed = data.replace(/^\s+/, "");
                        trimmed = trimmed.replace(/\s+$/, "");
                        $('ul#popForm').fadeOut();
                        if (trimmed == 'success') {
                            $('p#retMsg').text('Thank you!').show();
                            $('a#noThanks').text('continue shopping');
                        } else {
                            $('p#retMsg').text(data).fadeIn();
                        }
                        //                        var date = new Date();
                        //                        date.setTime(date.getTime() + (8 * 60 * 60 * 1000));
                        //                        var expires = date.toGMTString();
                        //                        document.cookie = 'HOTNEWS=Y; expires=' + expires + '; path=/';
                    }
                });
            } else {
                $('p#retMsg').text('Please enter a valid email address').fadeIn();
                $('input#txtPopEmailAddr').focus();
            }
        });
    });
    
    $(window).load(setupHomepage);
    
    $(window).resize(function(){
        //rectifyScrollable({w:gwd('w') , h:gwd('h') , verticalcenter:true});
        rectifyhomepagehotspot();
    });
    
    function onSlideNavigation(){
        //reset autoScroll for five seconds
        clearTimeout(timeoutID);
        timeoutID = setTimeout(autoScrollSlides, 5000);
        
        $('.scrollableNavButtons').removeClass('inverted');
        $('.scrollableNavButtons').eq( scrapi.getIndex() ).addClass('inverted');
        //console.log(this.getIndex());
    }
    function setupHomepage() {
        
        setupScrollable();
    } 
    function setupScrollable(){
        $('#scrollableLoading').remove();
       
        scrapi.seekTo(0,0);
        /*var wwidth = gwd('w');
        var wheight = gwd('h');*/
        //rectifyScrollable({w:wwidth , h:wheight , verticalcenter:true});
        
        //scrapi.seekTo(0);
        
        scrapi.seekTo(0,100);
        $("#scrollableHomepage").fadeOut(0);
        $("#scrollableHomepage").css('visibility','visible');
        /*$('#boxBackground').show();
        $("#scrollableHomepage").show().css('visibility','visible');*/
        $('#boxBackground').fadeIn();
        $("#scrollableHomepage").fadeIn();
        //rectifyScrollable({w:wwidth , h:wheight , verticalcenter:true});
        //scrapi.seekTo(0,0);
         
    }
    
    function rectifyScrollable(opt){
        //if not locked
        if(!opt.originY)
            opt.originY = $('.slide').offset().top;
        var sldHeight = $('.slide').height();
        //sldHeight = 452;
        
        if(opt.verticalcenter === true && sldHeight > 100 ){
             //$("#scrollableHomepage").css({ 'top' : opt.h / 2 - ( sldHeight / 2 ) });//vertically center scrollable
             opt.originY = $('.slide').offset().top;
        }
        var mL = (opt.w/2) - (920 / 2);
        //$('#page').css('margin-left', mL );//position the sldies relative inside the parent scrollable div
        $('#boxBackground').css('margin-left', mL );
        $('#scrollableHomepage').css('left', mL+14 );
        
        //make slides the width of the browser so that only one is visible at a time
        //$('#scrollableHomepage .items .slide').css({'width':opt.w});
        
        //move prev next buttons
        $('.prev.button').css({'left':opt.w/2 - (920/2) - 30,'top':opt.originY + ( sldHeight / 2 ) });
        $('.next.button').css({'left':opt.w/2 + (920/2) - -5,'top':opt.originY + ( sldHeight / 2 ) });
        
        //adjust scrollable_slideSelect slide menu 1 2 3
        $('#scrollable_slideSelect').css({ 'top':$('#page').height() - 10, 'right':$(window).width() / 2 - 70 });
    }
    
    function rectifyhomepagehotspot(){

        var slideWidth = $('.slide-container').width();
        if(slideWidth == 0) slideWidth = 920;
        var sxpos  = $('.slide-container').offset().left;
        var windowWidth = $(this).width();
        var windowHeight = $(this).height();
        var newX = (windowWidth / 2) + (slideWidth / 2);
        var newLeftWidth = (windowWidth / 2) - (slideWidth / 2) - (windowWidth / 32);
        $('#rightScrollableHotspot').css({'right':0,'width':windowWidth - newX ,'height':windowHeight - 10});
        $('#leftScrollableHotspot').css({'width':newLeftWidth , left:0,'height':windowHeight - 10});
        
    }
    function cancelAutoScroll(){
        
        autoScroll = false;
        clearTimeout(timeoutID);//console.log(timeoutID);
    }
    function autoScrollSlides(){
        if(autoScroll){
            scrapi.next(500);
            timeoutID = setTimeout(autoScrollSlides, 5000);
        }
    }
