/////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////// VARIABLES //////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////

var menuweight = 115;
var HideDuration = 400;
var HideChapDuration = 400;
var columnsweight = 300;
var offsetColumns = 95;
var NbColumns = 0;
var NbContent = 0;

var WindowWidth = (window.getWidth()-menuweight)/columnsweight;
var NbrColumnsP = WindowWidth.toInt()+1;

var Link = "";

var myFxPrev;
var myFxNext;

var LOCATION = document.location.href;
if(LOCATION.contains('#')){
	var ArrayLoc = LOCATION.split('#');
	LOCATION = ArrayLoc[0];
}

window.addEvent('domready', function() {

	var prevzone = $('Prev').getElement('.Zone');
	var nextzone = $('Next').getElement('.Zone');
	
	
	myFxPrev = new Fx.Tween(prevzone, {duration: 250, transition: Fx.Transitions.Quart.easeOut, wait: false}).set('width', 0);
	myFxNext = new Fx.Tween(nextzone, {duration: 250, transition: Fx.Transitions.Quart.easeOut, wait: false}).set('width', 0);
	

	// set bgr height
	setbgr();

	
	window.addEvent('resize', function() {
		setbgr();
		WindowWidth = (window.getWidth()-menuweight)/columnsweight;
		NbrColumnsP = WindowWidth.toInt()+1;
		createEmpty();
	});
	
	var MenuBtn = $('MenuBox').getElements('a');
	
	MenuBtn.each(function(bt){
		bt.addEvents({
			'click': function(){
				MenuBtn.set({'class':''});
				bt.set({'class':'select'});
			}
		})
	});
	
	
	//----------------------------------
	//	Liens
	//----------------------------------

	unFocus.History.addEventListener('historyChange', historyListener);
	this.historyListener(unFocus.History.getCurrent());
	
	//----------------------------------
	//	Load Page
	//----------------------------------
	
	
	setLink(document);
	createEmpty();
	
	$('Footer').addEvents({
		'mousewheel': function(e){
			e.stop(); // prevent the mousewheel from scrolling the page.
			if (e.wheel < 0){
				showPrev();
			} else {
				showNext();
			}
		},
		'mouseenter': function(){
			setTips(this,'mousescroll');
		}
	});
	$$('a').addEvents({
		'dblclick': function(event){
			event.preventDefault();
		}
	})
});



/////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////// LOG BLOG ///////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////


function logBlog(){
	var req = new Request({
		url: 'blog.log.php',
		async: false,
		method: 'post',
		onSuccess: function(Reponse) {
			if (Reponse=='log'){
				var cparams = 'page=blog.welcome';
				var Link = { from: $('BlogForm').getParent('.Column'), params: cparams };
				LoadColumns(Link);
				$('BlogLog').setStyles({'display':'none'});
				setbgr();
			}
		}
	}).send('f_login='+$('f_login').get('value')+'&f_password='+$('f_password').get('value'));
}

function logoutBlog(){
	var req = new Request({
		url: 'blog.logout.php',
		async: false,
		method: 'post',
		onSuccess: function(Reponse) {
			if (Reponse=='logout'){
				$('BlogLog').setStyles({'display':'block'});
				$('BlogLogOut').setStyles({'display':'none'});
				setbgr();
			}
		}
	}).send();
}




/////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////// SET BGR ////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////


function setbgr(){

	$('BgrMenu').setStyles({
		'height': window.getHeight() - $('MenuBox').getHeight() - offsetColumns - 218 +'px'
	});
	
	$$('.Zone').setStyles({ 'height': window.getHeight() - offsetColumns +'px' });
	$('Prev').setStyles({ 'height': window.getHeight() - offsetColumns +'px' });
	$('Next').setStyles({ 'height': window.getHeight() - offsetColumns +'px' });
	
	$$('.Column').each(function(col){
		setbgrfor(col);
	});
}

function setbgrfor(div){
	
		var ColumnContent	= div.getElement('.ColumnContent');
		var bgr				= ColumnContent.getElement('.Bgr');
		var content			= ColumnContent.getElement('.Content');
		var ToScrolTarget	= content.getElement('.ToScrolTarget');
		var ToScrol			= content.getElement('.ToScrol');
		var scrollbar		= content.getElement('.scrollbar-vert');
		var searchBox		= div.getElement('.SearchBox');
		if(searchBox && searchBox.getStyle('display')=="block"){
			var LessHeight = searchBox.getCoordinates().height;
		} else {
			var LessHeight=0;
		}
		if(content.get('text')==""){
			var ContentHeight=0;
		} else {
			var ContentHeight=ToScrol.getCoordinates().height;
		}
		try{
			if(ToScrol.getCoordinates().height > window.getHeight()-(offsetColumns+LessHeight)){
				ContentHeight = window.getHeight()-(offsetColumns+LessHeight);
				scrollbar.setStyles({'visibility':'visible'});
				// alert('1');
			} else {
				ContentHeight = ToScrol.getCoordinates().height;
				scrollbar.setStyles({'visibility':'hidden'});
				// alert('2');
			}
			ToScrolTarget.setStyles({
				'height': ContentHeight +'px'
			});
			scrollbar.setStyles({
				'height': ContentHeight - 6 +'px'
			});
		} catch(e){}
		
		content.setStyles({
			'height': ContentHeight +'px'
		});
		if (window.getHeight() - ContentHeight - offsetColumns<2){
			bgr.setStyles({
				'display': 'none'
			});
		} else {
			bgr.setStyles({
				'display': 'block',
				'height': window.getHeight() - ContentHeight - offsetColumns - LessHeight +'px'
			});
		}
		
		// alert(window.getHeight() - ContentHeight - offsetColumns);
}


function ChangeSection(url){
	removeLoadDelay();
	var cont = document.getElements('div[class=Column]');
	if(cont.length>0){
		HideChapDuration = HideDuration-(cont.length*10);
		var i=0;
		cont.each(function(obj){
			(function(){ hideColumn(obj); }).delay((HideChapDuration*i)-((HideChapDuration/2)*i));
			i++;
		});
		(function(){ LoadColumns(url); }).delay(((HideChapDuration*i)-((HideChapDuration/2)*i))+(HideChapDuration));
	} else {
		LoadColumns(url);
	}
}

function LoadColumns(url){

//	-------------
//	-- Request --
//	-------------
	var Result;
	var cUrl = 'data.php?'+url.params;
	
	var req = new Request.HTML({
		url:cUrl,
		async: false,
		onSuccess: function(html) {
			Result = html;
		},
		onFailure: function() {
		}
	}).send();
	
	
	$('Target').adopt(Result);
	
	var Columns = $('Target').getElements('.Column');
	
	for(var i=Columns.length-1; i>=0; i--){
		var Column = Columns[i];
		
		if(url.from=="menu" || !$(url.from)){
			url.from = "menu";
			var froms = document.getElements('.hide');
			if(froms.length>0){
				var from = froms[froms.length-1];
				Column.injectAfter(from);
			} else {
				Column.injectTop($('Content'));
			}
		} else {
			Column.injectAfter(url.from);
		}
		
		NbContent++;
		
		Column.set({'alt':'/'+url.UrlString});
		
		var ColumnContent			= Column.getElement('.ColumnContent');
		var Content					= ColumnContent.getElement('.Content');
		var Header					= ColumnContent.getElement('.Header');
		var Footer					= ColumnContent.getElement('.Footer');
		var Bgr						= ColumnContent.getElement('.Bgr');
		var ContentSrollTarget		= ColumnContent.getElement('.ToScrolTarget');
		var ContentSroll			= ContentSrollTarget.getElement('.ToScrol');
		var close					= new Element('div',{'class':'Close'}).inject(Header);
		
		var slideTarget				= ColumnContent.getElement('.slideTarget');
		
		
		
		// Scroll

		var scroll = new Element('div', { id: 'scrollbar1', 'class': 'scrollbar-vert' }).injectInside(Content);
		var handle = new Element('div', { id: 'handle1', 'class': 'handle-vert' }).injectInside(scroll);		
		var scr = new ScrollBar(ContentSrollTarget, scroll, handle);
		window.addEvent('resize', function() {
			scr.update();
		});
		
		// Fin scroll
		
		setbgrfor(Column);
		
		if (url.from != 'menu' && url.from.getCoordinates().left + url.from.getCoordinates().width > window.getCoordinates().width){
			showNext();
		}
		var myHorizontalSlide = new Fx.Slide(ColumnContent, {
			mode: 'horizontal',
			duration:HideDuration,
			transition: Fx.Transitions.Quint.easeOut
			}).hide();
			
		myHorizontalSlide.slideIn();

		
		setLink(Content);
		scr.update();
		setEvent(ContentSroll, Column, scr,myHorizontalSlide,slideTarget);
		
		setPrevNext();
		
	}
	
	if (url.close){
		url.close.dispose();
	}
	
}

function setAudioPlayers(Column){
	
	var players = Column.getElements('.audioplayer');
	players.each(function(player){
		
		player.removeClass('audioplayer');
		player.setStyles({'margin-top':'5px'})
		var path = player.get('text');
		player.empty();
		ap_insertPlayer(player, path);
	});
		
}
function setCommentForm(Column){
	var commentDivs = Column.getElements('.new_comment_div');
	commentDivs.each(function(commentDiv){
		makeCommentForm(commentDiv);
	});
}
function Slide(params){
	
	(params.i==params.Imgs.length-1) ? params.i = 0 : params.i++;
	var ImgToLoad = params.Imgs[params.i];
	var OldImg = params.Target.getElement('img');

	var myImages = new Asset.images([ImgToLoad], {
	    onComplete: function(){
			// myImages.set({'opacity':0});
			$('Target').adopt(myImages);
			
			var myFx = new Fx.Tween(OldImg,{
				duration: 200,
				transition: Fx.Transitions.Quart.easeIn,
				onComplete: function(){
					myImages.injectAfter(OldImg);
					var removedElement = OldImg.dispose();
					setbgrfor(params.Column);
					params.scr.update();
					var cImages = params.Target.getElement('img');
					var myFxin = new Fx.Tween(cImages,{
						duration: 200,
						transition: Fx.Transitions.Quart.easeOut,
						onComplete: function(){
							var params2 = {Column:params.Column,i:params.i,Target: params.Target,Imgs: params.Imgs,scr: params.scr};
							Slide.delay(2000, this, params2);
							}
						});
					myFxin.start('opacity', 1);
				}
			});
			myFx.start('opacity', 0);

		}
	});

}
		
function createEmpty(){
	NBColumns = document.getElements('.Column');
	if(NbrColumnsP>NbColumns){
		var nbToCreate = NbrColumnsP - NbColumns ;
		for (var i=0; i<nbToCreate; i++){
			var Column 			= new Element('div',{'class':'Column empty'});
			var ColumnContent	= new Element('div',{'class':'ColumnContent'}).inject(Column);
			var Header 			= new Element('div',{'class':'Header'}).inject(ColumnContent);
			var Content 		= new Element('div',{'class':'Content'}).inject(ColumnContent);
			var Bgr		 		= new Element('div',{'class':'Bgr'}).inject(ColumnContent);
			var Footer 			= new Element('div',{'class':'Footer'}).inject(ColumnContent);
			Column.injectInside($('Content'));
			setbgrfor(Column);
			
			NbColumns++;
			
		}
	}
}
		
function hideColumn(div){
	NbContent--;
	NbColumns--;
	createEmpty();
	div.set({'class':'Column hide'});
	setPrevNext();
	var ColumnContent = div.getElement('.ColumnContent');
	var myHorizontalSlide = new Fx.Slide(ColumnContent, {mode: 'horizontal',duration:HideChapDuration}).slideOut();
}

function showColumn(div){
	NbContent++;
	NbColumns++;
	createEmpty();
	div.set({'class':'Column'});
	setPrevNext();
	var ColumnContent = div.getElement('.ColumnContent');
	var myHorizontalSlide = new Fx.Slide(ColumnContent, {mode: 'horizontal',duration:HideDuration,transition: Fx.Transitions.Quint.easeOut}).hide();
	myHorizontalSlide.slideIn();
}

function setPrevNext(){
	if(document.getElements('.hide').length>0){
		$('Prev').setStyles({'width': '36px'});
		$('Prev').removeEvents('click','mouseenter');
		$('Prev').addEvents({
			'click': function(){
				showPrev();
			},
			'mouseenter': function(){
				myFxPrev.start('width', '36px');
				setTips(this,'array');
			 },
			'mouseleave': function(){
				myFxPrev.start('width', '0px');
			}
		})
	} else {
		$('Tips').setStyles({'visibility':'hidden'});
		myFxPrev.set('width', '0px');
		$('Prev').setStyles({'width': '0px'});
		$('Prev').removeEvents('click');
		$('Prev').removeEvents('mouseenter');
		$('Prev').removeEvents('mouseleave');
	}
	
	var show = document.getElements('div[class=Column]');
	if(show.length>0){
		$('Next').setStyles({'width': '36px'});
		$('Next').removeEvents('click','mouseenter');
		$('Next').addEvents({
			'click': function(){
				showNext();
			},
			'mouseenter': function(){
				myFxNext.start('width', '36px');
				setTips(this,'array');
			 },
			'mouseleave': function(){
				myFxNext.start('width', '0px');
			}
		});
	} else {
		$('Tips').setStyles({'visibility':'hidden'});
		myFxNext.set('width', '0px');
		$('Next').setStyles({'width': '0px'});
		$('Next').removeEvents('click');
		$('Next').removeEvents('mouseenter');
		$('Next').removeEvents('mouseleave');
	}
}

function showPrev(){
	var hide = document.getElements('.hide');
	var toShow = hide[hide.length-1];
	showColumn(toShow);
}

function showNext(){
	var show = document.getElements('div[class=Column]');
	var toshow = show[0];
	hideColumn(toshow);
}

function closeColumn(div){
	
	NbContent--;
	NbColumns--;
	createEmpty();
	
	var ColumnContent = div.getElement('.ColumnContent');
	
	ColumnContent.setStyles({'visibility':'hidden'});
	var myHorizontalSlide = new Fx.Slide(ColumnContent, {mode: 'horizontal',duration:HideDuration}).slideOut();
	myHorizontalSlide.addEvent('complete', function() {
		var removedElement = div.dispose();
	});
}

function checkVisibility(div){
	if (div.getCoordinates().left + div.getCoordinates().width > window.getCoordinates().width){
		showNext();
		(function(){ checkVisibility(div); }).delay(HideDuration);
	}
}

var SlideParam = new Class({
    initialize: function(Column,i,Target,Imgs,scr){
        this.Column = Column;
        this.i = i;
        this.Target = Target;
        this.Imgs = Imgs;
        this.scr = scr;
    }
});

function setEvent(ContentSroll, Column, scr,myHorizontalSlide,slideTarget){

	var Header = Column.getElement('.Header');
	var Content = Column.getElement('.Content');

	var imgs = ContentSroll.getElements('img');
	imgs.each(function(img){
		img.addEvents({
			'load': function(){
				setbgrfor(Column);
				scr.update();
			}
		});
	});
	var close = Column.getElement('.Close');
	close.addEvents({
		'click': function(){
			closeColumn(Column);
		},
		'mouseenter': function(){
			setTips(this,'close');
		}
	});
	if(myHorizontalSlide){
		myHorizontalSlide.addEvents({
			'complete': function(){
				if(!Column.getElement('.stop')){
					checkVisibility(Column);
				}
			}
		})
	}
	
	// slide
	
	if(slideTarget){
		var slide_id	= new String(slideTarget.get('id'));
		var Imgs		= eval('Img'+slide_id);
		var cIm			= slideTarget.getElement('img');
		
		var url = slideTarget.get('alt');
		var open = new Element('a',{'class':'OpenSlide iLinks','href':url}).inject(Header);
		setLink(Header);
		open.addEvents({
			'click':function(event){
				event.preventDefault();
				// var removedElement = Column.dispose();
			},
			'mouseenter': function(){
				setTips(this,'openslide');
			}
			});
		var params = {Column:Column,i:0,Target: slideTarget,Imgs: Imgs,scr: scr};
		
		var myImages = new Asset.images([Imgs[0]], {
		    onComplete: function(){
		        Slide.delay(2000,this, params);
		    }
		});
	}
	
	// Options
	
	var TargetOptions = Column.getElement('.Option');
	if(TargetOptions){
		var Options = new Array();
		var OptionChilds = TargetOptions.getElements('div');
		OptionChilds.each(function(child){
			Options[child.get('class')] = child.get('alt');
		})
		
		if(Options['load']){
			var Params = { Column: Column, link: Options['load'], option: TargetOptions.getElements('.load') };
			OptionsLoad.delay(2000, Column, Params);
		}
		if(Options['press']){
			DirEvents(Column,scr);
		}
		if(Options['search']){
			var search = new Element('a',{'class':'SearchBt'}).inject(Header);
			
			var searchBox = Column.getElement('.SearchBox');
			var form = searchBox.getElement('form');
			var searchBt = searchBox.getElement('.searchBt');
			var input = searchBox.getElement('.searchInput');
			var SearchMoreBts = searchBox.getElement('.SearchMoreBts');
			var SearchMoreBt = searchBox.getElement('.SearchMoreBt');
			var SearchLessBt = searchBox.getElement('.SearchLessBt');
			var SResult = searchBox.getElement('.SResult');
			 
			var SearchMore = searchBox.getElement('.SearchMore');
			
			form.addEvent('submit',function(e){
				e.stop();
				sendSearch(this,Column);
			});
			searchBt.addEvent('click', function(){sendSearch(form,Column);});
			
			search.addEvents({
				'click': function(){
					searchBt.setStyle('cursor', 'pointer');
					if(searchBox && searchBox.getStyle('display')=="block"){
						searchBox.setStyles({'display':'none'});
					} else {
						searchBox.setStyles({'display':'block'});
					}
					setbgrfor(Column);
					scr.update();
				},
				'mouseenter': function(){
					setTips(this,'search');
				}
			})
			
			// SearchMoreBt.addEvents({
			// 	'click': function(){
			// 		if(SearchMore && SearchMore.getStyle('display')=="block"){
			// 			SearchMore.setStyles({'display':'none'});
			// 			SearchMoreBts.setStyles({'display':'block'});
			// 		} else {
			// 			SearchMore.setStyles({'display':'block'});
			// 			SearchMoreBts.setStyles({'display':'none'});
			// 		}
			// 		setbgrfor(Column);
			// 		scr.update();
			// 	}
			// });
			// SearchLessBt.addEvents({
			// 	'click': function(){
			// 		var inf = form.getElements('input[type=checkbox]');
			// 		var ins = "";
			// 		var fors = "";
			// 		inf.each(function(i){
			// 			if (i.checked == true){
			// 				if (i.get('name') == 'in[]')
			// 					ins += i.get('value')+" ";
			// 				if (i.get('name') == 'for[]')
			// 					fors += i.get('value')+" ";
			// 			}
			// 		});						
			// 		if (ins != "" || fors != ""){
			// 			var s = 'Search ';
			// 			if (ins != ""){
			// 				s += "in "+ins;
			// 			}
			// 			if (fors != ""){
			// 				s += "for "+fors;
			// 			}
			// 			SResult.set({'text':s+" | "});
			// 		} else {
			// 			SResult.set({'text':""});
			// 		}
			// 		SearchMore.setStyles({'display':'none'});
			// 		SearchMoreBts.setStyles({'display':'block'});
			// 		setbgrfor(Column);
			// 		scr.update();
			// 	}
			// });
		}
	}
	
	setAudioPlayers(Column);
	setCommentForm(Column);

}
var sendSearch = function(form,Column){
	form.set('send', {onComplete: function(response) { 
		// alert(response);
		var cparams = 'page=search&'+response;
		var Link = { from: Column, params: cparams };
		LoadColumns(Link);
	}});
	//Send the form.
	form.send();
}
function OptionsLoad(Params){
	if(Params.option.get('alt') != ""){
		if(Params.Column.getCoordinates().left + Params.Column.getCoordinates().width < window.getCoordinates().width){
			var Column 			= new Element('div',{'class':'Column empty'});
			var ColumnContent	= new Element('div',{'class':'ColumnContent'}).inject(Column);
			var Header 			= new Element('div',{'class':'Header'}).set({'html':'<p>loading...</p>'}).inject(ColumnContent);
			var Content 		= new Element('div',{'class':'Content'}).inject(ColumnContent);
			var Bgr		 		= new Element('div',{'class':'Bgr loading'}).inject(ColumnContent);
			var Footer 			= new Element('div',{'class':'Footer'}).inject(ColumnContent);
			Column.injectAfter(Params.Column);
			setbgrfor(Column);
			
			(function(){
				var ALink = Params.link.split('?');
				var cparams = ALink[1];
				var Link = { from: Params.Column, params: cparams };
				Column.dispose();
				LoadColumns(Link);
			}).delay(1500);
			
			
		} else {
			OptionsLoad.delay(500, Params.Column, Params);
		}
	}
}

function removeLoadDelay(){
	var OptionsLoad = $$('.load');
	OptionsLoad.each(function(mc){
		mc.set({'alt':''});
	});
}

var iLink = new Class({
    initialize: function(bt){
		var link = bt.get('href');
		var title = replacetext(bt.get('text'));
		
		var ALink = link.split('?');
		var cparams = ALink[1];
		var tparams = cparams.split('&');
		var lVar = new Array();
		var lValue = new Array();
		var UrlString = new String();
		var close = '';
		tparams.each(function(p){
			var xparams = p.split('=');
			lVar.push(xparams[0]);
			lValue.push(xparams[1]);
			UrlString += xparams[1]+"/";
		});
		UrlString += title;
		this.UrlString = UrlString;
		if(bt.getParent('.Column')){
			this.from = bt.getParent('.Column');
		} else {
			this.from = "menu";
		}
		if (cparams.contains('close=1')){
			this.close = this.from;
		}
		this.params = cparams;
    }
});
function replacetag(expr,a,b) {
	var i = 0;
	while (i != -1) {
		i=expr.indexOf(a,i);
		if (i>=0) {
			expr = expr.substring(0,i)+b+expr.substring(i+a.length);
			i += b.length;
		}
	}
	return expr;
}
function replacetext(text) {
	text = replacetag(text,' ','_');
	return text;
}

function setLink(cible){
	var iLinks = cible.getElements('a[class$=iLinks]');

	iLinks.each(function(bt){
		bt.addEvents({
			'click': function(event){
			    event.preventDefault();
				Link = new iLink(bt);
				// var title = replacetext(bt.get('text'));
				document.location.href = LOCATION+'#/'+Link.UrlString;
				// bt.set({'href': LOCATION+'#/'+Link.UrlString+title});
			}
		})
	});
}

historyListener = function(historyHash) {
	if (Link != ""){
		if(Link.from=='menu'){
			ChangeSection(Link);
		} else {
			LoadColumns(Link);
		}
	} else {
		if (historyHash != ""){
			var div = document.getElement('div[alt='+historyHash+']');
			if (div){
				if (div.get('class').contains('hide')){
					var nbstoshow = div.getAllNext('.hide').length+1;
					for (var n=0; n<nbstoshow; n++){
						showPrev();
					}
				} else {
					var nbtohide = div.getAllPrevious('div[class=Column]').length;
					for (var n=0; n<nbtohide; n++){
						showNext();
					}
				}
			} else {
				Link = { from: 'menu', params: 'url='+historyHash };
				ChangeSection(Link);
			}
		}
	}
	Link = "";
	stateVar = historyHash;
	var paramsstring = historyHash.split('/');
	var title = paramsstring[paramsstring.length-1];
	
	document.title = 'A space for live art | '+title;
};

function DirEvents(Column){
	var Dirs = Column.getElements('.dir');
	Dirs.each(function(d){
		d.addEvents({
			'click': function(){
				var folder = $('d'+d.get('id'));
				var img = d.getElement('img');
				if (folder.getStyle('display') == 'none'){
					folder.setStyles({'display':'block'});
					img.set({'src':'images/icon/ico_folder_open.gif'});
				} else {
					folder.setStyles({'display':'none'});
					img.set({'src':'images/icon/ico_folder_close.gif'});
				}
				setbgrfor(Column);
				scr.update();
			}
		})
	});
}


//-------------------------------------------------------------------------------------
//------------------------------- Petites fonctions -----------------------------------
//-------------------------------------------------------------------------------------

var TipsActif = new Array();
var TipsMes = new Array();

TipsMes["close"] = "Close any column whenever you want";
TipsMes["openslide"] = "splite this slideshow...";
TipsMes["mousescroll"] = "Use your mouse's weel to scroll the page...";
TipsMes["array"] = "Use this to scroll the page";
TipsMes["search"] = "Use this to search content";

function setTips(div, mess){
	// _mouseX = page.x;
	// _mouseY = page.y;
	var ev = window.event
	_mouseX = ev.clientX;
	_mouseY = ev.clientY;

	// (function(){ checkTips(mess); }).delay(1000);

	var Tips = $('Tips');
	Tips.set({'html':TipsMes[mess]});
	var TipsLeft = (ev.clientX+15+Tips.getCoordinates().width<window.getWidth()) ? ev.clientX+15 : ev.clientX-Tips.getCoordinates().width-15;
	var TipsTop = (ev.clientY+15+Tips.getCoordinates().height<window.getHeight()) ? ev.clientY+15 : ev.clientY-Tips.getCoordinates().height-15;
	Tips.setStyles({
		'top': TipsTop+'px',
		'left': TipsLeft+'px',
		'visibility': 'visible'
	});
	div.addEvents({
		'mouseleave': function(){
			Tips.set({'html':''});
			Tips.setStyles({
				'top': '0px',
				'left': '0px',
				'visibility': 'hidden'
			});
		}});
}

function checkTips(mess){
	if($('Tips').getStyle('visibility')=='visible' && $('Tips').get('text')==TipsMes[mess]){
		TipsActif.push(mess);
	}
}