/*
###############################################################################################################
#
#	::	ScreenSizer	::																	
#
#
#	Testé sous:
#	-FireFox
#	-IE7
#
#
#	@ PARAM @
#	iMinWidth			:	largeur minimum
#	iMinHeight			:	hauteur minimum
#
###############################################################################################################
*/

function ScreenSizer(iMinWidth,iMinHeight){
		//passer les parametres a la fonction constructeur
		this.init(iMinWidth,iMinHeight);
		
};

my_ScreenSizer = ScreenSizer.prototype={	

	//initialisation de la classe.
	init:function(iMinWidth,iMinHeight){
		
		my_ScreenSizer.iMinWidth	=	iMinWidth;
		my_ScreenSizer.iMinHeight	=	iMinHeight;
		
		my_ScreenSizer.oBody = document.getElementsByTagName("body")[0];
		my_ScreenSizer.oHtml = document.getElementsByTagName("html")[0];
		
		//gestionnaire d'evenement
		my_ScreenSizer.addEvent(window, "load", my_ScreenSizer.FireOnLoad,false)		
		my_ScreenSizer.addEvent(window, "resize", my_ScreenSizer.FireOnResize,false)
		
	},
	
	//les fonctions qui se lancent au chargement
	FireOnLoad:function(){				
		my_ScreenSizer.initCss();
		my_ScreenSizer.getScreenSize();			
		my_ScreenSizer.setScroll();	
	},
	

	//les fonctions qui se lancent au resize
	FireOnResize:function(){	
		my_ScreenSizer.getScreenSize();	
		my_ScreenSizer.setScroll();
	},

	//initialiser le css de base
	initCss:function(){		
		my_ScreenSizer.oBody.style.margin=0;			
		my_ScreenSizer.oBody.style.padding=0;
		my_ScreenSizer.oBody.style.border=0;	
		my_ScreenSizer.oHtml.style.margin=0;
		my_ScreenSizer.oHtml.style.padding=0;
		my_ScreenSizer.oHtml.style.border=0;			
	},
	
	//récupere la résolution de l'écran
	getScreenSize:function(){
		if (window.innerWidth){				
	     	my_ScreenSizer.iScreenWidth = window.innerWidth;
	        my_ScreenSizer.iScreenHeight = window.innerHeight;
	    } else {	    		
 	    	my_ScreenSizer.iScreenWidth = document.body.clientWidth;
	    	my_ScreenSizer.iScreenHeight = document.documentElement.clientHeight;
	    }
		
	},
	
	//gestion de la scroll sous IE
	setScroll:function(){
		//alert(my_ScreenSizer.iScreenHeight + "   " +my_ScreenSizer.iMinHeight);
		
		if(my_ScreenSizer.iScreenHeight < my_ScreenSizer.iMinHeight) {	
			$("#contenu").removeClass("contenu_big");	
			$("#contenu").addClass("contenu_small");
			$("#menu_global").addClass("menu_global_small");
		} else {	
			$("#contenu").removeClass("contenu_small");	
			$("#contenu").addClass("contenu_big");
			$("#menu_global").removeClass("menu_global_small");
		}
	},
	
	//gestionnaire d'evenement de l'objet
	addEvent: function(element, eventType, doFunction, useCapture){	
		if (element.addEventListener) {		
			element.addEventListener(eventType, doFunction, useCapture);
			return true;	
					
		} else if (element.attachEvent) {		
			var r = element.attachEvent('on' + eventType, doFunction);
			return r;
						
		} else {		
			element['on' + eventType] = doFunction;				
		}		
	}
	
}

