

var isMember = $.cookie('sli_user');
var catCount=0;
function startCatalog()
{


   /*

   $("#nav a").each(function(){
      var href = $(this).attr('href');
      href = href.replace(/slidemo/,'catalogtest');
      href = href.replace(/coffee\//,'');
      href = href.replace(/tea/,'teas');
      $(this).attr('href',href);
   });
*/

   var crumb = $(".catalogCookie").html();

   $.cookie('crumb',crumb,{ expires: 7, path: '/', domain: '.bocajava.com'});

   $("a.link_paging").click(function(){
        if(catCount==0) $.history.init(loadPageHistory);
        $.history.load(this.href.replace(/^.*#/, ''));
        catCount++;
        return false;
   })
};


function loadPageHistory(hash)
{

    if(hash=='') hash=0;
    loadPage($('.pagelink_'+hash));
    // do stuff that loads page content based on hash variable
}

function loadPage(el)
{


    var href = $(el).attr('href');
       var hrefS = href.split("#");
       var page  = hrefS[0];
       page = page.replace(/http:\/\//,'');
       var pageS = page.split('/');
       var s=1;
       if(pageS[0].match(/localhost/) || pageS[0].match(/10.1.1/)) s=2;
       var key = '';
       var value = '';
       var newurl = '';
       for(i=s;i<pageS.length;i++)
       {
           newurl+="/" + pageS[i];
       }

       var num = hrefS[1];

       var baseurl = 'http://catalog.bocajava.com/catalog';
       if(pageS[0].match(/qa-catalog/)) baseurl = 'http://qa-catalog.bocajava.com/catalog';
       if(pageS[0].match(/localhost/)) baseurl = 'http://catalog:8888/catalog';


       var prevCount = parseInt(num)-12;
       var nextCount = parseInt(num)+12;


       $(".paging_start").html(parseInt(num)+1);
       $(".paging_end").html(parseInt(nextCount));


       if(num == 0) $('.paging_prev').hide();
       else $('.paging_prev').show();

       if($('.pagelink_'+num).next().html() =='&gt;') {
           $('.paging_next').hide();
           $(".paging_end").html($(".paging_total").html());
       }
       else $('.paging_next').show();

       var nextRef = $('.paging_next').attr('href');
       nextRef = nextRef.replace(/-?\d{1,3}\#-?\d{1,3}/,nextCount+'#'+nextCount);
       $('.paging_next').attr('href',nextRef);

       if(num>0)
           {
        var prevRef = $('.paging_prev').attr('href');
       prevRef = prevRef.replace(/-?\d{1,3}\#-?\d{1,3}/,prevCount+'#'+prevCount);
       $('.paging_prev').attr('href',prevRef);
          }
       $('.link_paging').removeClass('link_active');
       $('.pagelink_'+num).addClass('link_active');



       var pageNext = $('.paging_next').attr('href');
       jQuery.ajax({
          url: baseurl + "/ajaxBuildProducts"+newurl,
          dataType:'html',
          type: 'POST',
          success: function(data){
            $(".p_sli").html(data);
            resetCatalog();
          }});
}

function doAjax(p,options)
{
  $.ajax({
   type: "POST",
   url: options.url,
   data: p,
   dataType:options.dataType,
   success: function(data){
     if($.isFunction(options.callback)) options.callback(data);
   }
 });

}

function resetCatalog()
    {

        $(".anchors").show();



        $(".bj_buynow").bt({
                               fill: '#e3dbb6',
                              strokeStyle: '#000000',
                              shadow: true,
                            shadowOffsetX: 2,
                            shadowOffsetY: 2,
                            shadowBlur: 3,
                            shadowColor: 'rgba(0,0,0,.6)',
                            shadowOverlap: false,
                            noShadowOpts: {strokeStyle: '#B7B7B7', strokeWidth: 2},
                            positions: ['right', 'top'],
                              spikeLength: 10,
                              spikeGirth: 14,
                              padding: 8,
                              cornerRadius: 2,
                              cssStyles: {
                                fontFamily: '"lucida grande",tahoma,verdana,arial,sans-serif',
                                fontSize: '11px'},
                              trigger: 'none',
                              closeWhenOthersOpen:true,
                              preShow: function(box){


                              },
                              contentSelector: function(){
                                var html = '<div class="closemodal" style="position:absolute;top:5px;right:5px;width:20px;cursor:pointer">x</div>';
                                var memberOnly = 'N';
                                var form = $(this).parents('form');
                                var formId = $(this).parents('form').attr('id');
                                var ptitle = form.find('.product_title');
                                var title = ptitle.html();
                                var productID = form.find('input[name=\'productId\']').val();
                                var productTypeID = form.find('input[name=\'producttypeid\']').val();
                                if($("#"+formId).children("input[name='memberOnly']").val()!=null){ memberOnly = $("#"+formId).children("input[name='memberOnly']").val();}

                                if(productTypeID==1 || productTypeID==15) html += '<ul class="fh"><li class="in"><label for="grind">Grind:</label><select name="productOtherAttr" id="productOtherAttr_'+formId+'" style="font-size:93%;"><option value="WB">Whole Bean</option><option value="UG">Universal Grind</option></select></li></ul>';
                                if(productTypeID==5) html += '<ul class="fh"><li class="in"><label for="grind">Grind:</label><select name="productOtherAttr" id="productOtherAttr_'+formId+'" style="font-size:93%;"><option value="WB">Whole Bean</option><option value="ES">Espresso Grind</option></select></li></ul>';
                                html+='<ul class="fh"><li><label for="quantity">Quantity:</label><input type="text" name="qty" id="qty_'+formId+'" value="1" style="font-size:93%;" /></li></ul>';
                                if((memberOnly=='Y' && isMember == 'club') || memberOnly!='Y')
                                {
                                     html += '<div style="padding:10px 0px 10px 0px;overflow:hidden;zoom:1;margin-right:25px;"><div class="right"><a href="#" class="gbtn sm clickbtn addtocart" id="addToCart_'+formId+'"><span><span>add to cart</span></span></a> ';
                                }
                                else if(memberOnly=='Y')
                                {
                                    html += '<div class="ct"><div class="left mr1 hdslogo2" style="overflow:hidden"></div> <div class="left mt2 size2" style="width:160px;"><a href="/homedelivery/index.jsp" class="color2">Click here</a> to learn how to order this coffee. <a href="http://www.bocajava.com/myAccount.do" id="doModalLogin" class="doDialog" rel="modal_login">Already a member?</div>';
                                }

                                 if(isMember == 'club' && (productTypeID==1 || productTypeID==5 || productTypeID==8 || productTypeID==29 || productTypeID==45 || productTypeID==31) && (productID!=7717 && productID!=7732 && productID!=7718&&productID!=7719 && productID!=7720 && productID!=7724 && productID!=7733 && productId!=734)) html+='<a href="#" class="gbtn sm clickbtn addtoclub" id="addToClub_'+formId+'"><span><span>add to service</span></span></a>';

                                 return html;

                              },
                              showTip:function(box){
                                $(box).fadeIn(500);
                              },
                               hideTip: function(box, callback) {
                                $(box).fadeOut(500);

                        },
                        postShow:function(box){
                            var el = this;
                            $(box).find('.closemodal').click(function(){
                                 $(el).btOff();
                             });

                              var baseform = $(el).parents('form');




                             $('#doModalLogin').unbind().click(function(){
                                 var id = $(el).attr('rel');
                                 $("#"+id).overlay().load();
                                 return false;
                             });


                              $(box).find(".addtoclub").click(function(event){
                                                 buyNow(el,box,'club');
                                                 return false;
                                            });

                                var s = new seasonal;
                                baseform.find("input[name='isseasonal']").each(function(){

                                   var $this = el;
                                   if($($this).val() == 'Y')
                                   {

                                       $(box).find(".addtoclub").unbind().click(function(event){
                                           var mainform = $(el).parents('form');
                                           s.run(mainform,true,'sli'); //api is global, sli is type to determine final action.. in this case write into the form and close
                                           buyNow(el,box,'');
                                           return false;
                                       });




                                   }


                               });


                                $(box).find(".addtocart").click(function(){

                                           buyNow(el,box,'addToCart');
                                           return false;
                                });
                        },
                            width: 200
                            });

                             $(".bj_buynow").live('click',function(){
                                 $(this).btOn();
                                 return false;
                             })

        function buyNow(el,box,type)
        {
            var page = getPage();
            var p = {};
            var mainform = $(el).parents('form');



            var id = mainform.attr('id');
            var idS = id.split('_');
            p['productId'] = idS[1];
            p['action'] = type;

            var ptitle = mainform.find('.product_title');
            var title = ptitle.html();
            if(page.match(/showproductdetail/i) !=null || page.match(/addorcustomize/)!=null){
                p['crossUpsell']= true;
            }
            else p['crossUpsell'] = false;

            $(box).find(':input').each(function(){
                var key = $(this).attr('name');
                var value = $(this).val();

                p[key] = value;

            })

             var d = getDomain();
             var url= d+"addToCartAjax.do";

             debug(url)
            $.ajax({
                dataType:'jsonp',
                type:'GET',
                url: url,
                data:p,
                success:function(data){
                    var product = '<b>'+title+'</b>';
                    $(box).find('.closemodal').trigger('click');
                     var d = getDomain()+'viewCart.do';
                     catalogModal(p['product_id'],title,d,type);
                     var locale = document.location.href;
                     if(locale.match(/viewCart\.do/)) document.location.href = locale;
                    loadCartModal();

                    //page tracking
                    var value = '';
                    var id =  mainform.find('h4').html();

                    var action = 'Add to Cart';



                    var category = 'Catalog';
                    if($(el).parents('div.selection').find("input[name='crossUpsell']").val()=="true") {
                        category = 'Cross-sell';
                        value = $("#f_addtocart input[name='productId']").val();
                    }



                    gaPagetracker(category,action,title,value);

                },
                beforeSend: function (XMLHttpRequest) {
                             ajaxicator(el)
                        },
                        complete: function (XMLHttpRequest) {
                              ajaxicator(el, 'off')
                        }
            })

        }
/*
        function submitAction(el){
              var product = '<b>'+title+'</b>';


               pidS = ot.productId.split('_');
               var prodid = pidS[3];

                $(ot.modal).hide().remove();
                var locale = document.location.href;

               // message = message.replace(/%s/,product);
                var d = getDomain()+'viewCart.do';



                catalogModal(prodid,product,d);


               // addNotice('You have added '+product+' to your <a href="'+d+'" class="color3">cart</a>!');
                if(locale.match(/viewCart\.do/)) document.location.href = locale;
		loadCartModal();

                //page tracking
                var value = '';
                var id =  $(ot.modal).find('h4').html();

                var action = 'Add to Cart';



                var category = 'Catalog';
                if($(a).parents('div.selection').find("input[name='crossUpsell']").val()=="true") {
                    category = 'Cross-sell';
                    value = $("#f_addtocart input[name='productId']").val();
                }



                gaPagetracker(category,action,title,value);
        }


/*
	$('.bj_buynow').omnitip({
	extraClass:'',
	travel:true,
	travelDistance:50,
	animate:true,
	animationSpeed: 800,
	event:'click',
	easing:true,
	position:'top',
	dataType:'jsonp',
	submitPath:url,
        submitElement: '.clickbtn',
	submitSuccessMessage:'%s has been added to your <a href="'+d+'/viewCart.do">cart</a>!',
        postBuildCallback: function(a,ot){

            var baseform = $(a).parents('form');
            var ready = true;



             $('#doModalLogin').unbind().click(function(){
                 var id = $(this).attr('rel');
                 $("#"+id).overlay().load();
                 return false;
             });



                var s = new seasonal;
                baseform.find("input[name='isseasonal']").each(function(){

                   var $this = this;
                   if($($this).val() == 'Y')
                   {

                       $(".addtoclub").click(function(event){
                           var mainform = $(this).parents('form');
                           event.stopImmediatePropagation();
                           s.run(mainform,true,'sli'); //api is global, sli is type to determine final action.. in this case write into the form and close
                           return false;
                       });
                   }
               });

               return ready;

        },
	submitCallback: function(a,ot,title){ //callback function for successfull form submission

               // var message = $(ot.modal + ' .omnitip_body_inner').html();
              //  alert($(ot.modal + ' .omnitip_body_inner').html())
                var product = '<b>'+title+'</b>';


               pidS = ot.productId.split('_');
               var prodid = pidS[3];

                $(ot.modal).hide().remove();
                var locale = document.location.href;

               // message = message.replace(/%s/,product);
                var d = getDomain()+'viewCart.do';



                catalogModal(prodid,product,d);


               // addNotice('You have added '+product+' to your <a href="'+d+'" class="color3">cart</a>!');
                if(locale.match(/viewCart\.do/)) document.location.href = locale;
		loadCartModal();

                //page tracking
                var value = '';
                var id =  $(ot.modal).find('h4').html();

                var action = 'Add to Cart';



                var category = 'Catalog';
                if($(a).parents('div.selection').find("input[name='crossUpsell']").val()=="true") {
                    category = 'Cross-sell';
                    value = $("#f_addtocart input[name='productId']").val();
                }



                gaPagetracker(category,action,title,value);


	},
	buildContent: function(a, ot) //function to insert application specific data other than basic text into the tooltip
	{

		var form = $(a).parents('form');
		var formId = form.attr('id');

		var img = $('#'+formId+' .mainlink').html();

		var title = $('#'+formId+' .product_title').html();

		var price = $('#'+formId+' input[name=\'price\']').val();

                var cross =  $('#'+formId+' input[name=\'crossUpsell\']').val();


        var sale = $('#'+formId+' li.sale').html();
        if(sale!=null) price = sale;
		var productID = $('#'+formId+' input[name=\'productId\']').val();
		var productTypeID = $('#'+formId+' input[name=\'producttypeid\']').val();

                var html = '<div class="omnitip_img">'+img+'</div><div class="omnitip_text" ><h4>'+title+'</h4>';
                html+= '<form id="omnitip_form_'+formId+'"><input type="hidden" name="productId" value="'+productID+'" />';
                if(cross=="true"){
                    html += '<input type="hidden" name="crossUpsell" value="'+cross+'" />';
                }
                html+='<ul class="fh"><li class="in"><label>Price:</label><div class="listprice">'+price+'</div></li><li class="in"><label for="quantity">Quantity:</label><input type="text" name="qty" id="qty_'+formId+'" value="1" style="font-size:93%;" /></li></ul>'



		//only load for coffee
		if(productTypeID==1 || productTypeID==15) html += '<ul class="fh"><li class="in"><label for="grind">Grind:</label><select name="productOtherAttr" id="productOtherAttr_'+formId+'" style="font-size:93%;"><option value="WB">Whole Bean</option><option value="UG">Universal Grind</option></select></li></ul>';
		//load for espresso
		if(productTypeID==5) html += '<ul class="fh"><li class="in"><label for="grind">Grind:</label><select name="productOtherAttr" id="productOtherAttr_'+formId+'" style="font-size:93%;"><option value="WB">Whole Bean</option><option value="ES">Espresso Grind</option></select></li></ul>';

        if($("#"+formId).children("input[name='memberOnly']").val()!=null)
        {
            var memberOnly = $("#"+formId).children("input[name='memberOnly']").val();
//debug(memberOnly);
            if((memberOnly=='Y' && isMember == 'club') || memberOnly!='Y')
            {
                 html += '<div style="padding:10px 0px 10px 0px;overflow:hidden;zoom:1;margin-right:25px;"><div class="right"><a href="#" class="gbtn sm clickbtn" id="addToCart_'+formId+'"><span><span>add to cart</span></span></a> ';
            }
            else if(memberOnly=='Y')
            {
                html += '<div class="ct"><div class="left mr1 hdslogo2" style="overflow:hidden"></div> <div class="left mt2 size3" style="width:180px;"><a href="/homedelivery/index.jsp" class="color2">Click here</a> to learn how to order this coffee. Already a member? <a href="#" id="doModalLogin" class="doModal" rel="modal_login">Log-in</a>';
            }
        }
        else
        {
             html += '<div style="padding:10px 0px 10px 0px;overflow:hidden;zoom:1;margin-right:25px;"><div class="right"><a href="#" class="gbtn sm clickbtn" id="addToCart_'+formId+'"><span><span>add to cart</span></span></a> ';
        }



        if(isMember == 'club' && (productTypeID==1 || productTypeID==5 || productTypeID==8 || productTypeID==29 || productTypeID==45 || productTypeID==31)) html+='<a href="#" class="gbtn sm clickbtn addtoclub" id="addToClub_'+formId+'"><span><span>add to service</span></span></a>';

     html += '</div></div></form>';
		html += '</div>';
		return html;
	},
	loadingImagePath:'/resources/images/2008/ajax-loader.gif'
});
*/





 $('.bj_more').bt({
                            fill: '#ffffff',
                              strokeStyle: '#666666',
                              shadow: true,
                            shadowOffsetX: 1,
                            shadowOffsetY: 1,
                            shadowBlur: 3,
                            shadowColor: 'rgba(0,0,0,.9)',
                            shadowOverlap: false,
                            noShadowOpts: {strokeStyle: '#B7B7B7', strokeWidth: 2},
                            positions: ['top', 'bottom'],
                              spikeLength: 10,
                              spikeGirth: 10,
                              padding: 8,
                              cornerRadius: 2,
                              cssStyles: {
                                fontFamily: '"lucida grande",tahoma,verdana,arial,sans-serif',
                                fontSize: '11px'},
                              trigger: 'hover',
                              preShow: function(box){


                              },
                              contentSelector: function(){

                                  return $(this).attr('title');
                              },
                              showTip:function(box){
                                $(box).fadeIn(500);
                              },
                               hideTip: function(box, callback) {
                                $(box).fadeOut(500);

                        },
                              width: 200
});

    }



function catalogModal(productId,productName,cartPath,type)
{

    var title = 'YOU HAVE ADDED <BR> <b>'+productName+'</b> <BR><BR> <a style="color: #ffffff; text-decoration: none;" href="'+cartPath+'" class="color3">VIEW CART</a> &nbsp | &nbsp <a style="color: #ffffff; text-decoration: none;" href="checkout.do" class="color3">CHECKOUT</a>';
    if(type=='club') title= 'You have added <b>'+productName+'</b> to your <a style="color: #ffffff; text-decoration: none;" href="https://www.bocajava.com/myAccount.do" class="color3">club selections</a>!';

    addNotice(title);


    /*
    $("#atc_dialog").dialog({
        modal:true,
        title:title,
        width:800,
        height:350,
        resizable:false,
        open:function(){
            var $this = this;
            $(".ui-widget-overlay").click(function(){
                $(".ui-dialog-titlebar-close").trigger('click');
            })
                    var p = {};

                    var d = getDomain();

                    $.ajax({
                        data: p,
                        type:'post',
                        dataType:'html',
                        url: 'http://qa-catalog.bocajava.com/catalog/related/'+productId,
                        success: function(data){

                             $(".ui-dialog-content .loading").hide();
                             $(".ui-dialog-content .loading").after('<div class="related"><p>People who purchased '+productName+' also purchased:</p><div class="p_sli pt2" style="font-size:84%;">'+data+'</div></div>');

                    },
                        complete: function(){},
                        error:function(XMLHttpRequest, textStatus, errorThrown){

                        }
                    });
        },
        close: function(){
            $(".ui-dialog-content .loading").show();
             $(".ui-dialog-content .loading").next().remove();
           $("#atc_dialog").dialog('destroy');

        }
    })
       */


}

