max_recent = 5
var expDays = 30
var exp = new Date()
exp.setTime(exp.getTime() + (expDays * 24 * 60 * 60 * 1000))
function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}
 
function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
 
function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}
function initLoad() {
	var contentDiv ;
	var allContainedElements ;
	if(GetCookie("PRODUCT_ID") != null) {
		document.getElementById('right_column').innerHTML = read_cookie() ;
		var cookiesProductId = GetCookie("PRODUCT_ID").split("|") ;
		var totalProducts = parseInt(GetCookie("PRODUCT_ID").split("|").length);
		for(var inc=0; inc < totalProducts ; inc++) {
			contentDiv = document.getElementById(cookiesProductId[inc]) ;
			if(contentDiv != null) {
				allContainedElements = contentDiv.getElementsByTagName("*");
				for (var i = 0; i < allContainedElements.length; i++) {
					if (allContainedElements[i].type == "checkbox") {
						allContainedElements[i].checked = true ;
					} 
				}
			}	
		}
	}
}
function getCookieVal(offset) {
	var endstr = document.cookie.indexOf(";", offset)
    if (endstr == -1) endstr = document.cookie.length
    return unescape(document.cookie.substring(offset, endstr))
}
function GetCookie(name) {
    var arg = name + "="
    var alen = arg.length
    var clen = document.cookie.length
	
    var i = 0
    while (i < clen) {
        var j = i + alen
        if (document.cookie.substring(i, j) == arg) {
			return getCookieVal(j)	
		}
        i = document.cookie.indexOf(" ", i) + 1
        if (i == 0) break
    }
    return null
}
function SetCookie (name, value) {
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	var expires = (2 < argc) ? argv[2] : null;
	var path = (3 < argc) ? argv[3] : null;
	var domain = (4 < argc) ? argv[4] : null;
	var secure = (5 < argc) ? argv[5] : false;
	document.cookie = name + "=" + escape (value) +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : ""); 
}

function DeleteCookie(name) {
	document.cookie = name + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
}

function write_cookie(v) {
    var r = new Array()
    var i = 1,
    j = 1
	while(j <= max_recent) {
		if(GetCookie('alphaCookie' + j) == null || GetCookie('alphaCookie' + j) == "") {
			SetCookie('alphaCookie' + j, v, exp);
			break;
		}
		j++;
	}
}
function read_cookie() {
    var t = "";
	var j = 1 ;
	while(j <= max_recent) {
		if(GetCookie('alphaCookie' + j) != null && GetCookie('alphaCookie' + j) != "") {
			t += GetCookie('alphaCookie' + j) ;
		}
		j++;	
	}
	return t ;
}

var objName ;
var strDivData ;
function ChkClick(obj) {
	if(obj.checked == true && obj.value == "i_like_this") {
		ILikeThis(obj);
	} if(obj.checked == true && obj.value == "remove_this") {
		if(confirm("Are your sure you want to remove this product?"))
	   {	
			RemoveThis(obj);
	   } else {
			obj.checked = false  ;
	   }
	}
}

function ILikeThis(obj){
		objName =  trim(obj.name, " ") == "" ? trim(obj.id, " ") : trim(obj.name, " ") ;
		var cookiesProductId = new Array();
		var isExixts = false ;
		if(GetCookie("PRODUCT_ID") != null) {
			cookiesProductId = GetCookie("PRODUCT_ID").split("|") ;
			for(i = 0; i < cookiesProductId.length ; i++) {
				if(cookiesProductId[i] == objName ) {
						isExixts = true ;
						break;
				}
			}
		}
		if(isExixts == false) {
			strDivData = "<div class='mainbox' id='right_"+ objName +"'>" + document.getElementById(objName).innerHTML + "</div>";
			document.getElementById('right_column').innerHTML  = document.getElementById('right_column').innerHTML + strDivData;
			
			var contentDiv = document.getElementById("right_"+objName) ;
			var allContainedElements = contentDiv.getElementsByTagName("*");
			for (var i = 0; i < allContainedElements.length; i++) {
				if (allContainedElements[i].type == "checkbox") {
					allContainedElements[i].checked = false ;
					allContainedElements[i].value = "remove_this";
				} else if (allContainedElements[i].id == "lbl"+objName) {
					allContainedElements[i].innerHTML  = "Romove this one"
				}
			}
				
			strDivData = "<div class='mainbox' id='right_"+ objName +"'>" + document.getElementById("right_"+objName).innerHTML + "</div>";
			if(GetCookie("PRODUCT_ID") != null) {
				 SetCookie("PRODUCT_ID",GetCookie("PRODUCT_ID") + "|" + objName);
			  } else { 
				 SetCookie("PRODUCT_ID",objName); 
			  }	 
			 write_cookie(strDivData);
			var delStr = "<div id='divDeleteAll' align='right' style='cursor:pointer;'><a onclick='deleteAll();'>delete all</a></div>";			
			document.getElementById('delete_span').innerHTML = delStr ;
		} else {
		  	alert("This product already exists.");
		}
	}


function RemoveThis(obj) {
		var objName =  trim(obj.name, " ") == "" ? trim(obj.id, " ") : trim(obj.name, " ") ;
		var cookiesProductId = GetCookie("PRODUCT_ID").split("|") ;
		var totalProducts = parseInt(GetCookie("PRODUCT_ID").split("|").length);
		var delStr = "<div id='divDeleteAll' align='right' style='cursor:pointer;'><a onclick='deleteAll();'>delete all</a></div>";		
		var j = 1, i = 0;
		while(j <= max_recent) {
			if(GetCookie('alphaCookie' + j) != null && GetCookie('alphaCookie' + j) != "") {
				for(i = 0; i < totalProducts; i++) {
					if(cookiesProductId[i] == objName  && GetCookie('alphaCookie' + j).indexOf(cookiesProductId[i]) > -1) {
						DeleteCookie('alphaCookie' + j);
					}
				} 
			}
			j++;
		}
		document.getElementById('right_' + objName).innerHTML  = "";
		document.getElementById('right_column').innerHTML = read_cookie();
		var str_PRODUCT_ID = "";
		if(parseInt(totalProducts) > 0)  {
			for(i = 0; i < totalProducts; i++) {
				if(cookiesProductId[i]!= '') { 
						if(cookiesProductId[i] != objName)  {
								document.getElementById('delete_span').innerHTML = delStr ;
								if(str_PRODUCT_ID == "")  {
										str_PRODUCT_ID =  cookiesProductId[i] ;
									} else {
										str_PRODUCT_ID =  str_PRODUCT_ID + '|' + cookiesProductId[i] ;
									}
							}
					}
				}
			if(str_PRODUCT_ID == "") {
					DeleteCookie("PRODUCT_ID");
					document.getElementById('delete_span').innerHTML = '' ;
				} else {
					SetCookie("PRODUCT_ID",str_PRODUCT_ID); 
				}
			var contentDiv = document.getElementById(objName) ;
			if (contentDiv) {
				var allContainedElements = contentDiv.getElementsByTagName("*");
				for (var i = 0; i < allContainedElements.length; i++) {
					if (allContainedElements[i].type == "checkbox") {
						if (allContainedElements[i].name.search(new RegExp(objName,"i")) != -1){
								allContainedElements[i].checked = false ;	
						}
					}
				}
			}
		}
	}

	function deleteAll() {
		if(GetCookie("PRODUCT_ID") != null) 
		{
			if(confirm("Are your sure you want to remove all product?"))
			{	
				var cntName = "";
				var contentDiv = document.getElementById("col-ctr") ;
				var allContainedElements = contentDiv.getElementsByTagName("*");
				for (var i = 0; i < allContainedElements.length; i++) {
					if (allContainedElements[i].type == "checkbox") {
						allContainedElements[i].checked = false ;	
					}
				}
				document.getElementById('right_column').innerHTML = '';
				DeleteCookie("PRODUCT_ID");
				var j = 1;
				while(j <= max_recent) {
					if(GetCookie('alphaCookie' + j) != null && GetCookie('alphaCookie' + j) != "") {
						DeleteCookie('alphaCookie' + j) ;
					}
					j++;	
				}
				document.getElementById('delete_span').innerHTML = '' ;
			}
		}
	}


