﻿Utility.Cookie = function()
{
    var _expiredays;
    Ext.onReady(this.Initialize.createDelegate(this));
}

Ext.extend(Utility.Cookie, Ext.util.Observable,
{
    Initialize : function()
    {
        this._expiredays = 30;
    },
    
    Set : function(name, value)
    {
        var date = new Date();
	    date.setTime(date.getTime() + (this._expiredays * 24 * 60 * 60 * 1000));
	    expires = "; expires=" + date.toGMTString();
        document.cookie = name + "=" + escape(value) + expires + "; path=/"; 
    },
    
    Read : function(name)
    {
        var value = document.cookie.match ( '(^|;) ?' + name + '=([^;]*)(;|$)' );

        if (value)
        {
            return unescape(value[2]);
        }
        else
        {
            return null;
        }
    },
    
    Delete : function(cookiename)
    {
        var expiredate = new Date();
        expiredate.setTime(expiredate.getTime() - 1);
        cookiename += "=; expires=" + expiredate.toUTCString() + "; path=/;";
        document.cookie = cookiename;
    }
});    

