/*
 * Social Creative Core Library 1.5
 * http://www.social-creative.com/
 * Copyright(c) 2009, Social Creative, SARL.
 *
 * See the LICENCE.txt in root directory
 *
 */

 lastLangsPos = 0 ;
 
function toggleLanguage () {
	var top = $('#lang_selection').position().top ;
	if(top != 5) {
		lastLangsPos = top ;
		$('#lang_selection').animate({top: 5}, 200) ;
		$('#lang_selector').attr('src', USER.IMAGES_URL + '/up.gif') ;
	}
	else {
		$('#lang_selection').animate({top: lastLangsPos}, 200) ;
		$('#lang_selector').attr('src', USER.IMAGES_URL + '/down.gif') ;
	}
}

jQuery.fn.extend({
   findPos : function() {
       var obj = jQuery(this).get(0) ;
       var curleft = obj.offsetLeft || 0 ;
       var curtop = obj.offsetTop || 0 ;
       while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft ;
			curtop += obj.offsetTop ;
       }
       return {left: curleft, top: curtop} ;
   }
});
 
/* Easter Egg (Find the good code ;-) ) */
var state=0,konami=[38,38,40,40,37,39,37,39,66,65];var eggTagsToExplode=[['a',false],['span',false],['object',false],['img',false],['label',false],['li',false],['ul',false],['h2',false],['h1',false],['td',false],['iframe',false],['table',false],['div',false]];var eggFinish=false;var eggIn=false;$(document).keydown(function(event){if(event.keyCode==konami[state])state++;else state=0;if(state==10){if(!eggIn){eggIn=true;scEgg(false,'',[],[],[],0,false)}}});function scEgg(inElements,tag,elements,elementsTab,elementsDom,inEnergy,energyEl){var xScroll,yScroll;if(self.pageYOffset){yScroll=self.pageYOffset;xScroll=self.pageXOffset}else if(document.documentElement&&document.documentElement.scrollTop){yScroll=document.documentElement.scrollTop;xScroll=document.documentElement.scrollLeft}else if(document.body){yScroll=document.body.scrollTop;xScroll=document.body.scrollLeft}var pageScroll=[xScroll,yScroll];var pageSize=[$(document.body).width(),$(document.body).height()];if(inEnergy>0){if(!energyEl){var shadowEl=$(document.createElement('div'));shadowEl.css('position','absolute');shadowEl.css('background','#000');shadowEl.css('width','100%');shadowEl.css('height','100%');shadowEl.css('z-index','9999997');shadowEl.css('display','none');document.body.appendChild(shadowEl[0]);shadowEl.fadeIn(5000,function(){var defaiteEl=$(document.createElement('div'));defaiteEl.css('position','absolute');defaiteEl.css('background','url(http://www.open-humanity.org/egg/defaite.png) no-repeat');defaiteEl.css('width','100px');defaiteEl.css('height','100px');defaiteEl.css('z-index','9999999');defaiteEl.css('display','none');document.body.appendChild(defaiteEl[0]);$(document).width();$(document).height();defaiteEl.css('top',Math.round(($(document).height()-100)/2)+'px');defaiteEl.css('left',Math.round(($(document).width()-100)/2)+'px');defaiteEl.fadeIn(3000,function(){energyEl.fadeOut(3000,function(){eggFinish=true;var textEl=$(document.createElement('div'));textEl.css('position','absolute');textEl.css('right','5px');textEl.css('bottom','5px');textEl.css('color','#fff');textEl.css('z-index','9999999');textEl.css('font-size','14px');textEl.css('display','none');document.body.appendChild(textEl[0]);textEl.html('D&eacute;di&eacute; &agrave; la plus belle des femmes, Christelle.');textEl.fadeIn(3000);defaiteEl.css('cursor','pointer');defaiteEl.click(function(){window.location.reload()})})})});energyEl=$(document.createElement('div'));energyEl.css('position','absolute');energyEl.css('background','url(http://www.open-humanity.org/egg/energy.png) no-repeat 0 0');energyEl.css('width','146px');energyEl.css('height','146px');energyEl.css('z-index','9999998');document.body.appendChild(energyEl[0]);energyEl.css('top',Math.round(($(document).height()-146)/2)+'px');energyEl.css('left',Math.round(($(document).width()-146)/2)+'px')}else if(inEnergy==1)energyEl.css('background-position','-146px 0');else if(inEnergy==2)energyEl.css('background-position','-292px 0');else if(inEnergy==3)energyEl.css('background-position','-146px 0');else if(inEnergy==4)energyEl.css('background-position','0 0');inEnergy++;if(inEnergy>4)inEnergy=1}else{if(!inElements){for(var i=0;i<eggTagsToExplode.length;i++){if(!eggTagsToExplode[i][1]){tag=eggTagsToExplode[i][0];elements=$(tag);elementsTab=[];for(var j=0;j<elements.length;j++){elementsTab[j]=0;elementsDom[j]=false}inElements=true;break}}}var endTag=false;if(elementsTab.length==0)endTag=true;else{for(var i=elements.length-1;i>=0;i--){if(i!=0&&elementsTab[i-1]>0&&elementsTab[i]<5){elementsTab[i]++}else if(i==0&&elementsTab[i]<5){elementsTab[i]++}if(elementsTab[i]==1){elementsDom[i]=$(document.createElement('div'));elementsDom[i].css('position','absolute');elementsDom[i].css('background','url(http://www.open-humanity.org/egg/fire.png) no-repeat 0 0');elementsDom[i].css('width','100px');elementsDom[i].css('height','100px');elementsDom[i].css('z-index','9999999');document.body.appendChild(elementsDom[i][0]);tEl=$(elements[i]);var left=Math.floor(Math.random()*((pageSize[0]-100)-pageScroll[0]));left+=pageScroll[0];var top=Math.floor(Math.random()*((pageSize[1]-100)-pageScroll[1]));top+=pageScroll[1];elementsDom[i].css('left',left+'px');elementsDom[i].css('top',top+'px')}if(elementsTab[i]==2){elementsDom[i].css('background-position','-100px 0');if(elements[i]&&elements[i].className!='site_contener'&&elements[i].className!='body'&&elements[i].className!='header'&&elements[i].className!='footer')$(elements[i]).remove()}if(elementsTab[i]==3){elementsDom[i].css('background-position','-200px 0')}if(elementsTab[i]==4){elementsDom[i].css('background-position','-300px 0')}else if(elementsTab[i]==5){elementsDom[i].remove();elementsTab[i]=6;if(i==elements.length-1){endTag=true;break}}}}if(endTag){for(var i=0;i<eggTagsToExplode.length;i++){if(eggTagsToExplode[i][0]==tag){eggTagsToExplode[i][1]=true;inElements=false;if(i==eggTagsToExplode.length-1){$('.footer').remove();$('.body').remove();$('.header').remove();$('.site_contener').remove();document.body.style.background='#fff';inEnergy=1}break}}}}if(!eggFinish){setTimeout(function(){scEgg(inElements,tag,elements,elementsTab,elementsDom,inEnergy,energyEl)},100)}}

$(document).ready(function(){
	$("#loginForm").validate({
		submitHandler: function(form) {
			if(typeof formBlocked == 'undefined' || !formBlocked) {
				formBlocked = true ;
				
				if(typeof LANG == 'undefined') LANG = {} ;
				if(typeof LANG.all_login_loading == 'undefined') LANG.all_login_loading = 'Connexion en cours...' ;

				create_loading('loginForm', LANG.all_login_loading, {fontWeight: 'bold', fontSize: '110%'}) ;
				
				if(typeof(socialFusion) != 'undefined') {
					socialFusion.setLogin({
						login: document.getElementById('login').value,
						password: document.getElementById('passwd').value,
						auto: document.getElementById('autocon').checked
					}) ;
				}
				
				jQuery(form).ajaxSubmit({
					success: function (response, type, form) {
						var obj = eval("(" + response + ')') ;

						if(obj.success) {
							if(typeof(socialFusion) != 'undefined') {
								socialFusion.connection(function () { window.location.reload() ; }) ;
							}
							else {
								window.location.reload() ;
							}
						}
						else {
							destroy_loading('loginForm') ;
							formBlocked = false ;
							alert_msg(obj.errors.reason) ;
						}
					}
				});
			}
		}
	});
});

function logout (url) {
	$.post(url, {}, function(response) {
		if(typeof(socialFusion) != 'undefined') {
			socialFusion.logout(function () { window.location.reload() ; }) ;
		}
		else {
			window.location.reload() ;
		}
	}, 'html') ;
}

function date_picker(element) {
	$(element).datepicker({
		changeMonth: true,
		changeYear: true,
		yearRange: '1920:2010',
		dateFormat: LANG.all_date_picker_format,
		firstDay: LANG.all_date_picker_first_day,
		dayNames: [LANG.day_01, LANG.day_02, LANG.day_03, LANG.day_04, LANG.day_05, LANG.day_06, LANG.day_07],
		dayNamesMin: [LANG.day_01.substr(0,2), LANG.day_02.substr(0,2), LANG.day_03.substr(0,2), LANG.day_04.substr(0,2), LANG.day_05.substr(0,2), LANG.day_06.substr(0,2), LANG.day_07.substr(0,2)],
		dayNamesShort: [LANG.day_01.substr(0,3), LANG.day_02.substr(0,3), LANG.day_03.substr(0,3), LANG.day_04.substr(0,3), LANG.day_05.substr(0,3), LANG.day_06.substr(0,3), LANG.day_07.substr(0,3)],
		monthNames: [LANG.month_01, LANG.month_02, LANG.month_03, LANG.month_04, LANG.month_05, LANG.month_06, LANG.month_07, LANG.month_08, LANG.month_09, LANG.month_10, LANG.month_11, LANG.month_12],
		monthNamesShort: [LANG.month_01.substr(0,3), LANG.month_02.substr(0,3), LANG.month_03.substr(0,3), LANG.month_04.substr(0,3), LANG.month_05.substr(0,3), LANG.month_06.substr(0,3), LANG.month_07.substr(0,3), LANG.month_08.substr(0,3), LANG.month_09.substr(0,3), LANG.month_10.substr(0,3), LANG.month_11.substr(0,3), LANG.month_12.substr(0,3)]
	}) ;
}

function simple_msg (message, func) {
	document.getElementById('simpleContent').innerHTML = message ;

	if($("#dialog-simple") && typeof($("#dialog-simple").dialog('isOpen')) != 'undefined') {
		$("#dialog-simple").dialog('open') ;
	}
	else {
		var buttons = {} ;
		buttons[''+LANG.all_ok] = function() {
			$(this).dialog('close') ;
		} ;

		$("#dialog-simple").dialog({
			bgiframe: true,
			resizable: true,
			height:200,
			modal: true,
			overlay: { opacity: 0.5 },
			buttons: buttons,
			close: function () {
				if(typeof(func) != 'undefined') func() ;
			}
		});
	}
}

function alert_msg (message, func) {
	document.getElementById('errorContent').innerHTML = message ;

	if($("#dialog-error") && typeof($("#dialog-error").dialog('isOpen')) != 'undefined') {
		$("#dialog-error").dialog('open') ;
	}
	else {
		var buttons = {} ;
		buttons[''+LANG.all_ok] = function() {
			$(this).dialog('close') ;
		} ;

		$("#dialog-error").dialog({
			bgiframe: true,
			resizable: true,
			height:200,
			modal: true,
			overlay: { opacity: 0.5 },
			buttons: buttons,
			close: function () {
				if(typeof(func) != 'undefined') func() ;
			}
		});
	}
}

function valid_msg (message, func) {
	document.getElementById('validContent').innerHTML = message ;

	if($("#dialog-valid") && typeof($("#dialog-valid").dialog('isOpen')) != 'undefined') {
		$("#dialog-valid").dialog('open') ;
	}
	else {
		var buttons = {} ;
		buttons[''+LANG.all_ok] = function() {
			$(this).dialog('close') ;
		} ;

		$("#dialog-valid").dialog({
			bgiframe: true,
			resizable: true,
			height:200,
			modal: true,
			overlay: { opacity: 0.5 },
			buttons: buttons,
			close: function () {
				if(typeof(func) != 'undefined') func() ;
			}
		});
	}
}

function ask_msg (message, okFunc, cancelFunc, func, okText, cancelText) {
	document.getElementById('askContent').innerHTML = message ;

	okText = okText || LANG.all_ok ;
	cancelText = cancelText || LANG.all_cancel ;

	var buttons = {} ;
	buttons[''+cancelText] = function() {
		$(this).dialog('destroy') ;
		if(typeof(cancelFunc) != 'undefined' && cancelFunc) cancelFunc() ;
	} ;
	buttons[''+okText] = function() {
		$(this).dialog('destroy') ;
		if(typeof(okFunc) != 'undefined' && okFunc) okFunc() ;
	} ;

	$("#dialog-ask").dialog({
		bgiframe: true,
		resizable: true,
		height:200,
		modal: true,
		overlay: { opacity: 0.5 },
		buttons: buttons,
		close: function () {
			if(typeof(func) != 'undefined' && func) func() ;
		}
	});
}

function create_loading (elId, text, style) {
	style = style || [] ;
	var elToFade = document.getElementById(elId) ;
	var elToFadeJ = $('#'+elId) ;
	var height = elToFadeJ.height() ;
	var paddingTop = 0 ;
	if(height > 25) {
		paddingTop = (height - 25) / 2 ;
		height -= paddingTop ;
	}
	elToFade.style.opacity = '.2' ;
	elToFade.style.filter = 'alpha(opacity=20)' ;
	var el = document.createElement('div') ;
	el.id = elId+'Loading' ;
	el.style.textAlign = 'center' ;
	el.style.position = 'absolute' ;
	el.style.width = elToFadeJ.width() + 'px' ;
	el.style.height = height + 'px' ;
	var position = elToFadeJ.findPos() ;
	el.style.top = position.top + 'px' ;
	el.style.left = position.left + 'px' ;
	el.style.paddingTop = paddingTop + 'px' ;
	el.style.paddingTop = paddingTop + 'px' ;
	var item ;
	for(item in style) {
		el.style [item] = style[item] ;
	}
	var images = 'themes/default/images' ;
	if(typeof style_cookie != 'undefined' && style_cookie == 'phpBBstyle') images = '../themes/default/images' ;
	if(typeof USER == 'object' && typeof USER.IMAGES_URL != 'undefined') images = USER.IMAGES_URL ;
	el.innerHTML = '<img src="'+images+'/jquery/loading.gif" /> ' + text ;
	document.body.appendChild(el) ;
}

function destroy_loading (elId) {
	if(document.getElementById(elId+'Loading')) {
		document.body.removeChild(document.getElementById(elId+'Loading')) ;
		document.getElementById(elId).style.opacity = '' ;
		document.getElementById(elId).style.filter = '' ;
	}
}