

function $E(tag,el){return $(el||document).getElement(tag)}

window.addEvents({
	
	domready:function(){
		
		$extend(Maur,{
			
			bg:$E('img',$E('#bg',db=$(document.body))),timer:(Browser.Engine.gecko||Browser.Engine.webkit)?null:setInterval(Maur.fix,200),menu:$('menu')});gal.call(gal);
			
			if($$('dl')[0]){var hs=$$('dt'),fx=hs.map(function(el){
				return new Fx.Morph(el,{wait:false})
			});
			
			
		}
	},keypress:function(e){var e=new Event(e);if(e.key=='down'||e.key=='right')e.stop()}
});




Maur={
	doc:{x:0,y:0},
	fix:function(){
		if(Maur.bg.complete&&(db.offsetWidth!=Maur.doc.x||db.offsetHeight!=Maur.doc.y||Maur.fix.src!=Maur.bg.src)){
			var bg=Maur.bg.getSize();
			Maur.doc={x:db.offsetWidth,y:db.offsetHeight};
			Maur.fix.src==Maur.bg.src||$extend(Maur.fix,{p:bg.x/bg.y,src:Maur.bg.src});
			Maur.bg.setStyles({width:(bg.y=Maur.doc.x>(bg.x=Math.round(Maur.doc.y*Maur.fix.p)))?Maur.doc.x:bg.x,height:bg.y?Math.round(Maur.doc.x/Maur.fix.p):Maur.doc.y})
		}
	}
}

$extend(gal=function(){
	if(gal.el=$('pics')){
		$extend(this,{fx:new Fx.Tween(Maur.menu,'bottom'),piumeno:$('piumeno').addEvent('click',gal.key)}).el.getElements('a').addEvent('click',this.swap)[0].addClass('current');
			document.addEvents({mousemove:gal.mouse,keydown:gal.key})
	}
},{
	mouse:function(e){
		var w=db.offsetWidth/2,x=e.client.x,y=db.offsetHeight-e.client.y,el=gal.piumeno;
		if(y<(gal.menu?120:50)){
			$clear(gal.timer);gal.menu||(gal.menu=gal.fx.start(20))
			}else{
				if(gal.menu)gal.menu=!(gal.timer=setTimeout(function(){gal.fx.start(-99)},700));
				else{
					if(y<120&&el.className)el.className=el.style.display='';
					else if(y>120){if(!el.className)el.style.display='block';
					if(x>w&&el.className!='next')el.className='next';
					else if(x<w&&el.className!='previous')el.className='previous';
					with(el.style){left=x-20+'px';top=e.client.y-10+'px'}
				}
			}
		}
	},
	swap:function(){
		$E('.current',gal.el).removeClass('current');
		Maur.bg.src=this.addClass('current').getElement('img').src
	},
	key:function(e){
		var next=e.key?(e.code==39):(gal.piumeno.className=='next');
		return (e.key&&e.code!=37&&e.code!=39)?false:gal.swap.call($E('.current',gal.el)[next?'getNext':'getPrevious']()||gal.el[next?'getFirst':'getLast']())
	},
	menu:true
});










