window.addEvent('domready', function() {
	if(document.getElementById('search')) {
		Cookie.write('przyciemnienie', 1);		
	}
	
	if (document.getElementById('modal-przyciemnienie-tresc')) {
		if (Cookie.read('przyciemnienie')) {
			var con = $('modal-przyciemnienie-tresc').innerHTML;
			var modal = new ModalWindow({
				sWindowClassName: 'modal-przyciemnienie',
				sContent: con,
				bBackground: 0,
				bgColor: '#a3e0ff',
				iOpacity: 85
			});
			modal.flash(4000);
		}
		
		$('modal-przyciemnienie-tresc').destroy()
		Cookie.dispose('przyciemnienie');
	}
});


var Adv_search = new Class({
    initialize: function() {
    	//var advTrigger = $('adv-search-trigger');
        //var advTarget = $('search-advanced');
        var nameTrigger = $('name-search-trigger');
        var text = nameTrigger.get('text');
        var nameTarget = $('name-search');
        var cn = 'hide';
                
        /* advTrigger.addEvent('click', function(e) {
        	advTarget.removeClass(cn);
            e.target.getParent('.form-submit').addClass(cn);
        }); */
        
       nameTrigger.addEvent('click', function(e) {
        	if (nameTarget.hasClass(cn)) {
                nameTarget.removeClass(cn);
                nameTrigger.set('text', 'ukryj szukanie po nazwie');
        		/*$('name-search-hide').addEvent('click', function(e) {
        			e.stop();
                    var search_text = $('name-search-input').value;
                    search_text = search_text.replace(' ', '+');
                    document.location.href = SiteConfig.urlSite + 'index.php?pid=1&nazwaKodHotelu=' + search_text;
        		});*/
        	} else {
        		nameTarget.addClass(cn);
                nameTrigger.set('text', text);
                //$('name-search-hide').removeEvents('click');
        	}
        });
    }
});

var Prezentacja = new Class({
    Implements: [Options, Events, Chain],
    
    options: {
        iSlideShowTime: 7000,
        iClickTime: 12000,
        menuCN: 'prezentacja-menu',
        innerCN: 'pre-inner',
        innerInactiveCss: {'left': 938},
        innerActiveCss: {'left': 560}
    },
    
    initialize: function(conf, options) {
        this.setOptions(options);
        this.container = $(conf.containerID);
        this.items = this.container.getElements('.' + conf.itemCN);
        this.items[0].setStyle('z-index', 20);
        this.menu = new Element('ul', {'class': this.options.menuCN}).inject(this.container);
        
        for (var i=0; i<this.items.length; i++) {
            if (i == 0) {
                var li = new Element('li', {'class': 'active'});
            	this.active = i;
                this.items[i].getElement('.' + this.options.innerCN).setStyles(this.options.innerActiveCss);
            } else {
                var li = new Element('li');
                this.items[i].getElement('.' + this.options.innerCN).setStyles(this.options.innerInactiveCss);
            }
            li.inject(this.menu);
            this.items[i].removeClass('invisible');            
            var a = new Element('a', {'text': i+1, 'href': 'javascript:void(0);'}).inject(li).store('nr', i);
    	}
        
        var last_li = new Element('li', {
            'class': 'text',
            'text': '- nasze pozostałe oferty promocyjne'
        }).inject(this.menu);
        
        this.menu.addEvent('click', function(e) {
        	var tg = $(e.target);
            if (tg.tagName.toLowerCase() != 'a') return;
            this.change(tg.retrieve('nr'), 'byClick');
        }.bind(this));
        
        this._doSlideShow();
    },
    
    change: function(iNum, state) {
        if (this.menu.getElements('li')[iNum].hasClass('active')) return;
        if (this.close) {this.queue = iNum; return;}
        this.close = 1;
        
        $clear(this.timeout);
        var item = this.items[iNum];
        item.setStyle('z-index', 15);
        var currentActive = this.items[this.active];
        
        this.chain(
            function(){
                this._hideActive(currentActive);
            }.bind(this),
            function() {
                currentActive.setStyle('z-index', 10);
                currentActive.getElement('img').setStyle('opacity', 1);
            	this._showCurrent(item);
            }.bind(this),
            function() {
            	this.menu.getElements('li').each(function(li, i) {
                	if (li.hasClass('active')) li.removeClass('active');
                    if (i == iNum) li.addClass('active');
                }, this);
                item.setStyle('z-index', 20);
                
                this.active = iNum;
                this.close = 0;
                
                if (this.queue) {
                    this.change(this.queue);
                    this.queue = null;
                } else {
                	this._doSlideShow(state);
                }
            }.bind(this)
        );
        
        this.callChain();
    },
    
    _doSlideShow: function(state) {
    	var next = (this.active == this.items.length - 1) ? 0 : this.active + 1;
        var time = (state == 'byClick') ? this.options.iClickTime : this.options.iSlideShowTime;
        this.timeout = setTimeout(function() {
        	this.change(next);
        }.bind(this), time);
    },
    
    _hideActive: function(item) {
        var inner = item.getElement('.' + this.options.innerCN);
        var img = item.getElement('img');
        var fxInner = new Fx.Morph(inner).start(this.options.innerInactiveCss)
        .chain(function() {
            img.setStyle('opacity', 1);
            var fxImg = new Fx.Tween(img).start('opacity', 1, 0)
            .chain(function() {
                this.callChain();
            }.bind(this));
        }.bind(this));
    },
    
    _showCurrent: function(item) {
    	var inner = item.getElement('.' + this.options.innerCN);
        var img = item.getElement('img');
        var fxInner = new Fx.Morph(inner).start(this.options.innerActiveCss)
        .chain(function() {
            this.callChain();
        }.bind(this));
    }
});

/*var Prezentacja = new Class({
    Implements: [Options, Events, Chain],
    
    options: {
        iSlideShowTime: 7000,
        iClickTime: 12000,
        menuCN: 'prezentacja-menu',
        innerCN: 'pre-inner',
        innerInactiveCss: {'left': 938},
        innerActiveCss: {'left': 560}
    },
    
    initialize: function(conf, options) {
        this.setOptions(options);
        this.container = $(conf.containerID);
        this.items = this.container.getElements('.' + conf.itemCN);
        this.items[0].setStyle('z-index', 20);
        this.menu = new Element('ul', {'class': this.options.menuCN}).inject(this.container);
        
        for (var i=0; i<this.items.length; i++) {
            if (i == 0) {
                var li = new Element('li', {'class': 'active'});
            	this.active = i;
                this.items[i].getElement('.' + this.options.innerCN).setStyles(this.options.innerActiveCss);
            } else {
                var li = new Element('li');
                this.items[i].getElement('.' + this.options.innerCN).setStyles(this.options.innerInactiveCss);
            }
            li.inject(this.menu);
            this.items[i].removeClass('invisible');            
            var a = new Element('a', {'text': i+1, 'href': 'javascript:void(0);'}).inject(li).store('nr', i);
    	}
        
        var last_li = new Element('li', {
            'class': 'text',
            'text': '- nasze pozostałe oferty promocyjne'
        }).inject(this.menu);
        
        this.menu.addEvent('click', function(e) {
        	var tg = $(e.target);
            if (tg.tagName.toLowerCase() != 'a') return;
            this.change(tg.retrieve('nr'), 'byClick');
        }.bind(this));
        
        this._doSlideShow();
    },
    
    change: function(iNum, state) {
        if (this.menu.getElements('li')[iNum].hasClass('active')) return;
        if (this.close) {this.queue = iNum; return;}
        this.close = 1;
        
        $clear(this.timeout);
        var item = this.items[iNum];
        item.setStyle('z-index', 15);
        var currentActive = this.items[this.active];
        
        this.chain(
            function(){
                this._hideActive(currentActive);
            }.bind(this),
            function() {
                currentActive.setStyle('z-index', 10);
                currentActive.getElement('img').setStyle('opacity', 1);
            	this._showCurrent(item);
            }.bind(this),
            function() {
            	this.menu.getElements('li').each(function(li, i) {
                	if (li.hasClass('active')) li.removeClass('active');
                    if (i == iNum) li.addClass('active');
                }, this);
                item.setStyle('z-index', 20);
                
                this.active = iNum;
                this.close = 0;
                
                if (this.queue) {
                    this.change(this.queue);
                    this.queue = null;
                } else {
                	this._doSlideShow(state);
                }
            }.bind(this)
        );
        
        this.callChain();
    },
    
    _doSlideShow: function(state) {
    	var next = (this.active == this.items.length - 1) ? 0 : this.active + 1;
        var time = (state == 'byClick') ? this.options.iClickTime : this.options.iSlideShowTime;
        this.timeout = setTimeout(function() {
        	this.change(next);
        }.bind(this), time);
    },
    
    _hideActive: function(item) {
        var inner = item.getElement('.' + this.options.innerCN);
        var img = item.getElement('img');
        var fxInner = new Fx.Morph(inner).start(this.options.innerInactiveCss)
        .chain(function() {
            img.setStyle('opacity', 1);
            var fxImg = new Fx.Tween(img).start('opacity', 1, 0)
            .chain(function() {
                this.callChain();
            }.bind(this));
        }.bind(this));
    },
    
    _showCurrent: function(item) {
    	var inner = item.getElement('.' + this.options.innerCN);
        var img = item.getElement('img');
        var fxInner = new Fx.Morph(inner).start(this.options.innerActiveCss)
        .chain(function() {
            this.callChain();
        }.bind(this));
    }
});
*/
