	function Cookie(){
	
		var lifetime = 3600000;
		
		this.setCookie = function(obj){
			for(i in obj){
				var v = (obj[i]!=undefined)?obj[i]:'';
				if(i != ''){
					document.cookie = i+'='+v+';expires='+time(lifetime)+';path=/';
				}else{
					return false;
				}
			}
		}
		
		this.getCookie = function(name){
			var arr = cookie2array();
			return (name != undefined) ? arr[name] : arr;
		}
		
		this.deleteCookie = function(name){
			var arr = cookie2array();
			if(name == undefined){
				for(i in arr){
					document.cookie = i+'=;expires='+time(-1)+';path=/';
				}
			}else{
				document.cookie = name+'=;expires='+time(-1)+';path=/';
			}
		}
		
		this.setLifetime = {
			'days':function(nr){
				lifetime = (nr * 86400000);
			},
			'weeks':function(nr){
				lifetime = (nr * 604800000);
			},
			'months':function(nr){
				lifetime = (nr * 2629743000);
			},
			'years':function(nr){
				lifetime = (nr * 31556926000);
			},
			'unix':function(nr){
				lifetime = (nr * 1000);
			}
		}
		
		  /////////////////////////
		 ////private functions////
		/////////////////////////
		
		function cookie2array(){
			var str = document.cookie;
			var arr = new Array();
			var length = 0;
			var cookies = str.split(';');
			for(i in cookies){
				var cookie = cookies[i].split('=');
				arr[trim(cookie[0])] = cookie[1];
				length++;
			}
			return (length>0)?arr:false;
		}
		
		function time(milisec){
			var date = new Date();
			date.setTime(date.getTime()+milisec);
			return date;
		}
		
		function trim(str){
			var string = new String(str.replace(/^\s*([\w\s]*?)\s*$/, '$1'));
			return string;
		}
	
	}
