
(function () {

	window.Front = function () {}

	var UP = "UP";
	var DOWN = "DOWN";
	var GOING_UP = "GOING_UP";
	var GOING_DOWN = "GOING_DOWN";

	var STEP = 20;

	var MIN_HEIGHT = 48;
	var MAX_HEIGHT = 540;

	var self = Front;

	self.gResizeInterval;
	self.RESIZE_INTERVAL = 10;

	self.reasons = null;
	self.cloud = null;
	self.img = null;

	self.rState = null;

	Front.initialise = function () {

		self.rState = DOWN;
		self.rHeight = MIN_HEIGHT;

		self.reasons = Utils.getElement( "_reasons" );
		self.cloud = Utils.getElement( "_cloud" );

		self.img = Utils.getFirstElementByTagName( Utils.getFirstElementByTagName( self.cloud, "a" ), "img" );

		self.resize();

		self.cloud.style.visibility = "visible";

		self.gResizeInterval = setInterval(

			self.resize,
			self.RESIZE_INTERVAL
		);
	}

	Front.resize = function () {

		if ( false ) {}

		else if ( self.rState == GOING_UP ) {

			self.rHeight += STEP;

			if ( self.rHeight > MAX_HEIGHT ) {

				self.rHeight = MAX_HEIGHT;
				self.rState = UP;

				Utils.getFirstElementByTagName( self.reasons, "table" ).style.display = "block";
			}
		}
		else if ( self.rState == GOING_DOWN ) {

			self.rHeight -= STEP;

			if ( self.rHeight < MIN_HEIGHT ) {

				self.rHeight = MIN_HEIGHT;
				self.rState = DOWN;
			}
		}

		var height = Utils.getViewPortSize()[ 1 ] - self.rHeight;

		self.img.style.height = ( height < 592 ) ? ( height - 144 ) + "px" : 448 + "px"

		self.reasons.style.height = self.rHeight + "px";

		if (	( self.rState == UP )
			 ||	( self.rState == GOING_UP )	){

			window.scrollBy( 0, 1000 );
		}
	}

	Front.toggleWhy = function () {

		switch ( self.rState ) {

			case UP :

				self.rState = GOING_DOWN;

				Utils.getFirstElementByTagName( self.reasons, "table" ).style.display = "none";

				break;

			case DOWN :

				self.rState = GOING_UP;

				break;
		}
	}

})();


