
function CJL_CookieUtil(name,duration,path,domain,secure)
{this.affix="";if(duration)
{var date=new Date();var curTime=new Date().getTime();date.setTime(curTime+(1000*60*duration));this.affix="; expires="+date.toGMTString();}
if(path)
{this.affix+="; path="+path;}
if(domain)
{this.affix+="; domain="+domain;}
if(secure)
{this.affix+="; secure="+secure;}
function getValue()
{var m=document.cookie.match(new RegExp("("+name+"=[^;]*)(;|$)"));return m?m[1]:null;}
this.cookieExists=function()
{return getValue()?true:false;}
this.expire=function()
{var date=new Date();date.setFullYear(date.getYear()-1);document.cookie=name+"=noop; expires="+date.toGMTString();}
this.setSubValue=function(key,value)
{var ck=getValue();if(/[;,@$ ]/.test(value))
{if(/@/.test(value))
value=value.replace("@","|");value=window.encodeURI?encodeURI(value):escape(value);}
if(value)
{var attrPair="@"+key+value;if(ck)
{if(new RegExp("@"+key).test(ck))
{document.cookie=ck.replace(new RegExp("@"+key+"[^@;]*"),attrPair)+this.affix;}
else
{document.cookie=ck.replace(new RegExp("("+name+"=[^;]*)(;|$)"),"$1"+attrPair)+this.affix;}}
else
{document.cookie=name+"="+attrPair+this.affix;}}
else
{if(new RegExp("@"+key).test(ck))
{document.cookie=ck.replace(new RegExp("@"+key+"[^@;]*"),"")+this.affix;}}}
this.getSubValue=function(key)
{var ck=getValue();if(ck)
{var m=ck.match(new RegExp("@"+key+"([^@;]*)"));if(m)
{var value=m[1];if(value)
{return window.decodeURI?decodeURI(value):unescape(value);}}}}}