/* 
*
*	Function for compare products
*
*/

		function IdInSession(id){
			var sess_ids=JSONstring.toObject(sessvars.productIds);
			var count_sess_ids = JSONstring.toObject(sessvars.countIds);
			if (count_sess_ids>0 && IdInIds(id,sess_ids,count_sess_ids)){
				return true;
			}
			return false;
		}
		
		function ObjToArray(obj, num_elem){
			var arr = [];
			for(var i=0;i<num_elem;i++){
				arr[i]=obj[i];
			}
			return arr;
		}
		
		function IdInIds(id_,obj, num_elem){
			for(var i=0;i<num_elem;i++){
				if ( id_ == obj[i] ){
					return true;
				}
			}
			return false; 
		}
		
		function checkBoxProduct(ch_box){
			if (IdInSession(ch_box.id)) 
				ch_box.checked=true; 
			else ch_box.checked=false;
			alert(ch_box.id);
		}
		
		
		function addToCompare(product){
				
				
			//get values from javasession
			var sess_ids=JSONstring.toObject(sessvars.productIds);
			var count_sess_ids = JSONstring.toObject(sessvars.countIds);
			var arr_id = new Array();
			
			if (count_sess_ids>0){
				
				var arr_id = sess_ids;
			} else {
				JSONstring.compactOutput=false;	
				JSONstring.includeProtos=true;	
				JSONstring.includeFunctions=false;	
				JSONstring.detectCirculars=true;		
				JSONstring.restoreCirculars=true;
				arr_id = [];
				var count_sess_ids = 0;
			}
			
				
			if (product.checked){
				//Add product to javasession//
				if (!IdInIds(product.id,arr_id,count_sess_ids)){
					arr_id[count_sess_ids] = product.id;
					count_sess_ids++;
				}
			}else {
				//Delete product from javasession//
				var j=0;
				var del_ids=[];
				for(var i=0;i<=count_sess_ids;i++){
					if (product.id != arr_id[i] ){
						del_ids[j]=arr_id[i];
						++j;
					}else {
						count_sess_ids--;
					}
				}
				arr_id = del_ids;
			}
			
			// Now let us stringify this
			var ids=JSONstring.make(arr_id);
			var count_ids = JSONstring.make(count_sess_ids);
			sessvars.productIds = ids;
			sessvars.countIds = count_ids;

			var sess_ids=JSONstring.toObject(sessvars.productIds);
		}
		
		function gToCompare(){
			var sess_ids=JSONstring.toObject(sessvars.productIds);
			var num_elem = JSONstring.toObject(sessvars.countIds);
			var params = '';
			
			if (num_elem>0){
				for(var i=0;i<num_elem;i++){
					params += sess_ids[i]+',';
				}
			}
			//for easer of navigation
			var beckButton=JSONstring.make(window.location.href);
			sessvars.beck_button = beckButton;
			//if delete "," then will not opened in new window as javasession use windows.name
			newwindow=window.open("?compare_pr="+params,window.name,"toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable,height=700,width=1000,top=100,left=200");
			if (window.focus) {newwindow.focus()}
		}
		
		function getElementsByName_iefix(tag, name) {
     
		     var elem = document.getElementsByTagName(tag);
		     var arr = new Array();
		     for(i = 0,iarr = 0; i < elem.length; i++) {
		          att = elem[i].getAttribute("name");
		          if(att == name) {
		               arr[iarr] = elem[i];
		               iarr++;
		          }
		     }
		     return arr;
		}
		
		
		onload = function(){
			var products = getElementsByName_iefix('input','checkProdBox');
			for (var i=0;i<=products.length;i++){
				if (IdInSession(products[i]['id'])){
					document.getElementById(products[i]['id']).checked=true;
				}else document.getElementById(products[i]['id']).checked=false;
			}
		}
		
		function goToPreviusPage(){
			window.location =JSONstring.toObject(sessvars.beck_button);
			
		}
		function clearProducts(){
			sessvars.productIds = '';
			sessvars.countIds = 0;
			var products = getElementsByName_iefix('input','checkProdBox');
			for (var i=0;i<=products.length;i++){
					document.getElementById(products[i]['id']).checked=false;
			}
		}
		