var CmooTooltipDisplayer = new Class ({
	initialize : function () {
		this.initTooltips();
	},
	
	initTooltips : function () {
		var al = null;
		al = $chk(arguments[0]) ? $(arguments[0]).getElements('a[class*=info_ikon]') : $$('a[class*=info_ikon]');
		al.each(function(a){
			a.removeEvents();
			var tt = null;
			if (tt = a.getNext('div[class*=tip_box]')) {
				//var tt = a.getNext('div[class*=tip_box]');
				tt.setStyle('position','absolute');
				a.addEvent('click',function(oE){
					oE.stop();
					var a = oE.target;
					if (tt.getStyle('display')=='none') {
						this._show(tt);
						this._setPosition(a, tt);
					}
					else {
						this._hide(tt);
					}
				}.bind(this));
				a.addEvent('mouseover',function(oE){
					oE.stop();
					var a = oE.target;
					//var tt = a.getNext('div[class*=tip_box]');
					this._show(tt);
					this._setPosition(a, tt);
				}.bind(this));
				a.addEvent('mouseout',function(oE){
					oE.stop();
					var a = oE.target;
					//tt = a.getNext('div[class*=tip_box]');
					this._hide(tt);
				}.bind(this));
			}
		},this);
	},
	
	_show : function (tt) {
		tt.setStyle('display','block');
	},
	
	_hide : function (tt) {
		tt.setStyle('display','none');
	},
	_setPosition : function (a,tt) {
		//alert (a.get('id') +' ' +tt.get('class'));
		var c = tt.get('class');
		tt.setStyles ({
			'position':'absolute',
			'top':(a.getCoordinates().top-tt.getSize().y)+'px'
		});
		var left = a.getCoordinates().left;
		if (c.contains('right')) {
			left -= tt.getSize().x-38;
		}
		else {
			left -= 23;
		}
		tt.setStyle('left',left+'px');
		// iframe hekk kiegeszites...
		var iframe = tt.getElement('iframe');
		if (iframe){
			iframe.setStyles({
				'width': '3000px',
				'height': '3000px'
			});
		}
	}
});
