/**
 * Cookie handler JavaScript;
 * @author: noat@webon.no
 */
String.prototype.isBlank = function(){
  return /^\s*$/.test(this);
};
var Cookie = function(){
    if(document.cookie){
       var self = this;
           this.data = {};
           this.init = function(){
                var arr = document.cookie.split(';');
                for(var i=0,j=arr.length;i<j;i++){
                    var pairs = arr[i].split('=');
                    self.data[pairs[0].strip()] = pairs[1];
                }
                return self;
           };
           this.get = function(name){
                return self.data[name] || false;
           };
           this.set = function(name,value, expDays){
                var ok = (name && value) ? (!name.isBlank() && !value.isBlank() ? true : false) : false;
                if(ok){
                var exp = new Date(),
                    days = expDays || 1;
                    exp.setDate(exp.getDate() + days);
                    document.cookie = name+ "=" + value + ';expires='+exp.toUTCString();
                    self.data[name] = value;
                }
                return self;
           };
           this.destroy = function(name){
               if(name && !name.isBlank()){
                  var now = new Date();
                  document.cookie = name + '=0;expires=' + now.toGMTString();
                  self.data[name] = undefined;
               }
               return self;
           };
       return this.init();
    }else{
       return false;
    } 
};
