﻿// JScript File
       
        //var gProductId;
        
        window.onload = function()
        {
            if (window.winOnLoad) window.winOnLoad();
        }
        
        window.onunload = function()
        {
            if (window.winOnUnload) window.winOnUnload();
        }

        var param;
        var urlParam=document.location.search.substring(document.location.search.indexOf("?")+1);
        param=urlParam.split("&");
        var basketCount = 0;
       function loadParams()
       {
            
            // ********************** Omniure ****************************
            //############################################################
            
           
			s.pageName= "Home Page";
           
		    s.prop4="Home Page";
		    //s.prop1=Not set yet - Left name
            //s.prop2=Not set yet - product range
            //s.prop3=Not set yet - product
            s.t();
            
         
            //************************************************************
            //############################################################

            if(urlParam=="")
            {
                if(document.getElementById("ctl00_txtcatId").value!="")
                {
                    urlParam="mid="+document.getElementById("ctl00_txtcatId").value+"&cid="+document.getElementById("ctl00_txtSubCatId").value+"&pid=";
                    urlParam+=document.getElementById("ctl00_txtCurrProd").value;
                    if(document.getElementById("ctl00_txtIsAccId").value!="")
                    {
                        urlParam+="&isAcc=" + document.getElementById("ctl00_txtIsAccId").value;
                    }
                    else
                    {
                        urlParam+="&isAcc=";
                    }
                }
               
            }
            if(urlParam!="")
            {
                param=urlParam.split("&");
            }
           
       }
      
    
   
        function GetSubCategoryProducts(value)
        {
            ListProductsByCategoryId(value);
        }
        
        function ShowProductName(productName)
        {
            if(document.getElementById("spanProductName") != null && productName != "")
            {
                document.getElementById("spanProductName").innerHTML = "&nbsp;/ " + productName;
            }
        }
        
        
        function GetAccesories(subcategoryId)
        {
            var subddArray = document.getElementById("subddIds").value.split('~');
            for(var subddCount = 0; subddCount < subddArray.length; subddCount++)
            {
                try
                {
                    if(subddArray[subddCount] != "subdd" + subcategoryId)
                    {
                        if(document.getElementById(subddArray[subddCount]) == null)
                        {
                            continue;
                        }
                        document.getElementById(subddArray[subddCount]).className = "subnav";
                    }
                }
                catch(ex)
                {
                }
            }
            
            if(document.getElementById("subdd" + subcategoryId) != null)
            {
                document.getElementById("subdd" + subcategoryId).className = "subnav-selected";
            }
                
            xTop(sc1,0);
           
            document.getElementById("hiddenProductId").value=subcategoryId;
            var subCategoryImgIdArray = document.getElementById("subCategoryImgIds").value.split('~');
            
            timingex();  // TO START TIMEOUT TIMER
            if(document.getElementById("dd" + subcategoryId) != null)
            {
                document.getElementById("dd" + subcategoryId).className = "nav-selected";
            }
            
            if(document.getElementById("divresult") != null)
            {
                document.getElementById("divresult").innerHTML="<img alt='loading' class='loader' src='/img/loader.gif'></img>";
            }
            
            Default3.GetAccesories(subcategoryId+"",Callback_GetAccesories);
            
            if(document.getElementById("ddAccessories") != null)
            {
                document.getElementById("ddAccessories").selectedIndex = -1;
                document.getElementById("ddAccessories").value = subcategoryId;
            }
            
            if(document.getElementById("divProductInfo") != null)
            {
                document.getElementById("divProductInfo").innerHTML = "";
            }
            
            if(document.getElementById("spanProductName") != null)
            {
                document.getElementById("spanProductName").innerHTML = "";
            }    
       }
        
        function Callback_GetAccesories(response)
        {
             document.getElementById("categoryType").src="/img/products.gif"
             if(document.getElementById("divresult") != null)
             {
                 document.getElementById("divresult").innerHTML=response.value;   
             }
             
           
            if(response.value.length>2000)
            {
                document.getElementById("upBtn").style.display="block";     
                document.getElementById("dnBtn").style.display="block";
            }
            else
            {
                document.getElementById("upBtn").style.display="none";     
                document.getElementById("dnBtn").style.display="none";
            }

        }
        
         function Callback_ListProductsByCategoryId(response)
         {
            document.getElementById("isAccessory").value=""; 
            document.getElementById("categoryType").src="/img/products.gif"
            document.getElementById("categoryType").style.display="block";
            if(document.getElementById("divresult") != null)
            {
            //move div to the top position
            document.getElementById("divresult").style.top="0";
            
            
                if(response.value=="No Products available.")
                {
                    document.getElementById("divresult").innerHTML="<font style='color:blue'>" + response.value + "</font>";
                    document.getElementById("upBtn").style.display="none";     
                    document.getElementById("dnBtn").style.display="none";                                   
                }
                else
                {
                    document.getElementById("divresult").innerHTML=response.value;
                    if(response.value.length>2000)
                    {
                        document.getElementById("upBtn").style.display="block";     
                        document.getElementById("dnBtn").style.display="block";
                    }
                    else
                    {
                        document.getElementById("upBtn").style.display="none";     
                        document.getElementById("dnBtn").style.display="none";
                    }
                }
            }
                 
              
         }
         
         function showProduct(pId)
         {
			//*************************** Ominiture - Someone Clicked on a product **************************
			//################################################################
	
			
			s.channel= s.prop1;
			//s.prop1= already set
            //s.prop2= already set
            s.prop3= pId.substr(0,pId.indexOf('¬')-1);
            s.prop4='';
            s.pageName = "Shop : " + s.prop1 + ' : ' + s.prop2 + ' : ' + s.prop3;
			
			//Commerce stuff
			s.events="prodView";
			s.products=s.prop2 + ";" + s.prop2 + "(" + s.prop3 + ")";
			
			
			//register the call
            s.tl();
            
            //****************************************************************
            //################################################################
            
            document.getElementById("selProdId").value=pId;
            var productDivIdArray = "";
            if(document.getElementById("productDivIds") != null)
            {
                productDivIdArray = document.getElementById("productDivIds").value.split('~');
            }
            
            for(var divIdCount = 0; divIdCount < productDivIdArray.length; divIdCount++)
            {
            try
                {
                    var imgID = "product" + productDivIdArray[divIdCount].substring(7);
                    document.getElementById(imgID).className = "product-list-item";
                }
                catch(ex)
                {
                }
            }
            if(document.getElementById("product" + pId) != null)
            {
                document.getElementById("product" + pId).className = "product-list-item-selected";
            }
            
            if(document.getElementById("divProductInfo") != null)
            {
                document.getElementById("divProductInfo").innerHTML="<img class='loader-large' alt='loading' src='/img/loader.gif'></img>";
            }
            
            Default3.showProduct(pId+"",Callback_showProduct);
            //gProductId=pId;
            
         }
         
         function AddToBasket(pId)
         {
            //Register Add to basket on Omniture
            Default3.CountBasketItems(Callback_RegisterAddOmnture);
            Default3.AddToBasket(pId+"",Callback_AddToBasket);
         }
         
         function Callback_AddToBasket(response)
         {
            GetCartItemCount();
            if(document.getElementById("divAdded") != null)
            {
                document.getElementById("divAdded").style.display = "block";
                document.getElementById("aAdded").style.display = "block";
                document.getElementById(basketImageId).style.display = "none";
            }
         }
         
         function Callback_RegisterAddOmnture(response)
         {
                if(response.value=="0")
                {
                
                    //open new basket
                    s.events = "scOpen,scAdd";
                    s.products=s.prop2 + ";" + s.prop2 + "(" + s.prop3 + ")";
			        s.tl();
                }
                else
                {
                    //now add the product to the basket
                    s.events="scAdd";
			        s.products=s.prop2 + ";" + s.prop2 + "(" + s.prop3 + ")";
			        s.tl();
                }
         }
         
         function Callback_showProduct(response)
         {
            if(document.getElementById("divProductInfo") != null)
            {
                document.getElementById("divProductInfo").innerHTML=response.value;
            }
            
         }
         
        function ShowSubCategory(divID)
        {
            //**************** Omniture - Someone click the left navigation ***********************
			//######################################################################################
			
			response = Default3.GetCategoryName(divID)
			s.prop1= response.value;
            s.prop2='';
            s.prop3='';
            s.prop4='';
            s.channel= s.prop1;
            s.pageName = "Shop : " + s.prop1;
            s.tl();
            
            //*************************************************
            //#################################################
            
            
            document.getElementById("spanSubSubCategory").innerHTML="";
            document.getElementById("selMainCategory").value=divID.substring(8);
            var categoryDivIdArray = "";
            
            if(document.getElementById("categoryDivIds") != null)
            {
                categoryDivIdArray = document.getElementById("categoryDivIds").value.split('~');
            }
          
            for(var divIdCount = 0; divIdCount < categoryDivIdArray.length; divIdCount++)
            {
                try
                {
                    var imgID = "dt" + categoryDivIdArray[divIdCount].substring(8);
                    if(categoryDivIdArray[divIdCount] != divID)
                    {
                        if(document.getElementById(categoryDivIdArray[divIdCount]) == null)
                        {
                            continue;
                        }
                        document.getElementById(categoryDivIdArray[divIdCount]).style.display = "none";
                        document.getElementById(imgID).className = "nav";
                    }
                }
                catch(ex)
                {
                }
            }
            var imgID = "dt" + divID.substring(8);
             
            if(document.getElementById(divID) != null)
            {
                if(document.getElementById(divID).style.display == "block")
                {
                   document.getElementById(divID).style.display = "none";
                   if(document.getElementById(imgID) != null)
                   {
                        document.getElementById(imgID).className = "nav";
                   }
                }
                else
                {
                   document.getElementById(divID).style.display = "block";
                   if(document.getElementById(imgID) != null)
                   {
                    document.getElementById(imgID).className = "nav-selected";
                   }
                }
            }
            if(document.getElementById("ddCategory") != null)
            {
                document.getElementById("ddCategory").selectedIndex = -1;
                // remove Category text from divID to match the drop-down value
                document.getElementById("ddCategory").value = divID.substring(8);
            }
            if(document.getElementById("divProductInfo") != null)
            {
                document.getElementById("divProductInfo").innerHTML = "";
            }
            
            if(document.getElementById("divresult") != null)
            {
                document.getElementById("divresult").innerHTML = "";
            }
            
            if(document.getElementById("spanProductName") != null)
            {
                document.getElementById("spanProductName").innerHTML = "";
            }
            
            GetSubCategory(divID.substring(8), "fromMenu");
            tmp=window.location+"";
         
            LoadFeaturedProduct(divID.substring(8));
            GetProductRange(divID.substring(8));
          
            ShowProductName("");
        }    
        
        
               
        function ListProductsByCategoryId(subcategoryId)
        {
			//***************************** Omniture - Someone clicked a sub navigation *****************
			//########################################################
		
			response = Default3.GetCategoryName(subcategoryId);
			s.channel= s.prop1;
			//s.prop1= already been set
            s.prop2= response.value;
            s.prop3= '';
            s.prop4='';
            s.pageName = "Shop : " + s.prop1 + ' : ' + s.prop2;
            s.tl();
            
            //********************************************************
            //########################################################
            
            //default the middle column to the top
            
            
             document.getElementById("hiddenProductId").value=subcategoryId;
            var subCategoryImgIdArray = document.getElementById("subCategoryImgIds").value.split('~');
            for(var divIdCount = 0; divIdCount < subCategoryImgIdArray.length; divIdCount++)
            {
                try
                {
                    if(subCategoryImgIdArray[divIdCount] != "dd" + subcategoryId)
                    {
                        if(document.getElementById(subCategoryImgIdArray[divIdCount]) == null)
                            continue;
                        document.getElementById(subCategoryImgIdArray[divIdCount]).className = "nav";
                    }
                }
                catch(ex)
                {
                }
            }
            if(param[3]=="isAcc=")
            {
                //To hide all xsubCategiry    
                if(document.getElementById("xcategoryDivIds") != null)
                {
                    var xcategoryDivIdsArray = document.getElementById("xcategoryDivIds").value.split('~');
                    for(var xcategoryDivIdCount = 0; xcategoryDivIdCount < xcategoryDivIdsArray.length; xcategoryDivIdCount++)
                    {
                        try
                        {
                                if(document.getElementById(xcategoryDivIdsArray[xcategoryDivIdCount]) == null)
                                    continue;
                                document.getElementById(xcategoryDivIdsArray[xcategoryDivIdCount]).style.display = "none";
                        }
                        catch(ex)
                        {
                        }
                    }
                }
            }   
                
            if(param.length==0)
            {
            
                timingex();  // TO START TIMEOUT TIMER
             
             }
            if(document.getElementById("dd" + subcategoryId) != null)
            {
                document.getElementById("dd" + subcategoryId).className = "nav-selected";
            }
            if(document.getElementById("xCategory" + subcategoryId) != null)
            {
                getAccessoriesCmb(subcategoryId);
                document.getElementById("xCategory" + subcategoryId).style.display = "block";
            }
            if(document.getElementById("divresult") != null)
            {
                document.getElementById("divresult").innerHTML="<img alt='loading' class='loader' src='img/loader.gif'></img>";
                Default3.ListProductsByCategoryId(subcategoryId+"",Callback_ListProductsByCategoryId);
            }
            if(document.getElementById("ddSubCategory") != null)
            {
                document.getElementById("ddSubCategory").selectedIndex = -1;
                document.getElementById("ddSubCategory").value = subcategoryId;
            }
           
            if(document.getElementById("spanProductName") != null)
                document.getElementById("spanProductName").innerHTML = "";
            
            ShowProductName("");
            
        }
        
        function ShowxSubCategory(divID, superDivId)
        {
         
            getAccessoriesCmb(divID);
            document.getElementById("isAccessory").value=divID;
            //To hide all menu except selected    
            var categoryDivIdsArray1 = document.getElementById("categoryDivIds").value.split('~');
            for(var categoryDivIdCount = 0; categoryDivIdCount < categoryDivIdsArray1.length; categoryDivIdCount++)
            {
                try
                {
                    if(categoryDivIdsArray1[categoryDivIdCount] != "Category" + superDivId)
                    {
                        if(document.getElementById(categoryDivIdsArray1[categoryDivIdCount]) == null)
                            continue;
                        document.getElementById(categoryDivIdsArray1[categoryDivIdCount]).style.display = "none";
                    }
                }
                catch(ex)
                {
                }
            }           
            if(superDivId!=0)
            {
                if(document.getElementById("Category" + superDivId) != null)
                    document.getElementById("Category" + superDivId).style.display = "block";
                //End
                
                //To hide all xsubCategory except selected      
                var xcategoryDivIdsArray1 = document.getElementById("xcategoryDivIds").value.split('~');
                for(var xcategoryDivIdCount = 0; xcategoryDivIdCount < xcategoryDivIdsArray1.length; xcategoryDivIdCount++)
                {
                    try
                    {
                        if(xcategoryDivIdsArray1[xcategoryDivIdCount] != "xCategory" + divID)
                        {
                            if(document.getElementById(xcategoryDivIdsArray1[xcategoryDivIdCount]) == null)
                                continue;
                            document.getElementById(xcategoryDivIdsArray1[xcategoryDivIdCount]).style.display = "none";
                        }
                    }
                    catch(ex)
                    {
                    }
                }
            }
            if(document.getElementById("xCategory" + divID) != null)
                document.getElementById("xCategory" + divID).style.display = "block";
            //To change selection     
            var subCategoryImgIdsArray1 = document.getElementById("subCategoryImgIds").value.split('~');
            for(var subCategoryImgCount = 0; subCategoryImgCount < subCategoryImgIdsArray1.length; subCategoryImgCount++)
            {
                try
                {
                    if(subCategoryImgIdsArray1[subCategoryImgCount] != "dd" + divID)
                    {
                        if(document.getElementById(subCategoryImgIdsArray1[subCategoryImgCount]) == null)
                            continue;
                        document.getElementById(subCategoryImgIdsArray1[subCategoryImgCount]).className = "nav";
                    }
                }
                catch(ex)
                {
                }
            }
            
            if(document.getElementById("dd" + divID) != null)
                document.getElementById("dd" + divID).className = "nav-selected";
              
             if(document.getElementById("divresult") != null)
                document.getElementById("divresult").innerHTML="";
                  
            if(document.getElementById("ddSubCategory") != null)
            {
                document.getElementById("ddSubCategory").selectedIndex = -1;
                document.getElementById("ddSubCategory").value = divID;
            }
        }    
        
        function GetProductRange(cId)
        {
            //alert("GetProductRange");
            if(cId!=237)
            {
                document.getElementById("upBtn").style.display="none";     
                document.getElementById("dnBtn").style.display="none"; 
                document.getElementById("divProductInfo").innerHTML="<img alt='loading' class='loader' src='img/loader.gif'></img>";
                Default3.GetProductRange(""+cId,CallBack_GetProductRange);
            }
            else
            {
                 document.getElementById("categoryType").style.display="none";
                if(document.getElementById("divresult").innerHTML!="<p class='hometext'>Please Choose a category of accessories from the navigation on the left & above.</p>")
                {
                    document.getElementById("upBtn").style.display="none";     
                    document.getElementById("dnBtn").style.display="none"; 
                    document.getElementById("divresult").innerHTML="<p class='hometext'>Please Choose a category of accessories from the navigation on the left & above.</p>";
                }
                else
                {
                    document.getElementById("divresult").innerHTML="";
                }
            }
        }
        
        function CallBack_GetProductRange(response)
        {
            document.getElementById("categoryType").src="/img/range.gif"
            document.getElementById("categoryType").style.display="block";
             if(response.value.length>2000)
            {
                document.getElementById("upBtn").style.display="block";     
                document.getElementById("dnBtn").style.display="block";
            }
            else
            {
                document.getElementById("upBtn").style.display="none";     
                document.getElementById("dnBtn").style.display="none";
            }
            document.getElementById("divresult").innerHTML=response.value;
        }
        
        function LoadFeaturedProduct(cId) // cId Category ID
        {
            document.getElementById("divProductInfo").innerHTML="<img alt='loading' class='loader' src='img/loader.gif'></img>";
            Default3.LoadFeaturedProduct(""+cId,CallBack_LoadFeaturedProduct);
        }
        
        function CallBack_LoadFeaturedProduct(response)
        {
            if(response.value!=null)
                document.getElementById("divProductInfo").innerHTML=response.value;
            else
                document.getElementById("divProductInfo").innerHTML;
        }
       
        function Callback_getProductsFromURL(response)
        {
            if(document.getElementById("divresult") != null)
                document.getElementById("divresult").innerHTML=response.value;
        }
        
        function GetProductID(val)
        {
            //alert("hello");
            response=Default3.GetProductID(""+val);
            return response.value;
        }
    
        function getProductFromURL()
        {
            url = document.URL.split('/');
            prodName = url[url.length-1];
            prodName = prodName.replace("%20"," ");
            if(prodName != "Home.aspx")
            {
                if(document.getElementById("hiddenProductId") != null)
                    document.getElementById("hiddenProductId").value = GetProductID("" + prodName);
            }
        }
      
        
        function GetCartItemCount()
        {
            Default3.CountBasketItems(Callback_CountBasketItems);
           
        }
        
        function Callback_CountBasketItems(response)
        { 
            imgtag=document.getElementById("hypBasket").innerHTML.substring(0,document.getElementById("hypBasket").innerHTML.indexOf(">")+1);
            if(response.value!="0")
                document.getElementById("hypBasket").innerHTML=imgtag + "Your Basket <b><font style='color:red'>(" + response.value +")</font></b>";
        }
        
        function SwapImage(obj, imageId)
        {
           //fadeOutInit();
           tmpSrc=obj.src.replace("50","250");
           tmpID=obj.id.substring(obj.id.indexOf("_")+1);
           for(i=0;i<document.getElementById("product-details").getElementsByTagName("div").length;i++)
           {
                if(document.getElementById("product-details").getElementsByTagName("div")[i].id.substring(0,4)=="tdiv")
                {
                    document.getElementById("product-details").getElementsByTagName("div")[i].className="product-thumb-area";
                }
           }
           document.getElementById("tdiv_" + tmpID).className="product-thumb-area selected";
           if(document.getElementById(imageId).src!=tmpSrc)
                fadeOutInit(tmpSrc);
        }
        
        
       
       function getAccessoriesCmb(cId)
       {
            Default3.getAccessoriesCmb("" + cId,Callback_getAccessoriesCmb);
       }
       
       function Callback_getAccessoriesCmb(response)
       {
            document.getElementById("spanSubSubCategory").innerHTML=  response.value;
       }
       
       
       /*//////////////////// Scott flash stuff /////////////////////////////*/
       
       
       
//       function updateFlash(subcategoryId) {
//       // Convert subCatID to what flash uses:
//            var category;
//            //alert(subcategoryId);
//                
//            if (subcategoryId == "Category19")
//	            category = "Digital_Cameras";
//            else if (subcategoryId == "Category237")
//	            category = "Accessories";
//            else if (subcategoryId == "Category22")
//                category = "Label_Products";
//            else if (subcategoryId == "Category26")
//                category = "Watches";
//            else if (subcategoryId == "Category18")
//                category = "Calculators";
//            else if (subcategoryId == "Category23")
//                category = "Musical_Instruments";
//            else alert('An error has occured. Please try again later');
//            makeCall(category);   
//        }
//        
//        function makeCall (str)
//        {
//            if(FlashCall) {
//        // Actually communicate with flash - 1
//                thisMovie("carnabyst").g (str);
//            }
//        
//        } 
//        
//        function thisMovie (movieName) {
//        // Actually communicate with flash - 2
//        
//            if (navigator.appName.indexOf("Microsoft") != -1) {
//        	
//        	    
//                return window[movieName]
//            }
//            else {

//                return document[movieName]
//            }
//        }
//        
//        function chooseRange (str, id) 
//        {
//            var xcategoryDivIdsArray = document.getElementById("xcategoryDivIds").value.split('~');
//            for(var xcategoryDivIdCount = 0; xcategoryDivIdCount < xcategoryDivIdsArray.length; xcategoryDivIdCount++)
//            {
//                try
//                {
//                        if(document.getElementById(xcategoryDivIdsArray[xcategoryDivIdCount]) == null)
//                            continue;
//                        document.getElementById(xcategoryDivIdsArray[xcategoryDivIdCount]).style.display = "none";
//                }
//                catch(ex)
//                {
//                }
//            }
//            ListProductsByCategoryId(id);
//        }
//               
//        function chooseProduct(str, id, productID) {
//            showProduct(productID + "¬" + id);
//        }
//        function gotoSection (str)
//        {
//	        var category;
//            if (str == "Digital_Cameras")
//   		        category = "Category19";
//            else if (str == "Accessories")
//		        category = "Category237";
//            else if (str == "Label_Products")
//                category = "Category22";
//            else if (str == "Watches")
//                category = "Category26";
//            else if (str == "Calculators")
//                category = "Category18";
//            else if (str == "Musical_Instruments")
//                category = "Category23";
//            else
//		        return null;
//            
//	        ShowSubCategory (category);   
//        }
//        
//        function resetHtmlMenu ()
//        {
//            RenderCategoryMenuItems();
//            //loadParams();
//        }
//       //
