
        var NOOF_PRODUCTROW_PER_PAGE = 4;
        var NOOF_PRODUCT_PER_ROW = 4;
        var NOOF_PRODUCTS_PER_PAGE = 16;
        var DETAILARROWIMAGE = ""; 
        var NO_OF_PAGES;
        var CURRENT_PAGENO = 1;
        var SHOW_PAGING = false;
       
        
		function BindProducts(pageno) {
			
	        if(species=="cat")
	        	DETAILARROWIMAGE = "&nbsp;<img src='/en_us/data_root/_images/global/cat_arrow_2.gif' alt='' />";
	        else
	        	DETAILARROWIMAGE = "<img src='/en_us/data_root/_images/global/green_arrow.gif' alt='' />";
  		        	
            var rowno, PRODUCTID, TITLE, SUBTITLE1, SUBTITLE2, DESCRIPTION, PRODIMGURL, ALTTEXT,PRODUCTURL;
            var LIFESTAGE, FOODTYPE, SPECIALCONCERNS, PRODUCTFORMULAS, DOGSIZE;
            var productList = "";
		    var paginglist = "";
		    
		    // paging
		    var paginglist = "";
		    
			if(filteredproductcount > 16 || pageFrom==='browseBy') 
				SHOW_PAGING = true;
			else{
				SHOW_PAGING = false;
				document.getElementById("divproductpagingbottom").innerHTML = "";
		        document.getElementById("divproductpagingtop").innerHTML = "";
			}
		    // paging ShowPaging();
		    if (filteredproductcount == 0) {
		       productList = "<div class='productcontainer'>"+ ERRMSG_NO_PRODUCT_FOUND + "</div>";
		        paginglist = "";
		       document.getElementById("divproductpagingbottom").innerHTML = paginglist;
		       document.getElementById("divproductpagingtop").innerHTML = paginglist;
		    }
		    else {
		        var startno = 0, endno = filteredproductcount;
		
		        if (SHOW_PAGING) {
		            NOOF_PRODUCTS_PER_PAGE = NOOF_PRODUCTROW_PER_PAGE * NOOF_PRODUCT_PER_ROW;
		    		//alert('else   '+NOOF_PRODUCTS_PER_PAGE);
		            NO_OF_PAGES = parseInt(filteredproductcount / (NOOF_PRODUCTS_PER_PAGE));
		           
		            if ((filteredproductcount % NOOF_PRODUCTS_PER_PAGE) != 0)
		                NO_OF_PAGES++;
		
		            // PAGING                        
		            if (pageno == "prv") {
		                if (CURRENT_PAGENO > 1)
		                    CURRENT_PAGENO = Number(CURRENT_PAGENO) - 1;
		            }
		            else if (pageno == "nxt") {
		                if (CURRENT_PAGENO < NO_OF_PAGES)
		                    CURRENT_PAGENO = Number(CURRENT_PAGENO) + 1;
		            }
		            else
		                CURRENT_PAGENO = pageno;
		
		            pageno = CURRENT_PAGENO;
		            startno = (NOOF_PRODUCTS_PER_PAGE) * (CURRENT_PAGENO - 1);
		            if (CURRENT_PAGENO == NO_OF_PAGES)
		                endno = startno + (filteredproductcount % (NOOF_PRODUCTS_PER_PAGE));
		            else
		                endno = startno + (NOOF_PRODUCTS_PER_PAGE);
		            // PAGING
		            paginglist += "<div class='pagination'><span class='pagi_text_left'>" + TEXT_PAGINATION_SHOWING + " <strong>" + (startno + 1) + "-" + (endno) + "</strong> " + TEXT_PAGINATION_OF + " <strong>" + filteredproductcount + "</strong></span>";
		          
		           
		            if (NO_OF_PAGES > 1) {
		                if (CURRENT_PAGENO > 1)
		                    paginglist += "<a id='aPrv' style='cursor:pointer;' onclick=\"BindProducts('prv');\">" + TEXT_PREVIOUSPAGE + " </a> | ";
		                for (row = 1; row <= NO_OF_PAGES; ++row) {
		                    if (row == CURRENT_PAGENO)
		                        paginglist += "<a onclick=\"BindProducts('" + row + "');\" title='" + row + "' class='pagination_inactive'> " + row + "</a> | ";
		                    else
		                        paginglist += "<a style='cursor:pointer;'  onclick=\"BindProducts('" + row + "');\" title='" + row + "' class='pagination_active'> " + row + "</a> | ";
		                }
		                if (CURRENT_PAGENO < NO_OF_PAGES)
		                    paginglist += "<a id='aNxt' style='cursor:pointer;' onclick=\"BindProducts('nxt');\">" + TEXT_NEXTPAGE + " </a>";
		            }
		            paginglist += "</div>";
		            document.getElementById("divproductpagingtop").innerHTML = paginglist;
		            document.getElementById("divproductpagingbottom").innerHTML = paginglist;
		            if (paginglist.length > 5) {
		                paginglist += "<div class=\"pagination\"></div>";
		            }
		           // document.getElementById("divproductpagingtop").innerHTML = paginglist;
		        }
		        //alert(NO_OF_PAGES); alert(paginglist);
		        // PAGING                
				 	
		        for (row = startno; row < endno; ++row) {
		            // FILL PRODUCT DETAILS
		            //alert(Product_Array[Filtered_Product_Array[row]]);
		
		            PRODUCTID = Product_Array[Filtered_Product_Array[row]]["pid"];
		            TITLE = Product_Array[Filtered_Product_Array[row]]["title"];
		            SEOFRIENDLY_NAME = Product_Array[Filtered_Product_Array[row]]["iamsseofriendlyname"];
		            PRODIMGURL = Product_Array[Filtered_Product_Array[row]]["prodimgurl"];
		            ALTTEXT = Product_Array[Filtered_Product_Array[row]]["alttext"];
		            DESCRIPTION = Product_Array[Filtered_Product_Array[row]]["description"];
		            PRODUCTURL  = Product_Array[Filtered_Product_Array[row]]["producturl"];
		
		            if ((row % 4) == 0)            // IF 0,4,8,12 ETC... START NEW ROW
		            {
		            	
		            	productList += "<ul class='product-list'>";
		            	//alert('ProductList    :'+productList);
		                //alert(productList+'----In row--4');
		            }
		             // BIND PRODUCT START
		            productList += "<li><div class='productcontainer' onclick='window.location.href =\""+PRODUCTURL+"\"' alt='" + ALTTEXT + "' title='" + ALTTEXT + "'>";
		            productList += "<img src='" + PRODIMGURL + "' alt='"+ALTTEXT+"' width='118' height='161'/>";
		            productList += "<a href='" + PRODUCTURL + "'  alt='" + ALTTEXT + "' title='" + ALTTEXT + "'><strong>" + TITLE +"</strong></a>";                    
		            productList += "<div class='hovercontent'><div><a href='" + PRODUCTURL + "'  alt='" + ALTTEXT + "' title='" + ALTTEXT + "'><strong>" + TITLE +"</strong></a>";
		            productList += "<br/><br/>"+DESCRIPTION +"<br/><br/>";
					productList += "<a href='" + PRODUCTURL + "'  alt='" + ALTTEXT + "' title='" + ALTTEXT + "'>"+productDetailText+DETAILARROWIMAGE+ "</a>";                    
		            productList += "</div></div></div></li>";
		           // productList += "</div>";
		           // productList += "</div>"; 
		            // BIND PRODUCT END
		                if ((row % 4) == 3) {// IF 3,7,11,15 ETC... END CURRENT ROW
		                	productList += "</ul><div class='clear-all'>&nbsp;</div>";
		                }
		        	}
		        productList += "</ul><div class='clear-all'>";   
		    }
		    	//alert(productList);
		    	document.getElementById("divproductlist").innerHTML = productList;  
		    }
		
		function filterproduct() { 
			var ProductFilter; 
			var flag; 
			var final_flag; 
			//alert(noOfFilters);
			ProductFilter = new Array(noOfFilters); 
			flag = new Array(noOfFilters); 
			var filtercnt;
				
			for (filtercnt = 0; filtercnt < noOfFilters; filtercnt++)  
			{ 
			//	alert(filtercnt+'====count==');
				ProductFilter[filtercnt]  = null; 
				flag[filtercnt]  = false;
			
				var element;
				//document.getElementsByName(elementName)
				 if(pageFrom =="category")
				 	element = document.getElementById('filter'+filtercnt);
				 else{
					 var filterObj = document.getElementById('filter'+filtercnt);//$("div#filter"+ filtercnt);
					 //alert(" Id "+filterObj.id + " Title "+filterObj.title);
					 var radioGrp = document.getElementsByName(filterObj.title);
					 for(var i=0;i<radioGrp.length;i++){
						 //alert("Name "+ radioGrp[i].name +" Id "+radioGrp[i].id +" Value "+radioGrp[i].value+" checked "+radioGrp[i].checked);
						 if(radioGrp[i].checked){
							 element = radioGrp[i];
						 }
					 }

				 }
				//alert(element + " Name "+ element.name+'-------Value '+element.value);
				//var filterOptions = element.options;
				//alert(filterOptions);
			 	if (element!= null)  
				{
					ProductFilter[filtercnt] = new Array(2);
					ProductFilter[filtercnt][0] = element.name;
					ProductFilter[filtercnt][1] = element.value;
				} 
			}
			
			//alert(Product_Array.length+)
			filteredproductcount = 0; 
			Filtered_Product_Array = new Array(Product_Array.length); 
			document.getElementById("divproductlist").innerHTML = "";
			
			for (i = 0; i < Product_Array.length; i++)  
			{ 
				for (filtercnt = 0; filtercnt < noOfFilters; filtercnt++)  
				{ 
					flag[filtercnt]  = false; 
				} 
				for (filtercnt = 0; filtercnt < ProductFilter.length; filtercnt++)  
				{ 
					if (ProductFilter[filtercnt][1].toLowerCase() != 'all')  
					{ 
						//alert(ProductFilter[filtercnt][0].toLowerCase()+'--@@@@@');
						switch (ProductFilter[filtercnt][0].toLowerCase()) 
						{ 
							case "lifestage": 
								//alert(Product_Array[i]["lifestage"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase())+'<<===');
								if (Product_Array[i]["lifestage"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								//alert(flag[filtercnt]+'------lifestage');
								break; 
							case "productformula": 
								if (Product_Array[i]["productformula"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								break; 
							case "foodtype": 
								if (Product_Array[i]["foodtype"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								break; 
							case "specialconcerns": 
								if (Product_Array[i]["specialconcerns"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								break; 
							case "breedsize": 
								if (Product_Array[i]["breedsize"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								break;
							case "veterinaryformula": 
								if (Product_Array[i]["veterinaryformula"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								break;
							case "productformulaiamsnaturals": 
								if (Product_Array[i]["productformulaiamsnaturals"].toLowerCase().indexOf(ProductFilter[filtercnt][1].toLowerCase()) >= 0) 
								flag[filtercnt] = true; 
								break;
							} 
					} 
					else 
						flag[filtercnt] = true; 
					} 
					final_flag = true; 
					for (filtercnt = 0; filtercnt < noOfFilters; filtercnt++)  
					{  
						//alert(flag[filtercnt]+'----------->>');
						if (flag[filtercnt] != true) 
						{ 
							final_flag = false; 
						} 
					} 
					if (final_flag == true) 
					{ 
						Filtered_Product_Array[filteredproductcount++] = i;
					} 
				}
					//alert('befort Bind---');
				BindProducts(1); 

			}		
