// Declare a single namespace in the global scope
var dk;
if (!dk) dk = {};
else if (typeof(dk) != 'object')
	throw new Error('Der findes allerede en global variabel ved navn \'dk\', som ikke er et object');
if (!dk.qbrix) dk.qbrix = {};
else if (typeof(dk.qbrix) != 'object')
	throw new Error('Der findes allerede en variabel ved navn \'dk.qbrix\', som ikke er et object');

dk.qbrix.Cookie = 
{
    Set: function(name, value, expires, path, domain, secure)
    {
        // Path is set to '/' as default if no specific path is present.
        // This makes it compatible from the developer environment to actual website.
        document.cookie = name + '=' + escape(value) +
                        ((expires) ? '; expires=' + expires.toGMTString() : '') +
                        '; path=' + ((path) ? path : '/') +     
                        ((domain) ? '; domain=' + domain : '') +
                        ((secure) ? '; secure' : '');
    },
    
    Get: function(name) 
    {
        var dc = document.cookie;
        var prefix = name + '=';
        var begin = dc.indexOf('; ' + prefix);
        if (begin == -1) 
        {
            begin = dc.indexOf(prefix);
            if (begin != 0) return null;
        }
        else 
            begin += 2;

        var end = document.cookie.indexOf(';', begin);
        if (end == -1)
            end = dc.length;

        return unescape(dc.substring(begin + prefix.length, end));
    },

    Delete: function(name, path, domain) 
    {
        if (this.Get(name)) 
        {
            document.cookie = name + '=' +
                            ((path) ? '; path=' + path : '') +
                            ((domain) ? '; domain=' + domain : '') +
                            '; expires=Thu, 01-Jan-70 00:00:01 GMT';
        }
    }
};