/**
 * SpriteNavigation
 * @ver 1.1
 */
var SpriteNavigation = new Class({
	Implements: [Options],
	options: {
		id:'',
		el:'a',
		current:true,
		duration:300
	},
	initialize: function(options){
		this.setOptions(options);
		this.target= (this.options.id)? $(this.options.id) : $(document.body);
		this.navi = this.target.getElements(this.options.el);
		$each(this.navi,function(a,i){
			var c= a.get("class");
			var div = new Element("div",{ "class":c,"opacity":0,"styles":{"position":"absolute","top":0,"left":0,"z-index":0,"width":a.getStyle("width"),"height":a.getStyle("height")}});
			if(a.get("tag")==="a"&&this.is_current(a.href)&&this.options.current === true){
					div.fade("show");
					a.getParent().addClass("current");
					div.inject(a.getParent(),"top");
					a.setStyle("visibility","hidden");
			}else{
				a.setStyle("background","none");
				div.inject(a.getParent());
				div.set("tween",{duration:this.options.duration});
				a.addEvents({
					mouseenter: function() { div.tween("opacity", 1); },
					mouseleave: function() { div.tween("opacity", 0); },
					mousedown:  function() { div.addClass(c + 'Click'); },
					mouseup:	function() { div.removeClass(c + 'Click'); }
				});
			}
		}.bind(this));
	},
	is_current:function(str){
		return document.location.href.test(str);
	}
});
