(function ($) {
    $.tiny = $.tiny || {};
    $.tiny.carousel = {
        options: {
            start: 1,
            display: 1,
            axis: 'x',
            controls: true,
            pager: false,
            interval: false,
            intervaltime: 3000,
            rewind: false,
            animation: true,
            duration: 1000,
            callback: null,
            iter:3,
			itemwidthd:286
        }
    };
    $.fn.tinycarouselnew = function (options) {
        var options = $.extend({}, $.tiny.carousel.options, options);
        this.each(function () {
            $(this).data('tcl', new Carouselnew($(this), options));
        });
        return this;
    };
    $.fn.tinycarousel_start = function () {
        $(this).data('tcl').start();

    };
    $.fn.tinycarousel_stop = function () {
        $(this).data('tcl').stop();
    };
    $.fn.tinycarousel_move = function (iNum) {
        $(this).data('tcl').move(iNum - 1, true);
    };


	$.fn.tinycarousel_test= function test()
		{

		 var options = $.extend({}, $.tiny.carousel.options, options);


			//$(this).oContent.css(bAxis ? 'width' : 'height', (iPageSize * oPages.length)-itemwidthd);
		};
    function Carouselnew(root, options) {
        var oSelf = this;
        var oViewport = $('.viewport:first', root);
        var oContent = $('.overview:first', root);
        var oPages = oContent.children();
        var oBtnNext = $('.next:first', root);
        var oBtnPrev = $('.prev:first', root);
        var oPager = $('.pager:first', root);
        var iPageSize, iSteps, iCurrent, oTimer, bPause, bForward = true,
            bAxis = options.axis == 'x';
 var iLeftover;
        function initialize() {
            iPageSize = bAxis ? $(oPages[0]).outerWidth(true) : $(oPages[0]).outerHeight(true);
            iLeftover = Math.ceil(((bAxis ? oViewport.outerWidth() : oViewport.outerHeight()) / (iPageSize * options.display)) - 1);
            iSteps = Math.max(1, Math.ceil(oPages.length / options.display) - iLeftover);
            iCurrent = Math.min(iSteps, Math.max(1, options.start)) - 2;
            oContent.css(bAxis ? 'width' : 'height', (iPageSize * oPages.length));
            oSelf.move(1);
            setEvents();
			 //alert($.tiny.carousel.options.itemwidthd);
            return oSelf;
        };

        function setEvents() {
            if (options.controls && oBtnPrev.length > 0 && oBtnNext.length > 0) {
                oBtnPrev.click(function () {

                    oSelf.move(-1);
                    return false;
                });
                oBtnNext.click(function () {
                    oSelf.move(1);
                    return false;
                });

	         $('#AddedInFav .expressdel').live('click',function(){
                     if(options.iter==1)
                     {
                        var exid = $(this).attr("alt");
                        if(exid!=''){
                            $('#expressproductId'+exid).remove();
                        }
                      iSteps        = iSteps-1;

		    oPages.length = oPages.length-1;
		    if(oPages.length==8){iSteps=0;iCurrent=0;};
		    oContent.css(bAxis ? 'width' : 'height', (iPageSize * oPages.length));
                    setButtons();
		    oSelf.move(-1);
                 }

                });

		$(' .addtofavbuttononproduct').live('click',function(){
                   if(oPages.length!=20){
                       if(options.iter==1)
                           {
                    oPages.length=oPages.length+1;

                    if(oPages.length>8){iSteps = iSteps+1;}
                    oContent.css(bAxis ? 'width' : 'height', (iPageSize * oPages.length));

		   setButtons();
                   oSelf.move(-iCurrent);
                   }
                   }
		});
            }
            if (options.interval) {
                root.hover(oSelf.stop, oSelf.start);
            }
            if (options.pager && oPager.length > 0) {
                $('a', oPager).click(setPager);
            }
        };

        function setButtons() {
            if (options.controls) {
                oBtnPrev.toggleClass('disable', !(iCurrent > 0));
                oBtnNext.toggleClass('disable', !(iCurrent + 1 < iSteps));
            }
            if (options.pager) {
                var oNumbers = $('.pagenum', oPager);
                oNumbers.removeClass('active');
                $(oNumbers[iCurrent]).addClass('active');
            }
        };

        function setPager(oEvent) {
            if ($(this).hasClass('pagenum')) {
                oSelf.move(parseInt(this.rel), true);
            }
            return false;
        };

        function setTimer() {
            if (options.interval && !bPause) {
                clearTimeout(oTimer);
                oTimer = setTimeout(function () {
                    iCurrent = iCurrent + 1 == iSteps ? -1 : iCurrent;
                    bForward = iCurrent + 1 == iSteps ? false : iCurrent == 0 ? true : bForward;
                    oSelf.move(bForward ? 1 : -1);
                }, options.intervaltime);
            }
        };
        this.stop = function () {
            clearTimeout(oTimer);
            bPause = true;
        };
        this.start = function () {
            bPause = false;
            setTimer();
        };

        this.move = function (iDirection, bPublic) {
            iCurrent = bPublic ? iDirection : iCurrent += iDirection;

            if (iCurrent > -1 && iCurrent < iSteps) {
                var oPosition = {};
                oPosition[bAxis ? 'left' : 'top'] = -(iCurrent * (iPageSize * options.display));
                oContent.animate(oPosition, {
                    queue: false,
                    duration: options.animation ? options.duration : 0,
                    complete: function () {
                        if (typeof options.callback == 'function') options.callback.call(this, oPages[iCurrent], iCurrent);
                    }
                });

                
                setButtons();
                setTimer();
            }
        };
        return initialize();
    };
})(jQuery);




/* Write the code for slide the Express checkout panel for ticket #356
 */
jQuery(function(jQuery) {
     var open = false;
     jQuery('#footerSlideButton').click(function () {
           if(document.getElementById('iLoginCheck').value==0){
               if(open === false) {
                       jQuery('#fav img').attr("src", "/assets/images/fav_active.png");
                       jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
                       jQuery('#AddedInFav').show();
                       jQuery('#PreviousOrder').hide();
                       jQuery('#fav').css("color","#ffffff");
              jQuery('#fav').css("background","#4a4a4a");
              jQuery('#pre').css("color","#020015");
              jQuery('#pre').css("background","#ffffff");
                        document.getElementById('activeMenuIdsCon').value ='AddedInFav';
	               jQuery('#footerSlideContent').animate({height: '200px'},'fast');
		       document.getElementById('leftMenuButton').style.display = "block";
                       document.getElementById('rightMenuButton').style.display = "block";
                       jQuery('#showhide').removeClass("hideExpress");
                       jQuery('#showhide').addClass("showExpress");
                       open = true;
                }
		else
                {
                     document.getElementById('activeMenuIdsCon').value ='';
                        jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
                        jQuery('#fav img').attr("src", "/assets/images/fav.png");
		        jQuery('#footerSlideContent').animate({height: '0px'}, 'fast', 'linear', function() {
                                     document.getElementById('leftMenuButton').style.display = "none";
                                     document.getElementById('rightMenuButton').style.display = "none";
                         });
                          jQuery('#pre').css("color","#020015");
                          jQuery('#pre').css("background","#ffffff");
                          jQuery('#fav').css("color","#020015");
                          jQuery('#fav').css("background","#ffffff");
                        jQuery('#expressmessagedispaly').html('');
                        jQuery('#showhide').removeClass("showExpress");
                        jQuery('#showhide').addClass("hideExpress");
		        open = false;
                 }
              }
              else
              {
                        m_loginPopUP();
              }
  });


jQuery('#fav').click(function (){
          if(document.getElementById('iLoginCheck').value==0){
                jQuery('#AddedInFav').show();
                jQuery('#PreviousOrder').hide();
                jQuery('#fav').css("color","#ffffff");
              jQuery('#fav').css("background","#4a4a4a");
              jQuery('#pre').css("color","#020015");
              jQuery('#pre').css("background","#ffffff");
                document.getElementById('activeMenuIdsCon').value ='AddedInFav';
                jQuery('#fav img').attr("src", "/assets/images/fav_active.png");
                jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
                jQuery('#expressmessagedispaly').html('');
		jQuery('#footerSlideContent').animate({height: '200px'});
                document.getElementById('leftMenuButton').style.display = "block";
                document.getElementById('rightMenuButton').style.display = "block";
                jQuery('#showhide').removeClass("hideExpress");
                jQuery('#showhide').addClass("showExpress");
                open = true;

          }
          else
          {
               m_loginPopUP();
          }
});

jQuery('#pre').click(function () {
      if(document.getElementById('iLoginCheck').value==0){
                jQuery('#PreviousOrder').show();
                jQuery('#AddedInFav').hide();
                jQuery('#expressmessagedispaly').html('');
                document.getElementById('activeMenuIdsCon').value = 'PreviousOrder';
                jQuery('#pre').css("color","#ffffff");
                jQuery('#pre').css("background","#4a4a4a");
                jQuery('#fav').css("color","#020015");
                jQuery('#fav').css("background","#ffffff");
                jQuery('#fav img').attr("src", "/assets/images/fav.png");
                jQuery('#pre img').attr("src", "/assets/images/recent.png");
		jQuery('#footerSlideContent').animate({height: '200px'});
		document.getElementById('leftMenuButton').style.display = "block";
                document.getElementById('rightMenuButton').style.display = "block";
                jQuery('#showhide').removeClass("hideExpress");
                jQuery('#showhide').addClass("showExpress");
                open = true;
       }
       else
       {
           m_loginPopUP();
       }
     });
  });


function showAddTocart(ths,productname,productprice){
    jQuery('#expressmessagedispaly').html(productname+" , Price : "+productprice).fadeIn();
    jQuery(ths).find('.addtocartbutton').css('display', 'block');
    jQuery(ths).find('img').css('opacity', '1.0');
}

function hideAddTocart(ths){
    jQuery(ths).find('.addtocartbutton').css('display', 'none');
    jQuery(ths).find('img').css('opacity', '0.6');
    jQuery('#expressmessagedispaly').hide();
}


jQuery(document).ready(function() {
  if(document.getElementById('iLoginCheck').value==0){
       strWhere = document.getElementById('iExpressCheckout').value;
       if(strWhere=='AddedInFav'){
         jQuery('#fav img').attr("src", "/assets/images/fav_active.png");
         jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
         jQuery('#AddedInFav').show();
         jQuery('#PreviousOrder').hide();

         jQuery('#fav').css("color","#ffffff");
         jQuery('#fav').css("background","#4a4a4a");
         jQuery('#pre').css("color","#020015");
         jQuery('#pre').css("background","#ffffff");


         document.getElementById('activeMenuIdsCon').value ='AddedInFav';
         jQuery('#footerSlideContent').animate({height: '200px'});
         document.getElementById('leftMenuButton').style.display  = "block";
         document.getElementById('rightMenuButton').style.display = "block";
         jQuery('#showhide').removeClass("hideExpress");
         jQuery('#showhide').addClass("showExpress");
         open = true;
      }
   }

   /*Menu of express show hide*/
    jQuery('#pre').bind('mouseover',function(){
                if(jQuery('#pre img').attr("src")!='/assets/images/recent.png'){
                    jQuery('#pre img').attr("src", "/assets/images/recent.png");
                }
            });
            jQuery('#pre').bind('mouseout',function(){
                strWhere =  jQuery('#activeMenuIdsCon').val();
                if(strWhere!='PreviousOrder'){
                    jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
                }
            });
            jQuery('#fav').bind('mouseover',function(){
                if(jQuery('#fav img').attr("src")!='/assets/images/fav_active.png'){
                   jQuery('#fav img').attr("src", "/assets/images/fav_active.png");
                }
            });
           jQuery('#fav').bind('mouseout',function(){
                strWhere =  jQuery('#activeMenuIdsCon').val();

                if(strWhere!='AddedInFav'){
                  jQuery('#fav img').attr("src", "/assets/images/fav.png");
                }
            });
   /*End of menu*/

   jQuery('#AddedInFav').tinycarouselnew({ display: 1,iter:1 });
   jQuery('#PreviousOrder').tinycarouselnew({ display: 1,iter:0 });
});

function addtoFav(productid,producttype,name,price,login,thisid,stock,sDetailsLink){ //alert(jQuery('#'+thisid).css("color"));
   if(jQuery('#'+thisid).css("color")=="#AAAAAA" || jQuery('#'+thisid).css("color")=="#aaaaaa" || jQuery('#'+thisid).css("color")=='rgb(170, 170, 170)'){
       return false;
    }else{
     var bResponse;
     if(login==0){ 
         m_loginPopUP();
     }

     jQuery.ajax({
        url: SITE_PATH+'/core/addtofav.php?product_id='+productid,
        cache:false,
        async:false,
        success: function(response){ 
          if(response=='1'){
           var scroller;
           scroller = '<div class="lidiv" onmouseover="showAddTocart(this,\''+name+'\',\''+price+'\')" onmouseout="hideAddTocart(this)">';
           scroller = scroller + '<img src="/assets/images/products/'+productid+'.jpg" />';
           if(stock==1){
              scroller = scroller + '<div class="addtocartbutton addtocarttop63px"><div class="add"><a href="#" onclick="cart_add(\''+productid+'\', \'http://staging.pcgamesupply.com\',\''+producttype+'\')">';
              scroller = scroller + '<div class="inner">Add to Cart</div></a></div>';
           }else{
              scroller = scroller + '<div class="addtocartbutton addtocarttop67px"><div class="add">';
              scroller = scroller + '<div class="inner">Out of stock</div></div>';
           }
           scroller = scroller + '<div class="clearAll"></div><div class="remove">';
           scroller = scroller + '<a href="javascript:void(0)" class="expressdel" alt="'+productid+'" onclick="removeFromList(\''+productid+'\')"><div class="inner" onclick="this.innerHTML=\'Removing..\';">Remove</div></a></div>';
           scroller = scroller + '<div class="clearAll"></div><div class="remove">';
           scroller = scroller + '<a href="javascript:void(0)" onclick="window.location=\'/buy/'+sDetailsLink+'\'"><div class="inner">View Details</div></a></div></div></div>';
          
           jQuery('#scrollers').prepend('<li id="expressproductId'+productid+'">'+scroller+'</li>');
           jQuery('#img'+thisid).attr("src","/assets/images/small_fav_not_active.png");
           jQuery('#'+thisid).css("color","#AAAAAA");
           
           if(login==1){
              jQuery('#fav img').attr("src", "/assets/images/fav_active.png");
              jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
              jQuery('#AddedInFav').show();
              jQuery('#PreviousOrder').hide();

              jQuery('#fav').css("color","#ffffff");
              jQuery('#fav').css("background","#4a4a4a");
              jQuery('#pre').css("color","#020015");
              jQuery('#pre').css("background","#ffffff");


              document.getElementById('activeMenuIdsCon').value ='AddedInFav';
              jQuery('#footerSlideContent').animate({height: '200px'});             
              document.getElementById('leftMenuButton').style.display  = "block";
              document.getElementById('rightMenuButton').style.display = "block";
              jQuery('#showhide').removeClass("hideExpress");
              jQuery('#showhide').addClass("showExpress");
              jQuery('#expressmessagedispaly').html("Added to favorite.").fadeIn();
              window.setTimeout(function(){ jQuery('#expressmessagedispaly').fadeOut() },6000);
           }
       }else{
         if(login==1){
           m_loginPopUP();
         }
       }
    }
  });
    }
}

function removeFromList(productid){
    jQuery.ajax({
        url: SITE_PATH+'/core/removetofav.php?product_id='+productid,
        cache:false,
        async:false,
        success: function(response){
           if(response==1)
           {
               jQuery('#expressmessagedispaly').html("Removed from favorite.").fadeIn();
               window.setTimeout(function(){ jQuery('#expressmessagedispaly').fadeOut() },6000);
           }
           else
           {
               jQuery('#expressmessagedispaly').html("Not removed from favorite.").fadeIn();
               window.setTimeout(function(){jQuery('#expressmessagedispaly').fadeOut() },6000);
           }
        }
   });
}


function closetheexpresscheckoutsec(){
    jQuery('#pre img').attr("src", "/assets/images/recent_deactive.png");
    jQuery('#fav img').attr("src", "/assets/images/fav.png");
    jQuery('#footerSlideContent').animate({height: '0px'}, 'fast', 'linear', function() {
                       document.getElementById('leftMenuButton').style.display = "none";
                       document.getElementById('rightMenuButton').style.display = "none";
    });
    jQuery('#expressmessagedispaly').html('');
    jQuery('#showhide').removeClass("showExpress");
    jQuery('#showhide').addClass("hideExpress");
    open = false;
}
