// #PLib::PLoad('PLib.Dom.Client.prototype');
// #PLib::PLoad('PLib.Dom.Client.Scriptaculous.scriptaculous');
// #PLib::PLoad('PLib.Dom.Client.Scriptaculous.effects');

var DidyFadeOut = Class.create();

DidyFadeOut.prototype = {
	initialize: function() {
		Event.observe(window, 'load', this.bindToDocument.bindAsEventListener(this));
	},
	
	bindToDocument: function(event) {
		var ctrls = document.getElementsByClassName('didy_fade_out');

		var listener = this.linkClicked.bindAsEventListener(this);
		ctrls.each(function(ctrl)
		{
			Event.observe(ctrl, 'click', listener);
		});
	},
		
	linkClicked: function(event)
	{
	//	alert('linkClicked');
		var el = Event.element(event)

		var tar = $(el.rel);
		new Effect.Opacity(el.rel,
		{
			duration: 0.5,
			transition:Effect.Transitions.linear,
			from: 1.0,
			to: 0.0,
			afterFinish: this.afterHide.bindAsEventListener(this)
		});
		if(event.preventDefault)
		{
			event.preventDefault();
		}
		else
		{
			return false;
		}
	},
	
	afterHide: function(effect)
	{
		effect.element.hide();
	}
}

var didyFadeOut = new DidyFadeOut();
