
var Photos = {
	body:null,
	matte:null,
	img:null,
	make:function(){
		//alert("load ")
		var imgs = document.getElementById("page").getElementsByTagName("img");
		for(var i = 0; i < imgs.length; i++){
			var src = imgs[i].getAttribute("src");
			if(imgs[i].className.indexOf("photo") >= 0 && src.match(/_square|_small|_medium/)){
				imgs[i].style.cursor = "pointer";
				imgs[i].onclick = Photos.enlarge;
			}
		}
	},
	enlarge:function(e){
		var ei = new EventInfo(e, true);
		var src = ei.source.getAttribute("src");
		Photos.body = new Element(document.body);
		Window.construct();
		var matte = Photos.body.append("div", "<span>LOADING</span>", 'class="photomatte" style="width:100%;height:100%;" onclick="Photos.delarge();"');
			matte.style.height = Window.height + 'px';
			matte.style.top = Window.scrolledy + 'px';
			
		Photos.matte = new Animation(matte, {alpha:0.01});
		Photos.matte.element.show('block');
		Photos.matte.effect({alpha:90, duration:0.2, fps:1/50, trans:physics.easeOut});
				
		src = src.replace(/_small|_medium|_square/,'_large');
		var img = Photos.body.append("img", false, 'src="'+src+'" style="visiblity:hidden;position:absolute;top:0;left:0;z-index:6002;"');
			img.onload = Photos.onload;
							
		Photos.img = new Animation(img,{alpha:0.01});	
	},
	onload:function(e){
		Window.construct();
		var ei = new EventInfo(e, true);
		Photos.matte.element.setContent("");

		var left = (Window.width/2) - Photos.img.element.getRealWidth()/2;
		var top = (Window.height/2) + Window.scrolledy - (Photos.img.element.getRealHeight()/2);
		
		Photos.img.element.element.style.top = top + 'px';
		Photos.img.element.element.style.left = left + 'px';
		
		Photos.img.element.show();
		Photos.img.effect({alpha:99.9, duration:0.2, fps:1/50, trans:physics.easeOut});
	},
	delarge:function(){
		Photos.img.effect({alpha:0.01});
		Photos.matte.effect({alpha:0.01}, function(){ 
			Photos.body.element.removeChild(Photos.img.element.element);
			Photos.body.element.removeChild(Photos.matte.element.element);
		});
		
	},
	track:function(){	
		if(Photos.img){
				Window.construct();			
				var left = (Window.width/2) - Photos.img.element.getRealWidth()/2;
				var top = (Window.height/2) + Window.scrolledy - (Photos.img.element.getRealHeight()/2);
				Photos.matte.element.element.style.top = Window.scrolledy + 'px';
					
				Photos.img.element.element.style.top = top + 'px';
				Photos.img.element.element.style.left = left + 'px';			
		}
	}
	
}

addWindowEventListener("scroll",Photos.track);


var SlideShow = {
	container:null,
	photo_one:null,
	photo_two:null,
	photos:null,
	timer:null,
	animate:null,
	current:0,
	stopped:false,
	active:null,
	busy:false,
	make:function(photos, layer, delay, speed){
		SlideShow.cached = new Array();
		SlideShow.speed = speed ? speed : 1;
		SlideShow.delay = delay ? delay : 6;
		SlideShow.container = new Element(layer);		
		SlideShow.photos = photos;		
		
		var imgs = SlideShow.container.getChildren("img");
		imgs[0].onload = SlideShow.onload;
		imgs[1].onload = SlideShow.onload;
		SlideShow.photo_one = new Animation(imgs[0], {alpha:0.01});		
		SlideShow.photo_two = new Animation(imgs[1], {alpha:0.01});
		SlideShow.fadein = SlideShow.photo_one;
		SlideShow.fadeout = SlideShow.photo_two;
		SlideShow.next();
	},
	next:function(){
		
		window.clearTimeout(SlideShow.timer);		
		
		var src = WEB_HOME + "/photos/" + SlideShow.photos[SlideShow.current].file_name;	
		SlideShow.fadein.element.element.setAttribute("src", src);
		SlideShow.current++;
		if(SlideShow.current == SlideShow.photos.length)
			SlideShow.current = 0
		
		
	},
	previous:function(){
		
		window.clearTimeout(SlideShow.timer);
		
		
	},
	load:function(index){
		//load index of photo
	},
	start:function(){
		//SlideShow.timer = window.setTimeout(
		SlideShow.next(); //, 5000);
	},
	stop:function(){
		window.clearTimeout(SlideShow.timer);
		SlideShow.stopped = true;
	},
	onload:function(e){
		
		SlideShow.fadein.effect({alpha:99.9, duration:SlideShow.speed/2, trans:physics.easeOut});
		SlideShow.fadeout.effect({alpha:0.01, duration:SlideShow.speed/2, trans:physics.easeOut}, function(){
																										   if(!SlideShow.stopped) SlideShow.timer = window.setTimeout(SlideShow.next, SlideShow.delay * 1000);
																										   });
		
		var tmp = SlideShow.fadein;
		SlideShow.fadein = SlideShow.fadeout;
		SlideShow.fadeout = tmp;
		
		//SlideShow.cached.push(loaded);	
		
	},
	iscached:function(img){
		for(var p = 0; p < SlideShow.cached.length; p++){
			if(img == SlideShow.cached[p])
				return p;
		}
		return -1;
	},
	indexof:function(first){
		for(var p = 0; p < SlideShow.photos.length; p++){
			if(first == SlideShow.photos[p])
				return p;
		}
		return -1;
	}
}

