var JsLib={};
JsLib.MailTo={
	user:'info',
	domain:'alexandremercier.com',
	Write:function(){
		var anchors=$('a');
		for (var i=0;i<anchors.length;i++){
			var anchor=$(anchors[i]);
			if(anchor.attr('rel')=='mail')
				anchor.attr('href','mailto:'+this.user+'@'+this.domain);
		}
	}	
};
JsLib.ExternalLinks={
	Write:function(){
		var anchors=$('a');
		for (var i=0;i<anchors.length;i++){
			var anchor=$(anchors[i]);
			if (anchor.attr('href')&&anchor.attr('rel')=='external')
				anchor.attr('target','_blank');
		}
	}
};
JsLib.Flash={
	flashVars:{},
	params:{menu:'false',wmode:'transparent'},
	attributes:{},
	moviePath:'/flash/',
	homeDivId:'home',
	width:'761px',
	height:'211px',
	Show:function(src){
		swfobject.embedSWF(this.moviePath+src,this.homeDivId,this.width,this.height,'8.0.0','',this.flashVars,this.params,this.attributes);
	}
};
JsLib.Image={
	imagePath:'/images/pictures/',
	homeDivId:'home',
	animationDivId:'animation',
	height:'326px',
	Preload:function(){
		var args=this.Preload.arguments;
		for(var i=0;i<args.length;i++){
			var img=new Image();
			img.imageSrc=args[i];
	
				$(img).load(function(){JsLib.Animation.Resize(this.imageSrc,2);});
				
				img.src=this.imagePath+args[i];
		}
	},
	Show:function(src){
		$('#'+this.animationDivId).html('<div id="'+this.homeDivId+'" style="visibility:visible;"><img src="'+this.imagePath+src+'" alt="" /></div>');
	}
};
JsLib.Animation={
	src:'',
	fadeDuration:300,
	resizeDuration:300,
	containerDivId:'home-container',
	animationDivId:'animation',
	animationEffect:'linear',
	ChangeFlash:function(src){
		this.Change(src,1);
	},
	ChangeImage:function(src){
		this.Change(src,2);
	},
	Change:function(src,type){
		if(this.src!=src){
			$('#'+this.animationDivId).fadeOut(this.fadeDuration,function(){if(type==1)JsLib.Animation.Resize(src,type);else JsLib.Image.Preload(src);});
			this.src=src;
		}
	},
	Resize:function(src,type){
		var height=(type==1)?JsLib.Flash.height:JsLib.Image.height;
		$('#'+this.containerDivId).animate({height:height},this.resizeDuration,this.animationEffect,function(){JsLib.Animation.SetContent(src,type);});
	},
	SetContent:function(src,type){
		if(type==1)
			JsLib.Flash.Show(src);
		else
			JsLib.Image.Show(src);
		
		$('#'+this.animationDivId).fadeIn((type==1)?0:this.fadeDuration);
	}
};
$(document).ready(function(){
	JsLib.MailTo.Write();
	JsLib.ExternalLinks.Write();
	JsLib.Flash.Show('home.swf');
	JsLib.Animation.src='home.swf';
});