


var Cookie = {
    set: function(name, value, daysToExpire) {
        var expire = '';
        if (daysToExpire !== undefined) {
            var d = new Date();
            d.setTime(d.getTime() + (86400000 * parseFloat(daysToExpire)));
            expire = '; expires=' + d.toGMTString();
        }
        return (document.cookie = escape(name) + '=' + escape(value || '') + expire + ';path=/;');
    },
    get: function(name) {
        var cookie = document.cookie.match(new RegExp('(^|;)\\s*' + escape(name) + '=([^;\\s]*)'));
        return (cookie ? unescape(cookie[2]) : null);
    },
    erase: function(name) {
        var cookie = Cookie.get(name) || true;
        Cookie.set(name, '', -1);
        return cookie;
    },
    accept: function() {
        if (typeof navigator.cookieEnabled == 'boolean') {
            return navigator.cookieEnabled;
        }
        Cookie.set('_test', '1');
        return (Cookie.erase('_test') === "1");
    }
};

var Custom = {};
Custom.Info = Class.create();
Custom.Info.prototype = {
    
    initialize: function(options) {
        
        this.option = {
            layerpos: {'left':100,'top':100},
            layertext: 'information',
            layerId: 'infoLayer',
            cookieName: 'patientenfragenNet',
            cookieExpire: 7
        }
        Object.extend(this.option, options || {});
        
        this.createInfo();
    },
    
    createInfo: function() {
        
        if(Cookie.get(this.option.cookieName) == null) {
            this.showInfo();
            Cookie.set(this.option.cookieName, 'true', this.option.cookieExpire);
        }
    },
    
    showInfo: function() {
        this.eraseInfo();
        
        var layer     = new Element('div', {'id':this.option.layerId,'class':this.option.layerId});
        var layerHead = new Element('div', {'class':this.option.layerId+'Head'});
        var layerBody = new Element('div', {'class':this.option.layerId+'Body'});
        var layerFoot = new Element('div', {'class':this.option.layerId+'Foot'});
        
        layer.insert(layerHead);
        layer.insert(layerBody);
        layer.insert(layerFoot);
        
        layer.style.position = 'absolute';
        layer.style.top      = this.option.layerpos.top + 'px';
        layer.style.left     = this.option.layerpos.left + 'px';
        
        layerBody.insert(this.option.layertext);
        $(document.body).insert(layer);
    },
    
    eraseInfo: function() {
        if($(this.option.layerId)){
            $(this.option.layerId).remove();
        }
    }
    
};

Custom.InitModuleLink = function() {
    
    $$('.clickable').each(function(item) {
        
        var array = item.getElementsBySelector('a');
        
        if (array.length == 1) {
            
            /*$w(item.className).each(function(e) {
                item.addClassName(e + 'Link');
            });*/
            
            item.observe('click', function() {
                window.location = array[0].readAttribute('href');
            });
        } 
    });
};
