function treeExpand(element,box) { 
	var sign = ($(box).style.display=='none') ? 'minus' : 'plus'; 
	element.style.backgroundImage = 'url(/skin/images/main/' + sign +'.gif)';
}

function gliderStart(div) {
	anchors = $(div).getElementsBySelector('a');
	for (var i=0; i<anchors.length; i++) {
		if (anchors[i].className == 'active') {
			var news = anchors[i].href;
			break;
		}
	}
	news = news.substr(news.indexOf('#')+1);
	$('news-glider-scroller').style.height = $(news).offsetHeight+'px';
}

function gliderChange(div,element) { 
	anchors = $(div).getElementsBySelector('a');
	for (var i=0; i<anchors.length; i++) {
		anchors[i].className = '';
	}
	var news = element.href;
	news = news.substr(news.indexOf('#')+1);
	$('news-glider-scroller').style.height = $(news).offsetHeight+'px';
	element.className = 'active';
}

function createCaptcha() { 
	element = 'captcha-image'; 
	new Ajax.Request('captcha/index', {
  		method:'post',
  		onSuccess: function() { 
    		$(element).src = 'captcha/index'+'?'+Math.floor(Math.random()*100000000000);
  		}		
	});
}

if (!window.Zeacom) {
    var Zeacom = new Object();
}

Zeacom.GB = Class.create({
	initialize : function(valid){ 
    	this.validator = valid;
    	this.validator.reset();
    	this.form = this.validator.form;
    	
    	this.form.observe('submit',this.sendGbEntry.bind(this));    	   
    },
    
	loadGbEntries : function() { 
		new Ajax.Updater('gb-entry-list', '/gaestebuch/load');
		new Ajax.Updater('gb-entry-count', '/gaestebuch/count');
	},
	
	showForm : function() {	
		createCaptcha('captcha-guest'); 
		$('gb-popup-new').appear(); 
		$$('input[type="text"]').each(function(el) {
    		el.value = "";
    	}); 
    	$$('textarea').each(function(el) {
    		el.value = "";
    	}); 
		
		return false;
	},

	sendGbEntry : function(event) {
		Event.stop(event);
		if (this.validator.validate()) {
			var url = '/gaestebuch/new';
			
			new Ajax.Request(url, {
		  		method:'post',
		  		parameters:{ 'captcha':$F('captcha-code'), 'name':$F('gb_name'), 'email':$F('gb_email'), 'text':$F('gb_text') },
		  		onSuccess: function(transport) { 
		    		if (transport.responseText == '') {
		      			$('gb-popup-new').fade();
		      			$('gb-popup-success').show();
		      			this.loadGbEntries();      			
		      		}
		    		else {  			
		      			alert(transport.responseText);
		      			createCaptcha('captcha-guest','guest');
		      			$('gb-captcha-code').value = '';
		      		}
		  		}.bind(this),
		  		onLoading: function() { 
		  		
		  		},
		  		onFailure: function() {
		  			$('gb-popup-error').show();
		  		}  		
			});
		}
		return false;
	}	
});


Zeacom.tt_billReports = Class.create({
    initialize : function(selector){ 
        this.selector = $(selector);
        this.popups = this.selector.getElementsBySelector('div[class="popup"]');
        
        for (var i=0; i<this.popups.length; i++) { 
			this.popups[i].hide();
			Event.observe(this.popups[i], 'click', this.hide.bind(this,this.popups[i]));
		}               
    },

	show : function(element) {
		for (var i=0; i<this.popups.length; i++) {
			this.popups[i].hide();
		}
		$(element).appear();
		return false;
	},

    hide : function(obj){
        obj.fade();
        return false;
    }
});

Zeacom.imageLoader = Class.create({					
	initialize : function() {
		this.imageList = $('scrollbar_content').getElementsBySelector('img');
		this.loader = $('galerie-loader');
		this.box = $('galerie-box');
		this.image = $('galerie-image');		    	    	   
	    this.activeImage = this.imageList[0];
	    this.activeImage.style.opacity = '1.0';
	    
	    this.loader.hide();
	    
	    for (var i=0; i<this.imageList.length; i++) {
	    	Event.observe(this.imageList[i], 'mouseover', this.toggleOpacity.bind(this,this.imageList[i],true));
	    	Event.observe(this.imageList[i], 'mouseout', this.toggleOpacity.bind(this,this.imageList[i],false));
	    }
	},
	
    loadImage : function(element,url) {//alert(unescape(this.image.src)+' '+url);
    	if (unescape(this.image.src).substr(unescape(this.image.src).lastIndexOf('/'))==unescape(url).substr(unescape(url).lastIndexOf('/'))) return;
    	this.box.hide();
    	this.loader.show();
            
    	var newImage 	= null;
		newImage 		= new Image();
		newImage.src 	= url;
				
		if (newImage.complete) {
				this.showImage(newImage,element);		
		} else {
			newImage.onload = function() {
				this.showImage(newImage,element);
			}.bind(this);
		}
    },
    
    showImage : function(newImage,element) { 
    	this.activeImage = $(element);
    	for (var i=0; i<this.imageList.length; i++) {
	    	this.imageList[i].style.opacity = '0.3';	    	
	    }
	    this.activeImage.style.opacity = '1.0';	    
	    
	    $('galerie-description').innerHTML = this.activeImage.title;
	    
    	if (newImage.width <= newImage.height) {
			this.image.width = 480;
			$('galerie-description').style.width = '480px';
		} else {
			this.image.width = 640;
			$('galerie-description').style.width = '640px';
		} 
		this.image.src = newImage.src; 
		this.box.show();
		this.loader.hide();		
    },
    
    toggleOpacity : function(element,opacity) {
    	if (opacity) {
    		element.style.opacity = '1.0';
    	} else {
    		if (element!=this.activeImage) {
    			element.style.opacity = '0.3';
    		}
    	}
    }
});

		
