/*
scripts
macharron@inpix.ca
Last edit: 2009-04-15
*/

/**************************************
_tabs 				(tabsystem)
_status 			(change user status)
_semaineGros 		(hover semaines in journal grossesse)
_newGros			(show form to create a new grossesse)	
_date 				(calendar input)
_newMember 			(open new member form)
_feed				(load feed for widgets)
_cover 				(put image as cover of an album)
_sort 				(let you change photo position in album)
_corner 			(add round corner on an image)
_picNav				(add navigation on a picture)
_picNavContest		(add navigation on a picture contest)
_contestPic			(picture contest)
_colorBox 			(colorBox gallery)
_select 			(style select input)
_videoMode			(switch between video modes)
_widget				(widgets open/close)
_social				(twitter/facebook)
_tt 				(add a tooltip on a link)
_fileNav 			(control the effect when you select a photo from your album browser)
_menu				(control the menu/submenu actions)
_ticker 			(control the new ticker and article ticker on the home page)
_faq				(display of faq questions)
_adresse			(adresse search)
_situationUser		(situation user pregnant, parent, trying to get pregnant)


_addReceiver
_dialogue
_genericPopUp
_confirmPopUp
_messagerie
_fildenouvelle
_babillard
_enfants
_album
_membre
_monprofil
_amis
_groupesAmis
_grossesse
_comments
_discussions (Comments and discussions)
_confidentialite
_bonnesAdresses
_global
_formUtils
_cookies
_activities
**************************************/
 
/* ########################################################### */
/* vars */
 
var isIe = false;
var isOp = false;
var isSaf = false;
 
/* variable to know if IE */
if(jQuery.browser.msie) { 
    isIe = true;
}
/* variable to know if Opera */
if(jQuery.browser.opera) { 
    isOp = true;
}
/* variable to know if Safari */
if(jQuery.browser.safari) { 
    isSaf = true;
}
 
/* ########################################################### */

var _tabs = {
	tabsLoad : function(){
		jQuery(".tabs li a").click(_tabs.tabsChange); // add fonction on tabs links
		
		jQuery(".tabsContent").hide(); // hide all content
		jQuery(".tabsContent:eq(0)").show(); // show first tab content
	},
	tabsChange : function(){
		var leIndex = jQuery(".tabs li").index(jQuery(this).parent()); // index of clicked link
		var leIndexCurrent = jQuery(".tabs li").index(jQuery(".tabs li.selected")); // index of opened link
		
		if(!jQuery(this).closest("li").hasClass("selected")){ // if not already open
			jQuery(".tabs li").removeClass("selected");
			jQuery(this).closest("li").addClass("selected");
			
			jQuery(".tabsContent:eq(" + leIndexCurrent + ")").slideUp("normal", function(){ // hide curent content
				jQuery(".tabsContent:eq(" + leIndex + ")").slideDown(); // show clicked content
			});
		}
		return false;
	}
};

/* ########################################################### */

var cd = {
	load: function(){
		if(jQuery(".countdown")[0]){
			jQuery(".countdown").each(function() {
		        jQuery(this).focus(function() {
		            var c = jQuery(this).attr("class");
		            countdown.max = parseInt(c.match(/limit_[0-9]{1,}_/)[0].match(/[0-9]{1,}/)[0]);
		            countdown.obj = this;
		            iCount = setInterval(countdown.init,1000);
		        }).blur(function() {
		            countdown.init();
		            clearInterval(iCount);
		        });
		    });
		
		}
	}
};

/* ########################################################### */
// edit personnal status in your sidebar
var _status = {
	statLoad: function(){
		jQuery(".boxStatus .btMod").click(_status.statEdit); // add fonction on edit button
	},
	statEdit: function(){
		// create edit form
		/*
		var leForm = '<form name="frmShortMsg" action="#" method="post" class="iHigh">' +
			'<div class="successBox01" id="successBox01" style="display:none"></div>' +
    		'<div class="errorBox01" id="mainErrorBox" style="display:none"></div>' +
			'<fieldset>' +
				'<p class="iArea">' +
					'<div class="errorBox01" id="errorBoxmember_short_msg" style="display:none"></div>' + 
					'<label for="member_short_msg">Votre status actuel</label> ' + 
					'<textarea id="attribute_member_short_msg_required" name="attribute_member_short_msg_required" cols="50" rows="10">' + 
						jQuery("#profilBox .boxStatus .status").text() + 
					'</textarea>'+
				'</p>' +
			'</fieldset>' +
			'<div id="loader" style="display: none;"><img src="/library/images/temp/worker.gif"/></div>' +
			'<div id="submit" class="submit">' +
				'<ul>' +
					'<li><a href="#" class="btAction" onclick="profilStatusActuelValidation(Form.serialize($(\'frmShortMsg\'))); return false;"><span>Sauvegarder</span></a></li>' +
					'<li><a href="#" class="btAction btSec"><span>Annuler</span></a></li>' +
				'</ul>' +
			'</div>' +
		'</form>';
		
		
		
		jQuery("#profilBox .boxStatus").append(leForm);
		// hide current status
		*/
		
		jQuery(".boxStatus .status").hide();
		jQuery(".boxStatus .status").next().hide();
		jQuery("#frmShortMsg").show();
		// add action on form button
		//jQuery("#profilBox .boxStatus form .btAction:eq(0)").click(_status.statSave);
		
		jQuery(".boxStatus form .btAction:eq(1)").click(_status.statCancel);
		
		return false;
	},
	statSave: function(){ // save info
		str = jQuery("#attribute_member_short_msg").val();
		str = removeHTMLTags(str);
		
		
		if(str.charAt(0) == '«'){ str = str.substr(1) };
		if(str.charAt(str.length-1) == '»'){ str = str.substring(0,(str.length-1));};
		
		if(str !== ""){
			jQuery(".boxStatus .status").html('« ' + str + '&nbsp;»');
			jQuery("#attribute_member_short_msg").val(str);
		}else{
			jQuery(".boxStatus .status").html('« Cliquez sur le crayon pour &eacute;crire un petit message. »');
		}
		_status.statReset();
		return false;
	},
	statCancel: function(){ // cancel
		_status.statReset();
		return false;
	},
	statReset: function(){ // reset by removing form and showing status
		jQuery(".boxStatus form").hide();
		jQuery(".status").next().show();
		jQuery(".boxStatus .status").show();
	}
};

/* ########################################################### */
// list semaine grossesse
var _semaineGros = {
	semLoad: function(){
		jQuery('#semaineGros ul li').hover(_semaineGros.semOver, _semaineGros.semOver);
	},
	semOver: function(){
		if(!jQuery(this).hasClass("selected")){ // if not already selected
			jQuery(this).toggleClass('semCourante');
			jQuery("#semaineGros ul li.selected span").toggle();
		}
	}
};

/* ########################################################### */
// show new grossesse form
var _newGros = {
	load: function(){
		jQuery('#newGrossesse').click(this.showNew);
		jQuery('#grossesse .encours .btMod').click(this.showMod);
	},
	showNew: function(){
		jQuery("#newGrossesse").closest(".submit").slideToggle();
		jQuery('#frmParametresGrossesse').slideToggle();
		_select.load();
		return false;
	},
	showMod: function(){
		jQuery("#currGros").slideToggle();
		jQuery('#frmParametresGrossesse').slideToggle();
		_select.load();
		return false;
	},
	showAccouche: function(){
		jQuery("#currGros").slideToggle();
		jQuery('#frmParametresAccouche').slideToggle();
		return false;
	}
};

/* ########################################################### */
// date, load calendar
var _date = {
	load: function(){
		jQuery("input.iDate").datepicker({ 
	    	monthNames: ['Janvier','F&eacute;vrier','Mars','Avril','May','Juin','Juillet','Ao&ucirc;t','Septembre','Octobre','Novembre','D&eacute;cembre'],
	  		dayNames: ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'],
	  		dayNamesMin: ['Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa'], // more than 2 letters break the display
	  		monthNamesShort: ['Jan','F&eacute;v','Mar','Avr','Mai','Jun','Jui','Ao&ucirc;','Sep','Oct','Nov','D&eacute;c'],
	  		nextText: 'Suivant',
	  		prevText: 'Pr&eacute;c&eacute;dent',
	  		dateFormat: 'yy-mm-dd',
	  		showButtonPanel: false,
	  		currentText: "Aujourd'hui",
	  		closeText: 'Fermer',
	  		changeYear: true,
	  		changeMonth: true,
	  		yearRange: '1930:2050',
	  		showAnim: 'slideDown'
	    });
	}
};

/* ########################################################### */
// show new member form
var _newMember = {
	load: function(){
		//jQuery("#new_member").click(this.show);
	},
	show: function(){
		jQuery("#formToggle").toggle("fast");
		jQuery("#membership form").slideToggle("normal");
		jQuery("#membership form fieldset:eq(0) p:eq(0) input:eq(0)").focus();
		jQuery("#membership select").selectbox();
		return false;
	}
};

/* ########################################################### */
// show feed in widget
var _feed = {
	load: function(){
		// articles
		var feed = "http://d.yimg.com/bi/rss/sports";
		feed = jQuery("#feedChoice option:selected").attr("value");
		jQuery("#feedChoice").change(function(){
			leselected = jQuery("#feedChoice option:selected").attr("value");
			_feed.putFeed(leselected);	
		});
		
		// meteo
		var mFeed = "http://meteo.gc.ca/rss/city/qc-146_f.xml";
		mFeed = "http://meteo.gc.ca/rss/city/" + jQuery("#meteoFeedChoice option:selected").attr("value") + ".xml";
		jQuery("#meteoFeedChoice").change(function(){
			if(jQuery("#meteoFeedChoice option:selected").attr("value") !== "null"){
				leselected = "http://meteo.gc.ca/rss/city/" + jQuery("#meteoFeedChoice option:selected").attr("value") + ".xml";
				_feed.putMFeed(leselected);
			}
		});
		
		if(jQuery("#newsWidget")[0]){this.putFeed(feed);}
		if(jQuery("#meteoWidget")[0]){this.putMFeed(mFeed);}
	},
	loadMeteo: function(){
		
		state = jQuery.cookie('mplv_widget_meteo');
		
		if (state == 'open') {
			
			// meteo
			var mFeed = "http://meteo.gc.ca/rss/city/qc-146_f.xml";
			mFeed = "http://meteo.gc.ca/rss/city/" + jQuery("#meteoFeedChoice option:selected").attr("value") + ".xml";
			jQuery("#meteoFeedChoice").change(function(){
				if(jQuery("#meteoFeedChoice option:selected").attr("value") !== "null"){
					leselected = "http://meteo.gc.ca/rss/city/" + jQuery("#meteoFeedChoice option:selected").attr("value") + ".xml";
					_feed.putMFeed(leselected);
				}
			});
			if(jQuery("#meteoWidget")[0]){_feed.putMFeed(mFeed);}
			
		}
				
	},
	loadNews: function(){
		
		state = jQuery.cookie('mplv_widget_actualites');
						
		if (state == 'open') {
			
			// articles
			var feed = "http://d.yimg.com/bi/rss/sports";
			feed = jQuery("#feedChoice option:selected").attr("value");
			jQuery("#feedChoice").change(function(){
				leselected = jQuery("#feedChoice option:selected").attr("value");
				_feed.putFeed(leselected);	
			});
					
			if(jQuery("#newsWidget")[0]){_feed.putFeed(feed);}
			
		}
		
	},
	putFeed: function(lefeed){
		jQuery("#newsWidget .inner #feedContent").html("");
		jQuery.jGFeed(lefeed,
		function(feeds){
		  // Check for errors
		  if(!feeds){
		    // there was an error
		    return false;
		  }
		  // do whatever you want with feeds here
		  for(var i=0; i<feeds.entries.length; i++){
		    var entry = feeds.entries[i];
			
			// write the feed in the content div
		    var leFeed = '<h4><a href="'+entry.link+'" target="_blank">'+entry.title+'</a></h4>'+
		    '<p>'+entry.contentSnippet+'</p>'
		   
		  	if(isIe == true && jQuery.browser.version < 9){
		    	jQuery("#newsWidget .inner #feedContent").html(jQuery("#newsWidget .inner #feedContent").html()+Utf8.decode(leFeed));
		  	}else{
		    	jQuery("#newsWidget .inner #feedContent").html(jQuery("#newsWidget .inner #feedContent").html()+leFeed);
		  	}
		  }
		}, 4);
	},
	putMFeed: function(lefeed){
		jQuery("#meteoWidget .inner #meteoContent").html("");
		jQuery.jGFeed(lefeed,
		function(feeds){
		  // Check for errors
		  if(!feeds){
		    // there was an error
		    return false;
		  }
		  // do whatever you want with feeds here
		  //for(var i=0; i<feeds.entries.length; i++){
		    var entry = feeds.entries[1];
			
			var content = entry.content.split("<br>")
			var tempLine, condLine;
			
			for(x=0;x<content.length;x++){
				if(content[x].substring(4,8) == "Temp"){
					tempLine = content[x];
				}
				if(content[x].substring(4,8) == "Cond"){
					condLine = content[x];
				}
				
			}
			if(tempLine !== undefined){
				var x = [];
				x = tempLine.split(":");
				if(isIe == true && jQuery.browser.version < 9){
					temp = Utf8.decode(x[1]);
			  	}else{
					temp = x[1];
			  	}
			}else{
				temp = "?&deg;C";
			}
			
			if(condLine !== undefined){
				var x = [];
				x = condLine.split(":");
				cond = x[1];
			}else{
				cond = "Non observ&eacute;es";
			}
			
						
			var laville;
			if(jQuery("#meteoFeedChoice option:selected").attr("value") !== "null"){
				laville = jQuery("#meteoFeedChoice option:selected").text();
			}
			
			// write the feed in the content div
		    var leFeed = '<h4><a href="'+entry.link+'">Conditions actuelles: '+cond+'</a></h4>'+
		    '<div class="selfclear"><span class="temp">'+temp+'</span>'+
		    '<span class="city">'+laville+'<br /><em class="prov">Qu&eacute;bec</em></span></div>';
		   
		    jQuery("#meteoWidget .inner #meteoContent").html(jQuery("#meteoWidget .inner #meteoContent").html()+leFeed);
		  //}
		}, 2);
	}
};

/* ########################################################### */
// put a picture as cover
var _cover = {
	coverLoad: function(){
		jQuery(".btCover").click(this.coverShow);
	},
	coverShow: function(){
		if(!jQuery(this).closest("p").hasClass("isCover")){
			jQuery(this).closest(".listFriend").find(".isCover").removeClass("isCover");
			jQuery(this).closest("p").addClass("isCover");
		}
		return false;
	}
};

/* ########################################################### */
// sort pictures in album
var _sort = {
	load: function(){
		jQuery(".btMove").click(function(){return false;})
		jQuery(".sortable").sortable({ 
			handle: '.btMove',
			placeholder: 'over',
			sort: function(event, ui) {
				jQuery(".btMove").trigger("mouseout");
			},
			start: function(event, ui) {
				jQuery(ui.item).fadeTo("fast", "0.5");
			},
			stop: function(event, ui) {
				jQuery(ui.item).fadeTo("fast", "1");
				jQuery("li", this).removeClass("dark");
				jQuery("li:odd", this).addClass("dark");
				var newData = jQuery(".sortable").sortable('serialize','toArray');
				var album_id = jQuery("#sortable_album_id").val();
				jQuery.post('/albums/savePhotoOrder',
					'&album_id='+album_id+'&'+newData,
					function(xml) {
						total_error = jQuery(xml).find('total_error').text();
						if(total_error === '1') {
							_formUtils.showmsg('errorBox02', jQuery(xml).find('description').text());
						} else {
							_formUtils.showmsg('successBox02', jQuery(xml).find('description').text());
						}
					},
					'xml'
				);
			}
		});
	}
}

/* ########################################################### */
// put round corner on picture
var _corner = {
	load: function(){
		jQuery(".round").corner();
	}
}

/* ########################################################### */
// put navigation on picture
var _picNav = {
	load: function(){
		if(jQuery("#laPhoto").get(0)){
			_picNav.createNav();
		}
	},
	createNav: function(){
		var prev = jQuery("#center .navPic:eq(0) .paging .prevPage a").attr("href");
		var next = jQuery("#center .navPic:eq(0) .paging .nextPage a").attr("href");
		var laNav = '<span id="navOver"><a href="'+prev+'" id="navPrev">Photo pr&eacute;c&eacute;dente</a><a href="'+next+'" id="navNext">Phtoto suivante</a></span>';
		
		jQuery("#laPhoto").append(laNav);
		
		jQuery("#navOver").css("left", (jQuery("#laPhoto").width() - jQuery("#laPhoto img.round").width())/2 )
		.width(jQuery("#laPhoto img").width());
		
		jQuery("#navNext").css("background-position", jQuery("#navNext").width() - 45 -20, "center");
		jQuery("#navOver, #navPrev, #navNext").height(jQuery("#laPhoto img.round").height());

	}
}

/* ########################################################### */
// put navigation on picture contest
var _picNavContest = {
	load: function(){
		if(jQuery("#picVote").get(0)){
			_picNavContest.createNav();
		}
	},
	createNav: function(){
		var number = jQuery("#contestOther .pics li").length -1;
		//var prev = jQuery("#contestOther .pics a:eq("+number+")").attr("href");
		//var next = jQuery("#contestOther .pics a:eq(1)").attr("href");
		
		var prev = '#';
		var next = '#';
		
		var laNav = '<span id="navOver"><a href="'+prev+'" id="navPrev">Photo pr&eacute;c&eacute;dente</a><a href="'+next+'" id="navNext">Phtoto suivante</a></span>';
		
		jQuery("#picVote").append(laNav);
		
		jQuery("#navNext").click(
			function()
			{
				if(jQuery(".pics li.selected").attr('id') == (number+1))
				{
					_picturesContest.zoom( jQuery('.pics li:first a').attr('id') );
				}else{
				
					_picturesContest.zoom( jQuery('#'+jQuery(".pics li.selected").next().attr('id')+' a').attr('id') );
				}
				clearInterval(_picturesContest.inter);
				_picturesContest.inter = setInterval("_picNavContest.update()", 100);
				setTimeout("_picturesContest.clearer()", 5000);
				return false;
			}
		);
		
		jQuery("#navPrev").click(
			function()
			{
				if(jQuery(".pics li.selected").attr('id') == 1)
				{
					_picturesContest.zoom( jQuery('.pics li:last a').attr('id') );
				}else{
					_picturesContest.zoom( jQuery('#'+jQuery(".pics li.selected").prev().attr('id')+' a').attr('id') );
				}
				_picNavContest.update();
				clearInterval(_picturesContest.inter);
				_picturesContest.inter = setInterval("_picNavContest.update()", 100);
				setTimeout("_picturesContest.clearer()", 5000);
				return false;
			}
		);
		
		_picNavContest.update();
		
		//jQuery("#contestSel").hide();
		
	},
	update: function(){		
		var number = jQuery("#contestOther .pics li").length -1;
		jQuery("#navOver").css("left", (jQuery("#picVote").width() - jQuery("#picVote img").width())/2 )
		.width(jQuery("#picVote img").width());
		
		jQuery("#navNext").css("background-position", jQuery("#navNext").width() - 45 -20, "center");
		jQuery("#navOver, #navPrev, #navNext").height(jQuery("#picVote img").height());
		
		if(jQuery(".pics li.selected").attr('id') == (number+1))
		{jQuery("#navNext").hide();}else{jQuery("#navNext").show();}
		if(jQuery(".pics li.selected").attr('id') == 1)
		{jQuery("#navPrev").hide();}else{jQuery("#navPrev").show();}
		
		
		/*if(!jQuery("#test")[0]){
			jQuery("#content").append('<div id="test"></div>');
			jQuery("#test").text(_x);
		}else{
			jQuery("#test").text(parseFloat(jQuery("#test").text()) + 1);
		}*/
	}
}
var _x = 0;
var _picturesContest = {
		
		//-----------------------------------------------------------
		// liste
		//--
			list: function(page,idinscription){
			
//				jQuery("#loaderList").show();
				
				jQuery("#contestOther ul").fadeTo("fast", 0.1);
				
				divHeight = jQuery("#contestOther").height();
				divWidth = jQuery("#contestOther").width();
				
				loaderLeft = (divWidth/2) - ( jQuery("#loaderBox").width()/2 );
				loaderTop = (divHeight/2) - ( jQuery("#loaderBox").height()/2 );				
				
				jQuery("#loaderBox").css("left", loaderLeft );
				jQuery("#loaderBox").css("top", loaderTop );
				jQuery("#loaderBox").css("display",'block');
				
				jQuery.post(
					"/concours-photo/list",
					{
						'page':page,
						'idinscription':idinscription
					},
					function(html) //callback function
					{
						jQuery("#contestOther").html( html );
//		   				jQuery("#loaderList").hide();
		   				
		   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
		   					_picturesContest.list( jQuery(this).attr("id"),idinscription );
							return false;
						});
						
						jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
							return false;
						});
					
						
						//jQuery("#loaderBox").css("display",'none');
						
//						_tt.tipLoad();
//						_dialogue.diaLoad();
						
		 			}
				);
			},
//-----------------------------------------------------------
// vote
//--
	vote: function(contest_id){
	
		
		jQuery("#contestOther").load(
			"/concours-photo/votez",
			{
//				'page':page,
//				'idinscription':idinscription
			},
			function() //callback function
			{	
				loadVotedHTMLPart(contest_id);
//   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
//   					_picturesContest.list( jQuery(this).attr("id"),idinscription );
//					return false;
//				});
//				
//				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
//					return false;
//				});
			
				
 			}
		);
	},		
	
	///-----------
	//vote final
	//---
	voteFinal : function(inscriptionID, contestID) { 
		
		jQuery.post("/picturescontest/votefinale",
				{
					'inscriptionID':inscriptionID,
					'contestID':contestID		
				},
				function(data) //callback function
				{	
					
					jQuery("#finalVote").css('display','none');
					jQuery("#finaleThankVote").css('display','block');
//	   			
					
	 			}
		);
		
	},
		
	selectPic: function(contest_id, inscription_id)
	{
		
		//alert(contest_id+' - '+);
		
		selected_id = 'pic'+inscription_id;
		
		inSelection = jQuery("#"+selected_id).length;
		
//		alert(jQuery("#blocVoting ul li.voted").length);
		
		if (inSelection == 0 && (jQuery("#blocVoting ul li.voted").length < 5)) {
			
			jQuery.post(
				"/picturescontest/addPreSelectionInscription",
	 			{
	 				'inscription': inscription_id,
	 				'contestID' : contest_id
	 			},
				function(data)
				{
	 				var max_voted = jQuery(data).find('reach_max_voted').text();
					loadVotedHTMLPart(contest_id);
					
					if(max_voted) {
						jQuery(".blocVoting ul li.bt_vote").removeClass("btCancel");
//						jQuery(".blocVoting ul li.bt_vote a").attr("href","/concours-photo/votez");
					}
//					jQuery("#contestSel .descPic a").addClass("disabled");
//					jQuery("#contestSel .descPic a").css("opacity","0.2");
					jQuery(".userBt a.btAction").addClass("disabled");
					jQuery(".userBt a.btAction").css("opacity","0.2");
					jQuery(".userBt a.btAction").removeAttr('onclick');
					_contestPic.addVote(); // was commented
				}
			);
			/*jQuery("#contestSel .descPic a").addClass("disabled").fadeTo("fast",0.2);
			jQuery(".pics li.selected a").addClass("voted").fadeTo("fast",0.2);*/
			
			/*jQuery("#selectedPhoto").append('<li id="'+selected_id+'"></li>');
			picCopy = jQuery(".pics li.selected a").clone();
			picCopy.appendTo("#selectedPhoto li#"+selected_id);*/
//			jQuery(".pics li.selected a").addClass("voted").fadeTo("fast",0.2);
			
			// Retour à la grille
//			_contestPic.grid();
		} 
		
	},
	zoom: function(id)
	{
		picurl = jQuery('#'+id).attr('href');
		
		jQuery(".pics li.selected").removeClass("selected");
		jQuery("#"+id).parent().addClass("selected");
		
		jQuery("#contestOther").hide();
		jQuery("#loaderBoxContest").show();
		
		// Check if already voted
		if( jQuery("#blocVoting ul li#pic"+ jQuery('#'+id+' img').attr('rel') +"").attr('class') == 'voted' )
		{
			alreadyVoted = 1;
		}else{
			alreadyVoted = 0;
		}
		
		jQuery("#contestSel .descPic p").html( jQuery("#"+id).attr("title") );
				
		if((alreadyVoted === 1) || (jQuery("#blocVoting ul li").length == 5))
		{
			jQuery("#contestSel .descPic a").addClass("disabled");
			jQuery("#contestSel .descPic a").css("opacity","0.2");
		}else{
			jQuery("#contestSel .descPic a").removeClass("disabled");
			jQuery("#contestSel .descPic a").css("opacity","1");
		}
		jQuery("#contestSel").show();
		jQuery("#loaderBoxContest").hide();
				
		jQuery("#contestSel img").attr( "src", picurl );
		clearInterval(_picturesContest.inter);
		_picturesContest.inter = setInterval("_picNavContest.update()", 100);
		setTimeout("_picturesContest.clearer()", 5000);
						
		return false;
		
	},
	updategrid: function(id)
	{
		jQuery("#contestSel .descPic p").html(jQuery("#contestOther li:eq("+leIndex+") a").attr("title"));
		
		jQuery("#contestSel .descPic a").attr("href", jQuery("#contestOther li:eq("+leIndex+") a").attr("id"));
		
		jQuery("#contestSel img").attr("src", jQuery("#contestOther li:eq("+leIndex+") a").attr("href"));
		
		if(jQuery("#contestOther li:eq("+leIndex+")").hasClass("voted")){
			jQuery("#contestSel .descPic a").addClass("disabled").fadeTo("fast",0.2);
		}else{
			jQuery("#contestSel .descPic a").removeClass("disabled").fadeTo("fast",1);
		}
	},
	saveInscription: function(frmId)
	{
		jQuery("#successBoxInscription").css('display','none');
		jQuery("#errorBoxInscription").css('display','none');
		
		jQuery("#submitBoxInscription").css('display', 'none');
		jQuery("#loaderBoxInscription").css('display', 'block');
		
		if(jQuery("#cbPhotoUrl").attr('value') == "" && jQuery("#photoAlbum_id").attr('value') == "")
		{
			jQuery("#errorBoxInscription").html("Vous devez choisir une photo");
			jQuery("#errorBoxInscription").css('display','block');
			
			jQuery("#submitBoxInscription").css('display', 'block');
			jQuery("#loaderBoxInscription").css('display', 'none');
		
		}else{
			
			jQuery.post(
				"/picturescontest/saveinscription",
	 			jQuery("#"+frmId).serialize(),
				function(data)
				{
					// TO DO implement success / error here
					total_error = jQuery(data).find('total_error').text();
					if(total_error === '1') {
						
						jQuery("#errorBoxInscription").html(jQuery(data).find('description').text());
						jQuery("#errorBoxInscription").css('display','block');
						jQuery("#submitBoxInscription").css('display', 'block');
						jQuery("#loaderBoxInscription").css('display', 'none');
						
					} else {
						
						jQuery("#errorBoxInscription").css('display','none');
						jQuery("#successBoxInscription").html("Inscription recue avec succ&egrave;s!");
						jQuery("#successBoxInscription").css('display','block');
						jQuery("#submitBoxInscription").css('display', 'block');
						jQuery("#loaderBoxInscription").css('display', 'none');
						
					}
				}
			);
		}
		
		
	},
	clearer: function(){
		clearInterval(_picturesContest.inter);
	},
	inter: ""
}

/* ########################################################### */
// put navigation on picture contest
var _contestPic = {
	nbVote: 5,
	added: function(){
		return jQuery("#blocVoting ul li").length;
	},
	load: function(){
		
		jQuery("#contestOther .pics li a").click(_contestPic.zoom);  // was commented
		jQuery("#contestSel .btSupp").click(_contestPic.grid);
		//jQuery("#contestSel .descPic a").click(_contestPic.addVote);  // was commented
		//jQuery("#blocVoting ul li a").click(_contestPic.removeVote); // was commented
				
		// vérifie ce qui étais déjà dans la liste
		jQuery("#blocVoting ul li").each(function() {
			//alert($(this).id);
			
			if($(this).id != '')
			{
				selectedPic = $(this).id;
				selectedPic = selectedPic.substring(3);
				jQuery(".pics li a img[rel$="+selectedPic+"]").parent().
				addClass("voted").fadeTo("fast",0.2);
			}
		}); 
		
		jQuery("#contestOther .pics li.voted").fadeTo("fast",0.2);
	
	},
	zoom: function()
	{
		var leIndex 		= jQuery(".pics li").index(jQuery(this).parent()); // index of clicked link
		var leIndexCurrent 	= jQuery(".pics li").index(jQuery(".pics li.selected")); // index of opened link
						
		var number 	= function(){ return jQuery("#contestOther .pics li").length -1;};
		var next  	= function(){ return (leIndex === number()) ? 0 : leIndex +1;};
		var prev 	= function(){ return (leIndex === 0) ? number() : leIndex -1;};
		
		function updateGrid(){
			jQuery("#contestOther li:eq("+leIndexCurrent+")").removeClass("selected");
			jQuery("#contestOther li:eq("+leIndex+")").addClass("selected");
			jQuery("#contestSel .descPic p").html(jQuery("#contestOther li:eq("+leIndex+") a").attr("title"));
			jQuery("#contestSel .descPic a").attr("href", jQuery("#contestOther li:eq("+leIndex+") a").attr("id"))
			jQuery("#contestSel img").attr("src", jQuery("#contestOther li:eq("+leIndex+") a").attr("href"));
						
			// Disable button ajouter aux concours
			var picId = jQuery(".pics li.selected").find("a img").attr("rel");
			
			if (jQuery("#pic"+picId).length != 0 || (jQuery("#blocVoting ul li").length == nbVote)) {
				jQuery("#contestSel .descPic a").addClass("disabled").fadeTo("fast",0.2);
			} else {
				jQuery("#contestSel .descPic a").removeClass("disabled").fadeTo("fast",1);
			}
			
			/*if(jQuery("#contestOther li:eq("+leIndex+")").hasClass("voted")){
				jQuery("#contestSel .descPic a").addClass("disabled").fadeTo("fast",0.2);
			}else{
				jQuery("#contestSel .descPic a").removeClass("disabled").fadeTo("fast",1);
			}*/
		}
		
		updateGrid();
		
		jQuery("#contestOther").hide();
		
		jQuery("#contestSel").show();
		jQuery("#navNext").attr("href", jQuery("#contestOther li:eq("+next()+") a").attr("href"))
		jQuery("#navPrev").attr("href", jQuery("#contestOther li:eq("+prev()+") a").attr("href"))
		
		jQuery("#contestSel img").load(_picNavContest.update);
		
		/* nav */
		jQuery("#navNext, #navPrev").click(function(){
			leIndexCurrent = jQuery(".pics li").index(jQuery(".pics li.selected"));
			var newIndex;
			
			if(this.id === "navNext"){
				leIndex = next(); newIndex = next();
			}else{
				leIndex = prev(); newIndex = prev();
			}
			
			updateGrid();						
			jQuery(this).attr("href", jQuery("#contestOther li:eq("+newIndex+") a").attr("href"));
			_picNavContest.update();
			
			return false;
		});
		
		return false;
	},
	grid: function(){ // quit nav
		jQuery("#contestOther").show();
		jQuery("#contestSel").hide();
		
		return false;
	},
	addVote: function(){
		var idPicAdded = jQuery(this).attr("href");
		var url = jQuery("#" + idPicAdded + " img").attr("src");
		var image = '<li class="'+idPicAdded+'"><img src="'+url+'" alt="" /><a href="#" class="btSupp">Enlever</a></li>';
				
		if(_contestPic.added() < _contestPic.nbVote && !jQuery("#" + idPicAdded).closest("li").hasClass("voted")){
			jQuery("#blocVoting ul").append(image);
			jQuery("#remainVotes span").text(_contestPic.nbVote - _contestPic.added());
			jQuery("#blocVoting ul li a").click(_contestPic.removeVote);
			jQuery("#" + idPicAdded).closest("li").addClass("voted").fadeTo("norm78al",0.2);
			jQuery("#contestSel .descPic a").addClass("disabled").fadeTo("fast",0.2);
		}
		
		if(_contestPic.added() === _contestPic.nbVote){
			jQuery("#contestSel .descPic a").hide();
		}
		
		return false;
	},
	removeVote : function(){
		var picRemoved = jQuery(this).closest("li").attr("class");
		jQuery("#"+picRemoved).closest("li").removeClass("voted").fadeTo("normal",1);
		jQuery("#contestSel .descPic a[href="+picRemoved+"]").fadeTo("normal",1);
		
		jQuery(this).closest("li").remove();
		
		if(_contestPic.added() < _contestPic.nbVote){
			jQuery("#contestSel .descPic a").show();
		}
		
		jQuery("#remainVotes span").text(_contestPic.nbVote - _contestPic.added());
		return false;
	}
}

/* ########################################################### */
// start an image gallery
var _colorBox = {
	load: function(){
		jQuery("#productImages a").attr("rel", "colorbox");
		jQuery("#productImages a[rel='colorbox']").colorbox();
		jQuery("#productTop .img a").click(function(){
			jQuery("#productImages a:eq(0)").trigger("click");
			return false;
		});
	}
}

/* ########################################################### */
// replace the select input
var _select = {
	load: function(){
		jQuery(".iSel select").selectbox();
		
		jQuery(".jquery-selectbox .jquery-selectbox-moreButton").click(function(){
			jQuery(".jquery-selectbox").css("position", "static");
			jQuery(this).closest(".jquery-selectbox").css("position", "relative");
		})
	}
}

/* ########################################################### */
// replace the select input
var _videoMode = {
	load: function(){
		jQuery("#btVideoSwitch a").click(_videoMode.change);
	},
	change: function(){
		if(!jQuery("#mainVideo").hasClass("wide")){
			// wide mode
			jQuery("#right").css("marginTop", 576);
			jQuery("#mainVideo .infoUsers").css("marginTop", 474);
			jQuery("#videoPlayer").css({
				"position": "absolute",
				"top": 90,"left": 25,
				"width": 781,"height": 478
			});
			jQuery("#btVideoSwitch").css({
				"position": "absolute",
				"top": 80,"right": -309
			});
			
			jQuery("#mainVideo").addClass("wide");
		}else{
			// standard mode
			jQuery("#videoPlayer").css({
				"position": "static",
				"width": 446,"height": 261
			});
			jQuery("#btVideoSwitch").css("position", "static");
			jQuery("#mainVideo .infoUsers").css("marginTop", 5);
			jQuery("#right").css("marginTop", 0);
			
			jQuery("#mainVideo").removeClass("wide");
		}
		
		return false;
	}
}

/* ########################################################### */
// open/close widgets
var _widgets = {
	load: function(){
		//options = { path: '/', expires: 365 };
		_adresse.loadWidget();

		jQuery("#widgets .widgetOptions .min, #widgets h3").click(_widgets.min);
		jQuery("#widgets .widgetOptions .close").click(_widgets.close);
		
		jQuery.each(jQuery("#widgets h3"), function() {

			if(jQuery.cookie('mplv_widget_'+jQuery(this).attr("rel")) != "open")
			{
				jQuery(this).closest(".aWidget").addClass("closed");
			}

	    });
	    
	    //jQuery("#widgets .closed .inner").slideUp("fast");

	},
	loadClick: function(){
		//options = { path: '/', expires: 365 };
			
		jQuery.each(jQuery("#widgets h3"), function() {
			
			element = jQuery(this).attr("rel");
			
			if (jQuery.cookie('mplv_widget_'+element) != "open") {
				switch (this.id) {
					case 'meteo' : {
						jQuery(this).click(_feed.loadMeteo);
						jQuery("#plusmoins_meteo").click(_feed.loadMeteo);
					} break;
					case 'actualites' : {
						jQuery(this).click(_feed.loadNews);
						jQuery("#plusmoins_actualites").click(_feed.loadNews);
					} break;
					case 'bonnes_addresses' : {
						jQuery(this).click(_adresse.loadWidget);
						jQuery("#plusmoins_bonnes_addresses").click(_adresse.loadWidget);
					} break;
				} 				
			} else {
				switch (this.id) {
					case 'meteo' : {
						_feed.loadMeteo();
					} break;
					case 'actualites' : {
						_feed.loadNews();
					} break;
					case 'bonnes_addresses' : {
						_adresse.loadWidget('#boxAdresse .inner');
					} break;
				}				
			}

	    });
	    
	    //jQuery("#widgets .closed .inner").slideUp("fast");

	},
	min: function(){
		
		//options = { path: '/', expires: 365 };
		
		if(!jQuery(this).closest(".aWidget").hasClass("closed")){
			jQuery(this).closest(".aWidget").addClass("closed").find(".inner").slideUp("fast");
			jQuery.cookie('mplv_widget_'+jQuery(this).attr("rel"), "null"/*,  options */);
		}else{
			jQuery(this).closest(".aWidget").removeClass("closed").find(".inner").slideDown("fast");
			jQuery.cookie('mplv_widget_'+jQuery(this).attr("rel"), "open"/*,  options */);
		}
		//alert(jQuery(this).attr("id")+":"+jQuery.cookie('mplv_widget_'+jQuery(this).attr("id")));
		return false;
		
	},
	close: function(){
		jQuery(this).closest(".aWidget").remove();
		return false;
	}
};

var _mosaique = {
		
	init: function() {
		_mosaique.getuserid();
	},
	
	getuserid: function()
	{
		jQuery.post(
			"/membres/getid",
			{
			},
			function(data)
			{
				_mosaique.update(data);
			});
	},
	
	update: function(user_id) {

		jQuery('a.mosaique').each(function() {
			
			var current_url = jQuery(this).attr('href');
			var append = '&ref=mplv';
			var element = jQuery(this);
			if (user_id != '') {
				append = '&ref=mplv&mcon=1&musr='+user_id;
			} else {
				append = '&ref=mplv';
			}
			current_url = current_url + append;
			jQuery(element).attr('href', current_url);
			jQuery(element).click(function(){
				_gaq.push(['_trackEvent', 'Outbound Links', current_url]);
			});
		});
	}
};


/* ########################################################### */
// social
var _social = {
	init: function(){
		jQuery("#social-menu li a").click(_social.show);
	},
	counter: 0,
	show: function(){
		if(jQuery(this).closest("#bt-twit")[0] && !jQuery(this).closest("li").hasClass("selected")){
			jQuery("#social-menu li").removeClass("selected");
			jQuery("#facebook_div").slideUp("fast", function(){
				if(_social.counter == 0){
					jQuery("#twitter_div .loader").show();
					jQuery("#twitter_div").slideDown().append('<script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script><script type="text/javascript" src="http://twitter.com/statuses/user_timeline/mamanpourlavie.json?callback=twitterCallback2&amp;count=5"></script>');
				}else{
					jQuery("#twitter_div").slideDown();
				}
				jQuery("#bt-twit").addClass("selected");
				_social.counter++;
			});
			return false;
		}
		
		if(jQuery(this).closest("#bt-face")[0] && !jQuery(this).closest("li").hasClass("selected")){
			jQuery("#social-menu li").removeClass("selected");
			jQuery("#twitter_div").slideUp("fast", function(){
				jQuery("#facebook_div").slideDown()
				jQuery("#bt-face").addClass("selected");
			});
			return false;
		}
		
		if(jQuery(this).closest("li").hasClass("selected")){
			jQuery("#social-menu li").removeClass("selected");
			jQuery("#facebook_div, #twitter_div").slideUp("fast");
		}
		
		return false;
	}
};


/* ########################################################### */
// tooltips
var _tt = {
	tipLoad: function(){
		jQuery(".tt").hover(_tt.tipOver, _tt.tipOut);
	},
	leText: "",
	tipOver: function(e){
		var tip;
		if(jQuery(".ttip").get(0)){
			_tt.tipOut(this);
		}
		
		if(jQuery(this).attr("title") !== "" && jQuery(this).attr("title") !== undefined){
			tip = '<span class="ttip">' + jQuery(this).attr("title") + '</span>';
			_tt.leText = jQuery(this).attr("title");
			jQuery(this).attr("title", "");
		}else{
			if(jQuery(this).attr("alt") !== "" && jQuery(this).attr("alt") !== undefined){
				tip = '<span class="ttip">' + jQuery(this).attr("alt") + '</span>';
				_tt.leText = jQuery(this).attr("alt");
				jQuery(this).attr("alt", "");
			}else{
				tip = '';
			}
		}
		
				
		jQuery("body").append(tip);
		jQuery(".ttip").hide();
		
		jQuery(this).mousemove(function(e){
			jQuery(".ttip").slideDown(100);
			jQuery(".ttip").css("width", jQuery(".ttip").width())
			jQuery(".ttip").css("display", "block");
		
    		var border_right = jQuery(window).width();
			jQuery(".ttip").css("top", e.pageY + 20);
						
				jQuery(".ttip").css("left", e.pageX - jQuery(".ttip").width()/2 - 10);
								
				// if gets ouside to the right
				if((parseInt(jQuery(".ttip").css("left")) + jQuery(".ttip").width() + 20) >= (border_right - 1)){
					jQuery(".ttip").css("left", border_right - jQuery(".ttip").width() - 20 - 2);
				}
				// if get outside to left
				if(parseInt(jQuery(".ttip").css("left")) <= 0){
					jQuery(".ttip").css("left", 1);
				}
		});
	},
	tipOut: function(){
		if(_tt.leText !== ''){
			jQuery(this).attr("title", _tt.leText);
			jQuery(this).attr("alt", _tt.leText);
		}
		jQuery(".ttip").remove();
		
	}
};

/* ########################################################### */
// fileNav
var FILENAV_CURRENT_FILE_URL;
var FILENAV_CURRENT_cbPhotoUrl;
var FILENAV_CURRENT_photoAlbum_id;
var _fileNav = {
	fileLoad: function(){
		jQuery(".fileNav ul#listePhotos li a").click(_fileNav.fileSelect);
	},
	fileSelect: function(btnNav){
		btnId = btnNav.attr('id');
		if(jQuery(".fileNav ul#listePhotos li a.selected").get(0)){
			
			if(!btnNav.hasClass("selected")){
				// On affiche l'image 
				
				_photos.selectPhoto(btnId);
				
				jQuery(".fileNav ul#listePhotos li a.selected img").fadeTo("normal", 0.3);
				jQuery(".fileNav ul#listePhotos li a").removeClass();
				
				btnNav.addClass("selected");
				jQuery(".fileNav ul#listePhotos li a.selected img").fadeTo("normal", 1);
			}else{ // if already selected
				
				// On remet l'image par d&eacute;faut 
				_photos.deselectPhoto(btnId);
				
				btnNav.removeClass("selected");
				jQuery(".fileNav ul#listePhotos li a img").fadeTo("normal", 1);
			}
			
		}else{ // if no selection
			
			FILENAV_CURRENT_FILE_URL = jQuery('#thumbnails img').attr('src');
			FILENAV_CURRENT_cbPhotoUrl = jQuery('#cbPhotoUrl').val();
			FILENAV_CURRENT_photoAlbum_id = jQuery('#photoAlbum_id').val();
			
			_photos.selectPhoto(btnId);
			
			btnNav.addClass("selected");
			
			jQuery(".fileNav ul#listePhotos li a").each(function(){
				if(!jQuery(this).hasClass("selected")){ // if not already selected
					jQuery("img", this).fadeTo("normal", 0.3);
				}
			});

		}
		return false;
	}
};

/* ########################################################### */
// menu
/* ########################################################### */
// menu
var _menu = {
	menLoad: function(){
		jQuery("#lsMenu .lsItem .item").click(_menu.menChange);
		jQuery("#lsMenu .lsSm a").click(_menu.subChange);
		jQuery("#lsMenu #btCat .item, #lsMenu #btCat .btCloseMess").unbind("click").click(_menu.cat)
		
		jQuery("#lsMenu .lsItem .sm, #lsMenu #catSub").hide();
		jQuery("#lsMenu .open .sm").show();
		
		if(jQuery("#lsMenu .lsItem.open").get(0)){ // fix header height depending on open submenu or not
			jQuery("#lsMenu").height(jQuery("#lsMenu .lsItem").height() + jQuery("#lsMenu .lsItem.open .sm").height() + 20);
		}else{
			jQuery("#lsMenu").height(jQuery("#lsMenu .lsItem").height());
		}
		
		jQuery("#lsMenu #password").keypress(function(e) {
			if(e.which == 13){
				jQuery("#header #frmLoginTop .btBlue a").trigger("click");
			}
		});
		
		// special case for sm profil
		_menu.profilCheck();
	},
	menChange: function(){
		
		if(jQuery(this).hasClass("goProfil") || !jQuery(this).closest(".lsItem").hasClass("selected") && !jQuery(this).closest(".item").hasClass("notconnected")){
			return true;
		}
		
		if(jQuery("#btCat.selected").get(0)){
			_menu.cat();
		}
				
		var leThis = jQuery(this).next(".sm");
		var menHeight = jQuery("#lsMenu .lsItem").height();
		
		if(!jQuery(this).next().hasClass("sm")) { // if no sousmenu
			return true;
		}
		
		if(!jQuery(this).closest(".lsItem").hasClass("open")){
		
			if(jQuery("#lsMenu .open .sm").get(0)){ // if open sous menu exist
				jQuery("#lsMenu .open .sm .textInfo").fadeOut(50);
				jQuery("#lsMenu .open .sm .lsSm").fadeOut(50);
				jQuery("#lsMenu .open .sm .smInner").fadeOut(50);
				
				jQuery("#lsMenu .open .sm").slideUp("fast", function(){
					anim();
				});
			}else{ // if no sousmenu open
				anim();
			}
			
		}else{ // if item is already open
			jQuery("#lsMenu .open .sm .textInfo").fadeOut(50);
			jQuery("#lsMenu .open .sm .lsSm").fadeOut(50);
			jQuery("#lsMenu .open .sm .smInner").fadeOut(50);
			
			jQuery("#lsMenu .open .sm").slideUp("fast", function(){
				jQuery(this).closest(".lsItem").removeClass("open");
			});
			jQuery("#lsMenu").animate({
					height: menHeight
			}, "fast");
		
		}
		
		function anim(){ // last anim
			jQuery(leThis).find(".textInfo").fadeIn(1);
			jQuery(leThis).find(".lsSm").fadeIn(1);
			jQuery(leThis).find(".smInner").fadeIn(1);
			
			jQuery("#lsMenu").animate({
				height: menHeight + jQuery(leThis).height() + 20
			}, "fast");
			jQuery(leThis).slideDown("fast", function(){
				jQuery("#header #frmLoginTop:visible #username").focus();
			});
		};
		
		jQuery("#lsMenu .lsItem").removeClass("open");
		jQuery(this).closest(".lsItem").addClass("open");
		
		// special case for sm profil
		_menu.profilCheck();
		
		return false;
	},
	subChange: function(){ // sub menu change for bebe
		
		var leIndex = jQuery(this).closest("ul").find("li").index(jQuery(this).closest("li"));
		
		if(!jQuery(this).closest("li").hasClass("open")){
			return true;
		}
		
		if(!jQuery(this).closest("li").hasClass("open")){ // anim if not already open
			jQuery(this).closest("ul").find("li").removeClass("open");
			jQuery(this).closest("li").addClass("open");
			
			jQuery(this).closest(".lsSm").prev().find("ul.open").fadeOut("fast", function(){
				jQuery(this).removeClass("open");
				
				jQuery(this).closest(".ssm").find("ul:eq("+leIndex+")").fadeIn("fast");
				jQuery(this).closest(".ssm").find("ul:eq("+leIndex+")").addClass("open");
				
				jQuery("#lsMenu").animate({
					height: jQuery("#lsMenu .lsItem").height() + jQuery(this).closest(".sm").height() + 20
				}, "fast");
				
			});
		}
		
		return false;
	},
	profilCheck: function(){ // if profil menu is open
		jQuery("#lsMenu").removeClass("profilOpen");
		if(jQuery("#lsMenu #lsProfil.open").get(0)){
			jQuery("#lsMenu").addClass("profilOpen");
		}
		jQuery("#header").animate({ // fix anim bug in firefox2
			width: "100%"
		}, "fast");
	},
	updateHeight: function(){
		jQuery("#lsMenu").animate({
			height: jQuery("#lsMenu .lsItem").height() + jQuery("#lsMenu .open .sm").height() + 20 + 8
		}, "fast");
	},
	login: function() {
		if(!jQuery("#lsMenu #lsProfil.open").get(0)){
			jQuery("#lsMenu #lsProfil .item").trigger("click");
		}else{
			jQuery("#header #frmLoginTop:visible #username").focus();
		}
	},
	btProfil: function() {
		jQuery(this).parent().addClass("goProfil");
	},
	btProfilOff: function() {
		jQuery(this).parent().removeClass("goProfil");
	},
	cat: function(){
		if(!jQuery("#btCat.selected").get(0)){
			jQuery("#btCat").addClass("selected");
			jQuery("#catSub").show("fast");
		}else{
			jQuery("#btCat").removeClass("selected");
			jQuery("#catSub").hide("fast");
		}
		
		return false;
	}
};

/* ########################################################### */
// news ticker
oldCountTickerPanel = 0;
var _ticker = {
	isLoaded:false,
	tickLoad: function(box,isReload){
		//try {
			var delai = 6000;
			if (box.attr("id") !== "template-slider") {
				var theInterval = setInterval(function(){
					tickMove(box);
				}, delai);
			}
			var tickerInterval;
			
			var indexCurr= 0; // current index
			if (isReload) {
				jQuery(".ticker", box).css("margin-left",'0px');
			}
			var marge = parseInt(jQuery(".ticker", box).css("margin-left")); // current position
			var total;
			if (isReload == true) {
				if (oldCountTickerPanel == 0) {
					total = (jQuery("li", box).length - 1); // number of ticker pane
					oldCountTickerPanel = total + 1;
				} else {
					total = jQuery("li", box).length - 1 - oldCountTickerPanel; // number of ticker pane
					oldCountTickerPanel = 0;
				}
			} else {
				total = (jQuery("li", box).length - 1); // number of ticker pane
			}
			
			var tickWidth = jQuery(".box", box).width(); //496; // mouvement in pixel
			jQuery(".ticker", box).height(jQuery(".ticker li:eq(0)", box).height()); // adjust height

			if(box.attr("id") === "moreArticles" || box.attr("id") === "newsTicker"){ this.isLoaded = false; }
			if (!this.isLoaded) {
				// function on the arrows
				
				if (box.attr("id") === "template-slider") {
					// Pour les templates ecards
					
					jQuery(".fleche", box).click(function(){
						if(jQuery(this).hasClass("right")){ // if right arrow
							tickMove(box);
							//window.clearInterval(theInterval);
							/*
							theInterval = setInterval(function(){
								tickMove(box);
							}, delai + 6000);*/
						}else{ // if left arrow
							tickMove(box, "left");
							//window.clearInterval(theInterval);
							/*
							theInterval = setInterval(function(){
								tickMove(box);
							}, delai + 6000);*/
						}
						return false;
					});
				} else {
				
					jQuery(".paging .tt", box).click(function(){
						if(jQuery(this).hasClass("rt")){ // if right arrow
							tickMove(box);
							clearInterval(theInterval); clearInterval(tickerInterval);
							theInterval = setInterval(function(){
								tickMove(box);
							}, delai + 3000);
						}else{ // if left arrow
							tickMove(box, "left");
							clearInterval(theInterval); clearInterval(tickerInterval);
							theInterval = setInterval(function(){
								tickMove(box);
							}, delai + 3000);
						}			
						return false;
					});
				}
			}
			
			function tickMove(laBox, side){ // move
				tickWidth = jQuery(".box", laBox).width();
				total = jQuery(".ticker li", laBox).length - 1;
				
				if(side == "right" || side == undefined){ // if right
					
					if(indexCurr == total) {
						indexCurr = 0; // update current
						jQuery(".ticker", laBox).animate({
							marginLeft: '0px',
							height:  jQuery(".ticker li:eq("+indexCurr+")", laBox).height()
						}, "normal");
						marge = 0; // update marge
						return false;
					}
													
					if(indexCurr <= total) {
						indexCurr += 1; // update current
						jQuery(".ticker", laBox).animate({
							marginLeft: (marge - tickWidth) + 'px',
							height:  jQuery(".ticker li:eq("+indexCurr+")", laBox).height()
						}, "normal");
						marge = marge - tickWidth; // update marge
					}
						
				}else{ // if left
					
					if(indexCurr == 0) {
						indexCurr = total; // update current
						jQuery(".ticker", laBox).animate({
							marginLeft: (0 - tickWidth*total) + 'px',
							height:  jQuery(".ticker li:eq("+indexCurr+")", laBox).height()
						}, "normal");
						marge = 0 - tickWidth*total; // update marge
						return false;
					}
					
					if(indexCurr > 0) {
						indexCurr -= 1; // update index
						jQuery(".ticker", laBox).animate({
							marginLeft: (marge + tickWidth) + 'px',
							height:  jQuery(".ticker li:eq("+indexCurr+")", laBox).height()
						}, "normal");
						marge = marge + tickWidth; // update marge
					}
				}
			}
			this.isLoaded = true;
			return theInterval;
		
		//} catch (e) { alert('Erreur: '+e); }
	}
};

/* ########################################################### */
// faq
var _faq = {
	load: function(){
		jQuery("#center h5 a").click(_faq.open);
		
		var url = String(window.location);
		var temp = [];
		temp = url.split("#");
		
		if(temp[1] !== ""){
			_faq.open(temp[1]);
		}
	},
	open: function(id){
		if(typeof id == "object"){
			jQuery(this).closest("h5").next().slideToggle("fast");
		}else{
			jQuery("#" + id).closest("h5").next().slideToggle("fast");
		}
		
		return false;
	}
};

/* ########################################################### */
// adresse
var _adresse = {
	load: function(){
		jQuery("#btAdvSearch").click(this.open);
	},
	open: function(){
		jQuery("#advSearch").toggle();
		return false;
	},
	loadWidget: function(target){
		jQuery("#loaderBoxAdresse").css("display","block");	
		target = '#boxAdresse .inner';
		jQuery.post(
			"/bonnes-adresses/widget",
			{
			},
			function(data)
			{
				jQuery("#loaderBoxAdresse").css("display","none");
				jQuery(target).html(data);
				jQuery("#boxAdresse select").selectbox();
				//jQuery("#widgets .closed .inner").slideUp("fast");
			}
		);
	}
};


/* ########################################################### */
// situationUser
var _situationUser = {
	load: function(){
		jQuery("#attribute_member_gender_required").change(_situationUser.sex);
		jQuery("#situationsUser input:checkbox").click(_situationUser.choice);
	},
	sex: function(){
		if(jQuery(this).attr("value") == "m"){
			jQuery("#boxSituationPreg").hide();
			jQuery("#boxSituationPreg input").attr("checked", "");
		}else{
			jQuery("#boxSituationPreg").show();
		}
	},
	choice: function(){
		if(this.id == "situationEssaie"){
			jQuery("#situationPreg").attr("checked", "");
		}
		if(this.id == "situationPreg"){
			jQuery("#situationEssaie").attr("checked", "");
		}
	}
};


/* ########################################################### */
// add receiver to email
var _addReceiver = {
	load: function(){
		// create, insert and hide form in popup
		var leForm = '<div id="receiverList" title="Ajouter un ami"><form action="#" method="post" class="iHigh">' +
			'<p class="iTxt"><label for="AmiList">Recherche :</label><input type="text" id="amiList" /></p>' +
			'<p class="iSel"><select><option>Choisir un groupe d\'ami</option><option>Tous</option><option>mplv</option><option>la clique</option></select></p>' +
			'<div class="boxMessages">' +
				'<ul id="laList" class="iCheck">' +
					'<li>' +
						'<input type="checkbox" name="unAmi" id="ami1" />' +
						'<label for="ami1">Mamancrocus</label>' +
					'</li>' +
					'<li>' +
						'<input type="checkbox" name="unAmi" id="ami2" />' +
						'<label for="ami2">Amelie2000</label>' +
					'</li>' +
					'<li>' +
						'<input type="checkbox" name="unAmi" id="ami3" />' +
						'<label for="ami3">Alex</label>' +
					'</li>' +
					'<li>' +
						'<input type="checkbox" name="unAmi" id="ami4" />' +
						'<label for="ami4">Kenny G</label>' +
					'</li>' +
					'<li>' +
						'<input type="checkbox" name="unAmi" id="ami5" />' +
						'<label for="ami5">Rikidi</label>' +
					'</li>' +
					'<li>' +
						'<input type="checkbox" name="unAmi" id=ami6"" />' +
						'<label for="ami6">Stevie</label>' +
					'</li>' +
				'</ul>' +
			'</div>' +
			'<div class="submit">' +
				'<ul>' +
					'<li><a href="#" class="btAction btMain"><span>Ajouter</span></a></li>' +
					'<li class="btCancel"><a href="#" class="btAction btMain"><span>Annuler</span></a></li>' +
				'</ul>' +
			'</div>' +
		'</form></div>';
		jQuery("#wrapper").after(leForm);
		jQuery("#receiverList").hide();
		
		jQuery("#amiList").liveUpdate("laList");
		
		jQuery("#receiverList .submit .btAction:eq(0)").click(_addReceiver.save) // add save action
		jQuery("#receiverList .submit .btAction:eq(1)").click(function(){ // cancel popup
			jQuery("#receiverList").dialog("close");
			return false;
		});
		
		jQuery("#receiverList").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false
		});
		
		/*jQuery(".addContact a").click(function(){ // open popup
			jQuery("#receiverList").dialog("open");
			return false;
		});*/
	},
	save: function(){ // save popup
		var liste = "";
		jQuery("#receiverList input:checked").next().each(function(){
			liste =  liste + jQuery(this).text() + ", ";
		});
		jQuery(".addContact input").val(liste);
		jQuery("#receiverList").dialog("close");
		return false;
	}
};


/* ########################################################### */
// popup to add a friend
var _dialogue = {
	diaLoad: function(){

		// create, insert and hide form in popup
		var leForm = '<div id="popFriend" title="Ajouter">' +
		'</div>';
		
		jQuery("#wrapper").after(leForm);
		jQuery("#popFriend").hide();

			
		jQuery("#popFriend").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false
		});
		
		jQuery(".btAddFriend").click(function(){ // open popup
			jQuery("#popFriend").load(
				"/amis/addfriend",
				{
					'url': member_url
				}
				).dialog("open");
			return false;
		});
	}
};


/* ########################################################### */
// Generic Popup
var _genericPopUp = {
	load: function(title,url,ajaxOptions){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false
		});
		
		jQuery("#popUp").html('<div class="loader"><img src="/library/images/temp/worker.gif"/></div>');
		
		jQuery("#popUp").load(url,ajaxOptions).dialog("open");

	}
};


/* ########################################################### */
// Confirm Popup
var _confirmPopUp = {
	
	// confirmation pour supprimer un ami
	deleteFriend: function(title,description,mode,member_url,page){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/amis/deletefriend",
             			{
             				'mode': mode,
             				'url' : member_url
             			},
  						function(data)
  						{
  							_amis.list(mode,page);
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});
		
		jQuery("#popUp").dialog("open");

	},
	
	// confirmation pour supprimer un groupe
	deleteFriendGroup: function(title,description,group_id){
		
		_formUtils.clearMessages('');
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons: 
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function() 
				{
					jQuery.post(
             			"/amis/deletefriendgroup", 
             			{
             				'groupid' : group_id
             			},
  						function(data)
  						{
  							if(data === 'success')
  							{
  								jQuery("#popUp").dialog("close");
  								_groupesAmis.listLoad();
    							
  							}else{
  								jQuery("#popUp").dialog("close");
  							}
  						}
  					);
             	}
			}
		});
		
		jQuery("#popUp").dialog("open");

	}
};


// --------------------------------------------------------------
//
// DISCUSSION              --------------------------------------
//
// --------------------------------------------------------------

var _discussions = {
	
//---------------------------------------------------------------
//  List discussions
// ---
	list: function(listmode,id,page){
	
	jQuery("#loaderList").show();
	
	jQuery("#listDiscussions").load(
		"/discussions/list",
		{
			'mode':listmode,
			'page':page,
			'id':id
		},
		function() //callback function
		{
				jQuery("#loaderList").hide();
				
				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
				_discussions.list( listmode,id,jQuery(this).attr("id") );
				return false;
			});
			
			jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
				return false;
			});
			
			jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");
			
			_tt.tipLoad();
			_dialogue.diaLoad();
			
		});
	},
// ----------------
//     Load Comments function
//
	commentsLoad : function(id){
		jQuery("#listcomments a.comment-all").click(_discussions.tabsChange);
		jQuery("#listcomments span#textHide").hide();
		
		jQuery("#listcomments ul ul").each(function(){
			jQuery("li:gt(1)", this).hide(); // hide all li except the 2 first one
		}) ;
	},
//------------
// Hide and show reply
//
	tabsChange : function(){
		
		if(jQuery(this).prev().find("li:eq(2):visible")[0] !== undefined){
			jQuery(this).prev().find("li:gt(1)").slideUp();
			jQuery("#listcomments span#textHide").hide();
			jQuery("#listcomments span#textShow").show();
		}else{
			jQuery(this).prev().find("li:gt(1)").slideDown();
			jQuery("#listcomments span#textHide").show();
			jQuery("#listcomments span#textShow").hide();	
		}
		return false;
	}	
};

//---------------------------------------------------------------
//
// COMMENTS                --------------------------------------
//
//---------------------------------------------------------------


var _comments = {
		
//-----------------------------------------------------------
// Envoyer un message
//--
	details: function(listmode,id,comment_id){
	
	jQuery("#loaderList").show();
	
	jQuery("#listcomments").load(
		"/commentaire/details",
		{
			'mode':listmode,
			'id':id,
			'comment_id':comment_id
		},
		function() //callback function
		{
				jQuery("#loaderList").hide();
				
				jQuery("#seeAllComments").click(function(){ // pagination
					_comments.showForm('bancdessai',id);
					_comments.list( listmode,id,1 );
				return false;
			});
			
			jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
				return false;
			});
			
			jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");
			
			_tt.tipLoad();
			_dialogue.diaLoad();
			_discussions.commentsLoad();
			
			}
	);
},
//-----------------------------------------------------------
// Envoyer un message
//--
	send: function(frmId,page){
	
		_formUtils.clearMessages('Comments');
		_formUtils.loading('Comments');
		jQuery.post(
			"/commentaire/savemessage", 
			jQuery("#"+frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBoxComments').css("display","none");
				jQuery('#submitBoxComments').css("display","block");
				total_error = jQuery(xml).find('total_error').text();

				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01Comments', jQuery(xml).find('description').text(), 'showFormCommentss');

				}else{
				
					_formUtils.showmsg('successBox01Comments', jQuery(xml).find('description').text(), 'showFormCommentss');
					_comments.list(jQuery("#"+frmId+' #attribute_object_name_required').val(), jQuery("#"+frmId+' #attribute_object_id_required').val() ,1);
					_formUtils.reset("#"+frmId);
				}

				//_formUtils.resetCaptcha();
			}
		);
	},
	
	sendReply: function(frmId,page){
		
		_formUtils.clearMessages('Comments');
		_formUtils.loading('Comments');
		jQuery.post(
			"/commentaire/savemessage", 
			jQuery("#"+frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBoxComments').css("display","none");
				jQuery('#submitBoxComments').css("display","block");
				total_error = jQuery(xml).find('total_error').text();

				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01Comments', jQuery(xml).find('description').text(), 'showFormCommentss');

				}else{
				
					_formUtils.showmsg('successBox01Comments', jQuery(xml).find('description').text(), 'showFormCommentss');
					_comments.list(jQuery("#"+frmId+' #attribute_object_name_required').val(), jQuery("#"+frmId+' #attribute_object_id_required').val() ,page);
					_formUtils.reset("#"+frmId);
				}
				jQuery('#'+frmId).hide();

				//_formUtils.resetCaptcha();
			}
		);
	},
//-----------------------------------------------------------
// liste
//--
	list: function(listmode,id,page){
	
		jQuery("#loaderList").show();
		
		jQuery("#listcomments").load(
			"/commentaire/list",
			{
				'mode':listmode,
				'page':page,
				'id':id
			},
			function() //callback function
			{
   				jQuery("#loaderList").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_comments.list( listmode,id,jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");
				
				_tt.tipLoad();
				_dialogue.diaLoad();
				_discussions.commentsLoad();
				
 			}
		);
	},
//-----------------------------------------------------------
// supprimer un message
//--
	deleteMessage: function(title,description,id,object_id,listmode,page){
	
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/commentaire/delete",
             			{
             				'object_name':listmode,
             				'object_id':object_id,
							'page':page,
							'id':id
             			},
  						function(data) //callback function
  						{
  							_comments.list(listmode,object_id,page);
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");
	},
//-----------------------------------------------------------
//Signaler un message
//--
	blameMessage: function(title,description,id,object_id,listmode,page){
	
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
          	{
          		jQuery("#popUp").dialog("close");
          	},
				"Oui" :function()
				{
					jQuery.post(
          			"/commentaire/blame",
          			{
          				'object_name':listmode,
          				'object_id':object_id,
							'page':page,
							'id':id
          			},
						function(data) //callback function
						{
						_comments.list(listmode,object_id,page);
//          				jQuery("#listcomments").after(data);
 						jQuery("#popUp").dialog("close");
						}
					);
          	}
			}
		});

		jQuery("#popUp").dialog("open");
	},
//-----------------------------------------------------------
// afficher un message
//--	
	showForm: function(listmode,id,page,member_url){
		jQuery("#loaderList").show();
		jQuery.post(
			"/commentaire/showform",
			{
				'mode':listmode,
				'id':id,
				'page':page,
				'member_url':member_url
			},
			function(data) //callback function
			{
				//alert(data);
				jQuery('#frmComments').remove();
   				jQuery("#showFormComments").hide().html(data).slideDown();
   				jQuery("#loaderList").hide();
				cd.load();
				
				// fix star rating
				jQuery("#frmComments .star-rating").width(14);
				jQuery("#frmComments .star-rating:odd a").css("marginLeft", "-14px")
 			}
		);
	},
	showFormReply: function(listmode,id,parent_id,page){
		
		// duplicate the loader list
		if(jQuery("#loaderListReply")[0]){
			var data = jQuery('#loaderListReply').clone();
			jQuery('#loaderListReply').remove();
		}else if(jQuery("#loaderList")[0]){
			var data = jQuery('#loaderList').clone();
			data.attr('id','loaderListReply');
		}
		// move to where it need to be
		if(jQuery("#comment_"+parent_id+" ul" )[0]){
			jQuery("#comment_"+parent_id+" ul" ).before(data);
		}else{
			jQuery("#comment_"+parent_id).append(data);
		}
		// launch loader list
		jQuery("#loaderListReply").show();
		
		if(jQuery("#frmCommentsReply")[0]){
			var data = jQuery('#frmCommentsReply').clone();
			jQuery('#attribute_parent_id',data).attr('value',parent_id);
			jQuery('#frmCommentsReply').remove();
			if(jQuery("#comment_"+parent_id+" ul" )[0]){
				jQuery("#comment_"+parent_id+" ul" ).before(data);
				jQuery('#frmCommentsReply').hide().slideDown();
			}else{
				jQuery("#comment_"+parent_id).append(data);
				jQuery('#frmCommentsReply').hide().slideDown();
			}
			jQuery("#loaderListReply").hide();
			cd.load();
		}else{
			jQuery.post(
				"/commentaire/showformreply",
				{
					'mode':listmode,
					'id':id,
					'parent_id':parent_id,
					'page':page
				},
				function(data) //callback function
				{
					//alert(data);
					jQuery('#frmComments').hide();
					if(jQuery("#comment_"+parent_id+" ul" )[0]){
						jQuery("#comment_"+parent_id+" ul" ).before(data);
						jQuery('#frmCommentsReply').hide().slideDown();
					}else{
						jQuery("#comment_"+parent_id).append(data);
						jQuery('#frmCommentsReply').hide().slideDown();
					}
					jQuery("#loaderListReply").hide();
					cd.load();
	 			}
			);
		}
	},
	showCommentsSection: function(id){
		
		jQuery.post(
			"/commentaire/showCommentsSection",
			{
				'id':id
			},
			function(data) //callback function
			{
				//alert(data);
   				jQuery("#showCommentsSection").html(data);
 			}
		);
	}
}



//---------------------------------------------------------------
//
// MESSAGERIE               --------------------------------------
//
//---------------------------------------------------------------


var _messagerie = {

//-----------------------------------------------------------
// popup fenetre
//--

	loadRecipientList: function(){
		try {
			jQuery("#loader_amis").show();
			
			jQuery("#popUp").remove();
			
			// create, insert and hide form in popup
			var popupContainer = '<div id="receiverList" title="Ajouter des destinataires">&nbsp;</div>';
			
			jQuery("#wrapper").after(popupContainer);
			
			jQuery("#receiverList").hide();
			
			jQuery("#receiverList").dialog({ // set popup
				autoOpen: false,
				modal: true,
				resizable: false
			});
			
			
			jQuery("#receiverList").load(
				"/messagerie/addrecipient",
				function() //callback function
				{
				/**/
					
					jQuery("#loader_amis").hide();
					
					jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod").addClass("tt");

					jQuery("#amiList").liveUpdate("laList",".grouptitles");
					
					jQuery("#btnAjouter").click(function(){ // ajouter destinataire
						_messagerie.addRecipient("receiverList");
						return false;
					});
					
					jQuery("#btnAnnuler").click(function(){ // annuler
						jQuery("#receiverList").dialog('close');
						return false;
					});
					
					
				}
			);
			
		} catch (e) { alert('Erreur: '+e); }
	
	},showRecipientList: function(){
		
		jQuery("#receiverList").dialog("open");
	
	},
//-----------------------------------------------------------
// popup fenetre
//--
	loadCheckList: function(page){
		try {
			jQuery("#loader_amis").show();
			
			jQuery("#popUp").remove();
			
			// create, insert and hide form in popup
			var popupContainer = '<div id="popUp" title="Ajouter des destinataires">' +
			'</div>';
			
			jQuery("#wrapper").after(popupContainer);
			jQuery("#popUp").hide();

				
			jQuery("#popUp").dialog({ // set popup
				autoOpen: false,
				modal: true,
				resizable: false
			});
			
			jQuery("#popUp").load(
				"/messagerie/addrecipient",
				function() //callback function
				{
					jQuery("#loader_amis").hide();
					
					jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");

					jQuery("#amiList").liveUpdate("laList");
					
					_tt.tipLoad();
					_dialogue.diaLoad();
				}
			).dialog("open");
		} catch (e) { alert('Erreur: '+e); }
	},
//--
	
//-----------------------------------------------------------
// Ajouter les amis au destinataire
//--
	addRecipient: function(listID){ // save popup
		var liste = "";
		jQuery("#"+listID+" input:checked").next().each(function(){
			liste =  liste + jQuery(this).text() + ", ";
		});
		
		jQuery("#attribute_recipient_required").val(liste);
		jQuery("#receiverList").dialog("close");
		return false;
	},
//--
	
//-----------------------------------------------------------
// Lister les amis
//--
	listfriends: function(listmode,page){
		
		jQuery("#loader_amis").show();
		
		jQuery("#liste_amis").load(
			"/amis/liste",
			{
				'mode':listmode,
				'group_id':jQuery('#attribute_group_id').val(),
				'page':page
			},
			function() //callback function
			{
   				jQuery("#loader_amis").hide();
				
				jQuery("#btnAjouter").click(function(){ // ajouter destinataire
					_messagerie.addRecipient("receiverList");
					return false;
				});
				
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");


 			}
		);
		
	},
//--

//-----------------------------------------------------------
// Envoyer un message
//--
	sendMessage: function(frmId){
		try {
			_formUtils.clearMessages('');
			_formUtils.loading('');
			//alert(jQuery("#"+frmId).formSerialize());
			jQuery.post(
				"/messagerie/saveenvoyermessage", 
				jQuery("#"+frmId).serialize(),
				function(xml) //callback function
				{
					jQuery('#loaderBox').css("display","none");
					jQuery('#submitBox').css("display","block");
					total_error = jQuery(xml).find('total_error').text();
					
					if(total_error === '1')
					{
						_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
						
					}else{
					
						_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());

						//_formUtils.reset("#"+frmId);
						jQuery("#"+frmId).clearForm();						
					}
					
					//_formUtils.resetCaptcha();
				}
			);
		} catch (e) { alert('Erreur: '+e); }
	},
//-----------------------------------------------------------
// Sauvegarder les parametres
//--
	saveparametres: function(frmId){
	
		_formUtils.clearMessages('');
		_formUtils.loading('');
		//alert(jQuery("#"+frmId).formSerialize());
		jQuery.post(
			"/messagerie/saveparametres", 
			jQuery("#"+frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBox').css("display","none");
				jQuery('#submitBox').css("display","block");
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text(),'wrapper');
					
				}else{
				
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text(),'wrapper');
					
				}
				
				//_formUtils.resetCaptcha();
			}
		);
	},
//-----------------------------------------------------------
// Lister les messages
//--
	list: function(listmode,page,isdisplay){
		try {
			jQuery("#loader_liste_messages").show();
			
			jQuery("#liste_messages").load(
				"/messagerie/liste",
				{
					'mode':listmode,
					'page':page,
					'isdisplay':isdisplay
				},
				function() //callback function
				{
					jQuery("#loader_liste_messages").hide();
					
					jQuery("#boxMessages tr td.clickable").click(function(){ // pagination
						_messagerie.display( jQuery(this).parent().attr("id"),listmode,page );
						return false;
					});
					
					jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
						_messagerie.list( listmode,jQuery(this).attr("id"),false );
						return false;
					});
					
					jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
						return false;
					});
					
					jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");
					
					_tt.tipLoad();
					_dialogue.diaLoad();
					
				}
			);
		} catch (e) { alert('Erreur: '+e); }
	},
//--

//-----------------------------------------------------------
// Afficher la page
//--
	display: function(id,listmode,page){
		jQuery("#boxMessages table tr").removeClass("selected");
		jQuery("tr#"+id+"").addClass("selected");
		
		jQuery("#affichermessage").empty();
		jQuery("#loader_box_messages").show();
		jQuery("#affichermessage").load(
			"/messagerie/afficher",
			{	
				'mode':listmode,
				'page':page,
				'id':id
			},
			function() //callback function
			{
   				jQuery("#loader_box_messages").hide();
   				jQuery("tr#"+id+"").removeClass("unread");
 			}
		);
	},
//-----------------------------------------------------------
// enlever un message
//--
	deleteMessage: function(title,description,frmId,listmode,page){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/messagerie/delete",
             			jQuery("#"+frmId).serialize(),
  						function(data) //callback function
  						{
  							_messagerie.list(listmode,page,true);
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");

	},
//-----------------------------------------------------------
// compter les messages non lues
//--
	countUnreadMessages: function(listmode){
		
		jQuery.post(
			"/messagerie/countunreadmsg", 
			{
			'listmode':listmode
			},
			function(count) //callback function
			{
				if(count > 0)
				{	
					//alert(jQuery('#count'+listmode+'').each());
					jQuery('.count'+listmode+'').css("display","block").html( '<em>'+count+'</em>' );
				}else{
					jQuery('.count'+listmode+'').css("display","none");
				}
			}
		);
	}
};
//
// END MESSAGERIE									    	  //
//---------------------------------------------------------------

//---------------------------------------------------------------
//
// FILDENOUVELLES               ---------------------------------
//
//---------------------------------------------------------------

var _fildenouvelles = {
	paramsave : function(){
		//alert( jQuery('#frmParamSel') );
		//alert( jQuery('#frmParamSel').serialize() );
		jQuery('#loaderBox').css("display","block");
		jQuery('#submitBox').css("display","none");
		jQuery.post(
			"/Fildenouvelles/paramSel",
			jQuery('#frmParamSel').serialize(),
			function(xml) //callback function
			{
				_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
				jQuery('#frmBox').css("display","none");
				jQuery('#loaderBox').css("display","none");
				jQuery('#submitBox').css("display","block");
			}
		);
	}
};
//
// END FILDENOUVELLES								    	  //
//---------------------------------------------------------------

//---------------------------------------------------------------
//
// CE QUE JAI DIT               --------------------------------
//
//---------------------------------------------------------------

var _jaidit = {
//-----------------------------------------------------------
// sauvegarder les parametres
//--
	list: function(page){
		
		
		jQuery("#loader_liste_JaiDit").show();
		
		jQuery.post(
			"/passerelle/jaidit", 
			jQuery("#frmListCommentaires").serialize()+'&page='+page,
			function(xml) //callback function
			{
				render = jQuery(xml).find('render').text();
				jQuery("#listJaiDit").html(render);
				
				_jaidit.updatecountcomments('countWall',xml);
				_jaidit.updatecountcomments('countPic',xml);
				_jaidit.updatecountcomments('countArticles',xml);
				_jaidit.updatecountcomments('countDiscussions',xml);
				_jaidit.updatecountcomments('countEvents',xml);
				_jaidit.updatecountcomments('countBancdessai',xml);
				_jaidit.updatecountcomments('countForum',xml);
				_jaidit.updatecountcomments('countAddr',xml);
				_jaidit.updatecountcomments('countVideo',xml);
				
				//jQuery("#listJaiDit").show()
				jQuery("#loader_liste_JaiDit").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_jaidit.list(jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				_tt.tipLoad();
			}
		);
	},
	updatecountcomments: function(object_name, xml)
	{
		value = jQuery(xml).find(object_name).text();
		
		if(value)
		{
			jQuery("em#"+object_name+"").html('('+value+')');
		}else{
			//jQuery("em#"+object_name+"").html('(0)');
		}
	},
	supprimercomment: function(object_name, comment_id, page){
	
		_formUtils.clearMessages('');
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="Supprimer un commentaire">' +
		
		'<p id="confirmPopUpDescription">&Ecirc;tes-vous sur de vouloir supprimer ce commentaire?</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons: 
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function() 
				{
					jQuery.post(
             			"/passerelle/deletecomment", 
             			{
             				'object_name' : object_name,
             				'comment_id' : comment_id,
             				'page' : page
             			},
  						function(xml)
  						{
  							total_error = jQuery(xml).find('total_error').text();
  							
  							if(total_error === '1')
  							{
  								jQuery("#popUp").dialog("close");
  								
  							}else{
  							
  								jQuery("#popUp").dialog("close");
  								_jaidit.list(page);
    							
  							}
  						}
  					);
             	}
			}
		});
		
		jQuery("#popUp").dialog("open");
	}
}


//---------------------------------------------------------------
//
// CE QUE JE CONSEILLE               --------------------------------
//
//---------------------------------------------------------------

var _jeconseille = {
//-----------------------------------------------------------
// sauvegarder les parametres
//--
	list: function(page){
		
		jQuery("#loader_liste_JeConseille").show();
		
		jQuery.post(
			"/passerelle/jeconseille", 
			jQuery("#frmListSuggestions").serialize()+'&page='+page,
			function(xml) //callback function
			{
				render = jQuery(xml).find('render').text();
				jQuery("#listJeConseille").html(render);
				
				_jeconseille.updatecountcomments('countArticle',xml);
				
				_jeconseille.updatecountcomments('countEssai',xml);
				
				_jeconseille.updatecountcomments('countEvent',xml);
				
				_jeconseille.updatecountcomments('countAddr',xml);
				
				_jeconseille.updatecountcomments('countVideo',xml);
				
				//jQuery("#listJaiDit").show()
				jQuery("#loader_liste_JeConseille").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_jeconseille.list( jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				_tt.tipLoad();
			}
		);
	},
	updatecountcomments: function(object_name, xml)
	{
		value = jQuery(xml).find(object_name).text();
		
		if(value)
		{
			jQuery("em#"+object_name+"").html('('+value+')');
		}else{
			//jQuery("em#"+object_name+"").html('(0)');
		}
	},
// confirmation pour supprimer un groupe
	deleteFavoris: function(title,description,id,page, object_name){
		
		_formUtils.clearMessages('');
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons: 
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function() 
				{
					jQuery.post(
             			"/passerelle/deletefavoris", 
             			{
             				'id' : id,
             				'object_name': object_name
             			},
  						function(xml)
  						{
  							total_error = jQuery(xml).find('total_error').text();
  							
  							if(total_error === '1')
  							{
  								jQuery("#popUp").dialog("close");
  								
  							}else{
  							
  								jQuery("#popUp").dialog("close");
  								_jeconseille.list(page);
    							
  							}
  						}
  					);
             	}
			}
		});
		
		jQuery("#popUp").dialog("open");

	}
}



//---------------------------------------------------------------
//
// CONFIDENTIALITE               --------------------------------
//
//---------------------------------------------------------------

var _confidentialite = {
//-----------------------------------------------------------
// sauvegarder les parametres
//--
	save: function(frmId){
		
		_formUtils.clearMessages('');
		_formUtils.loading('');
		
		jQuery.post(
			"/confidentialite/save", 
			jQuery("#"+ frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBox').css("display","none");
				
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
					_formUtils.reset('#frmBabillard');
					jQuery('#submitBox').css("display","block");
					
				}else{
				
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					jQuery('#submitBox').css("display","block");
					//_formUtils.reset('#'+ frmId +'');
					
				}
			}
		);
	}
}

//---------------------------------------------------------------
//
// ENFANTS               --------------------------------------
//
//---------------------------------------------------------------


var _enfants = {
//-----------------------------------------------------------
// ajouter un enfant
//--
	addchildren: function(frmId){
		
		_formUtils.clearMessages('');
		_formUtils.loading('');
		
		jQuery.post(
			"/enfants/saveenfant", 
			jQuery("#"+ frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBox').css("display","none");
				
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
					
					_formUtils.reset('#frmBabillard');
					jQuery('#submitBox').css("display","block");
					
				}else{
					FILENAV_CURRENT_FILE_URL = jQuery('#thumbnails img').attr('src');
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					jQuery('#submitBox').css("display","block");
					
					new_birthday = jQuery('#attribute_child_birthday_required').val();
					
					if (jQuery('#attribute_enfant').val() == "") {
						_formUtils.reset('#'+ frmId +'');
					}
							
					
					jQuery('#attribute_child_birthday_required').val(new_birthday);
					
				}
			}
		);
	},
//-----------------------------------------------------------
// confirmation pour supprimer un enfant
//--
	deleteChildren: function(title,description,child_id){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/enfants/deleteenfant",
             			{ 	//parameters
             				'id' : child_id
             			},
  						function(data) //callback function
  						{
  							jQuery("#enfant"+child_id+"").remove();
  							_formUtils.resetDarkAlternance('ul.listFriend li');
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");

	}
}



//---------------------------------------------------------------
//
// BABILLARD               --------------------------------------
//
//---------------------------------------------------------------


var _babillard = {

//-----------------------------------------------------------
// Lister le babillard
//--
	list: function(member_url,page){
		
		jQuery("#loader_babillard").show();
		
		jQuery("#liste_babillard").load(
			"/babillard/liste",
			{
				'url':member_url,
				'page':page
			},
			function() //callback function
			{
   				jQuery("#loader_babillard").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_babillard.list(member_url,jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
 			}
		);
	},
	
//-----------------------------------------------------------
// Ecrire sur le babillard
//--
	addMessage: function(frmId,url){
	
		_formUtils.clearMessages('');
		_formUtils.loading('');
		
		jQuery.post(
			"/babillard/savemessage", 
			jQuery("#"+frmId).serialize(), 
			function(xml) //callback function 
			{
				jQuery('#loaderBox').css("display","none");
				
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
					
					_formUtils.reset('#frmBabillard');
					jQuery('#submitBox').css("display","block");
					
				}else{
				
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					jQuery('#submitBox').css("display","block");
					_formUtils.reset('#frmBabillard');
					_babillard.list(url,1);
					
				}
			}
		);
	},
//-----------------------------------------------------------
// enlever un message
//--
	deleteMessage: function(title,description,id,member_url,page){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/babillard/delete",
             			{
             				'id' : id
             			},
  						function(data) //callback function
  						{
  							_babillard.list(member_url,page);
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");

	}
	
};  
//
// END BABILLARD									    	  //
//---------------------------------------------------------------



//---------------------------------------------------------------
//
// CERCLE D'AMIS           --------------------------------------
//
//---------------------------------------------------------------

var _amis = {
	
//-----------------------------------------------------------
// Ajouter a la liste d'amis
//--
	addFriend: function(frmId, listmode, page){
	
		_formUtils.clearMessages('');
		_formUtils.loading('');
		
		jQuery.post(
			"/amis/saveaddfriend", 
			jQuery("#"+frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBox').css("display","none");
				
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					jQuery('#errorBox01').css("display","block");
					jQuery('#errorBox01').html( jQuery(xml).find('description').text() );
					jQuery('#frmBox').css("display","none");
					
					_formUtils.reset('#frmAmi');
					
				}else{
				
					//_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					
					jQuery('#successBox01').css("display","block");
					jQuery('#successBox01').html( jQuery(xml).find('description').text() );
					
					jQuery('#frmBox').css("display","none");

					_formUtils.reset('#frmAmi');
					
					if(listmode != 'search')
					{
						_amis.list(listmode,page);
					}
				}
			}
		);
	},
//--
//-----------------------------------------------------------
// Trouver un membre
//--
	findFriend: function(frmId, page){
		
		if(frmId == 'frmfindfriendbyname')
		{
			suffix = 'ByName';
			jQuery("#loaderBoxListe").css("display","block");
			jQuery("#liste_amis").css("display","none");
		}else{
			suffix = 'Recherche';
		}
		
		_formUtils.clearMessages(''+suffix);
		_formUtils.loading(''+suffix);
		
		
		
		jQuery.post(
			"/amis/findfriend", 
			jQuery("#"+frmId).serialize()+'&page='+page+'',
			function(xml) //callback function
			{
				if(frmId == 'frmfindfriend'){
					jQuery('#loaderBox'+suffix).css("display","none");
					jQuery('#submitBox'+suffix).css("display","block");
					
					total_error = jQuery(xml).find('total_error').text();
					
					if(total_error === '1')
					{
						_formUtils.showmsg('errorBox01'+suffix, jQuery(xml).find('err_msg').text());
						jQuery('#frmBox').css("display","none");
						
						_formUtils.reset('#frmAmi');
						
					}else{
						_formUtils.showmsg('successBox01'+suffix, 'Le membre a &eacute;t&eacute; trouv&eacute;. Veuillez patienter, vous serez redirig&eacute; vers sa page en un instant.');
						window.location.replace( jQuery(xml).find('redirect').text() ); 
					}
				}else{
					
					total_error = jQuery(xml).find('total_error').text();
					
					if(total_error === '1')
					{
						_formUtils.showmsg('errorBox01'+suffix, jQuery(xml).find('err_msg').text());
						
					}else{
					
						jQuery("#liste_amis").html(xml);
						jQuery("#liste_amis").css("display","block");
						jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
							_amis.findFriend( frmId,jQuery(this).attr("id") );
							return false;
						});
						
						jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
							return false;
						});
					}
					jQuery("#loaderBoxListe").css("display","none");
					
					jQuery('#loaderBox'+suffix).css("display","none");
					jQuery('#submitBox'+suffix).css("display","block");
				}
				_tt.tipLoad();
			}
		);
	},
	requestFriend: function(member_url,listmode)
	{
		_genericPopUp.load
		(
			 'Ajouter'
			,'/amis/addfriend'
			,{	
				'url': member_url,
				'listmode': listmode
			}
		);
		return false;
	},
//-----------------------------------------------------------
// Lister les amis
//--
	list: function(listmode,page){
		
		jQuery("#loader_amis").show();
		
		group_id = jQuery('#attribute_group_id').val();
		
		if( group_id == null ){
			group_id = '';
		}
		
		jQuery("#liste_amis").load(
			"/amis/liste",
			{
				'mode':listmode,
				'group_id':group_id,
				'page':page
			},
			function() //callback function
			{
   				jQuery("#loader_amis").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_amis.list( listmode,jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");

				_tt.tipLoad();
				_dialogue.diaLoad();

 			}
		);
		
	},
//--
//-----------------------------------------------------------
// Lister les amis
//--
	listmeressemble: function(){
		
		
		
		jQuery("#loader_amis").show();
		
		if(jQuery("#liste_amis").html() != "")
		{
			jQuery("#liste_amis").empty();
			window.location.replace('#content');
		}
		
		jQuery("#liste_amis").load(
			"/amis/listemeressemble",
			{
				'critere':jQuery('#critere').val()
			},
			function() //callback function
			{
   				jQuery("#loader_amis").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_amis.listmeressemble(jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");

				_tt.tipLoad();
				_dialogue.diaLoad();

 			}
		);
		
	},
//--
	
//-----------------------------------------------------------
// Lister les amis
//--
	listmemberfriends: function(url,page){
						
		jQuery("#loader_amis").show();
		
		jQuery("#liste_amis").load(
			"/amis/liste",
			{
				'mode':'lesamis',
				'url':url,
				'page':page
			},
			function() //callback function
			{
				jQuery("#loader_amis").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_amis.listmemberfriends( url,jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");

				_tt.tipLoad();
				_dialogue.diaLoad();

 			}
		);
		
	},
	
//-----------------------------------------------------------
// confirmation pour supprimer un ami
//--
	deleteFriend: function(title,description,mode,member_url,page){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/amis/deletefriend",
             			{ 	//parameters
             				'mode': mode,
             				'url' : member_url
             			},
  						function(data) //callback function
  						{
  							_amis.list(mode,page);
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");

	},
	
//-----------------------------------------------------------
// count demande d'amis
//--
	countRequests: function(){
		
		jQuery.post(
			"/amis/countrequests", 
			function(count) //callback function
			{
				if(count > 0)
				{	
					//alert(jQuery('#count'+listmode+'').each());
					jQuery('.countfriendrequests').css("display","block").html( '<em>'+count+'</em>' );
				}
			}
		);

	},
	
//-----------------------------------------------------------
// change group Form popup
//--
	changeGroup: function(member_friend_id){
		
		_genericPopUp.load
		(
			 'Changer un ami de groupe'
			,'/amis/changegroup'
			,{	
				'member_friend_id': member_friend_id
			}
		
		);
		return false;

	},
//-----------------------------------------------------------
// change group Save
//--
	savechangefriend: function(frmId, listmode, page){
	
		_formUtils.clearMessages('');
		_formUtils.loading('');
		
		jQuery.post(
			"/amis/savechangegroup", 
			jQuery("#"+frmId).serialize(),
			function(xml) //callback function
			{
				jQuery('#loaderBox').css("display","none");
				
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
					jQuery('#frmBox').css("display","none");
					
					_formUtils.reset('#frmAmi');
					
				}else{
									
					jQuery('#popUp').dialog('close');
														
					/*_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					
					jQuery('#frmBox').css("display","none");*/
					
					_formUtils.reset('#frmAmi');
					_amis.list(listmode,page);
				
					document.location = "/amis/mesamis"					
				}
			}
		);
	}
};  
//
// END CERCLE D'AMIS								     		  //
//------------------------------------------------------------------


//---------------------------------------------------------------
//
// GROUPE D'AMIS           --------------------------------------
//
//---------------------------------------------------------------

var _groupesAmis = {
	listLoad: function(){
		
		jQuery("#loader_amis").show();
		
		jQuery("#liste_amis").load(
			"/amis/listegroupes",
			function()
			{
   				jQuery("#loader_amis").hide();
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod").addClass("tt");
				_tt.tipLoad();
				_dialogue.diaLoad();
 			}
		);
	},
	modGroup: function(group_id,group_name){
			
	},
	addGroup: function(){
		_formUtils.clearMessages('');
		jQuery.post(
			"/amis/saveaddgroup", 
			jQuery("#frmGroup").serialize(),
			function(xml)
			{
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text(),'wrapper');
					
				}else{
				
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text(),'wrapper');
					_formUtils.reset('#frmGroup');
					_groupesAmis.listLoad();
					
				}
			}
		);
	}
};

//
// END CERCLE D'AMIS								     		  //
//------------------------------------------------------------------


//---------------------------------------------------------------
//
// MA GROSSESSE            --------------------------------------
//
//---------------------------------------------------------------

var _grossesse = {
//-----------------------------------------------------------
// sauvegarder les parametres
//--
	saveParameters: function(){
		_formUtils.clearMessages('');
		_formUtils.loading('');
		jQuery.post(
			"/grossesse/saveparametres", 
			jQuery("#frmParametresGrossesse").serialize(),
			function(xml)
			{
				jQuery('#loaderBox').css("display","none");
				jQuery('#submitBox').css("display","block");
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text(),'wrapper');
					
				}else{
				
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text(),'wrapper');
					location.reload();
				}
			}
		);
	},
//-----------------------------------------------------------
// sauvegarder journal
//--
	saveJournal: function(){
		_formUtils.clearMessages('');
		_formUtils.loading('');
		jQuery.post(
			"/grossesse/savejournal", 
			jQuery("#frmJournalGrossesse").serialize(),
			function(xml)
			{
				jQuery('#loaderBox').css("display","none");
				jQuery('#submitBox').css("display","block");
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
					
				}else{
				
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					_grossesse.detailsLoad( jQuery("#frmJournalGrossesse #attribute_pregnancy_period_required").val() );
				}
			}
		);
	},
//-----------------------------------------------------------
// details journal
//--
	detailsLoad: function(period){
		
		jQuery("#loader_journal_details").show();
		jQuery("#journal_details").empty().load(
			"/grossesse/journaldetails",
			{
				'period':period
			},
			function()
			{
				_tabs.tabsLoad();
   				jQuery("#loader_journal_details").hide();
 			}
		);
	},
	
//-----------------------------------------------------------
// accoucher
//--
	accoucher: function(){
		
		jQuery('#errorBox02').css("display","none");
		jQuery('#errorBox02').html("");
		
		jQuery('#successBox02').css("display","none");
		jQuery('#successBox02').html("");
		
		jQuery('#loaderBox2').css("display","block");
		jQuery('#submitBox2').css("display","none");
		
		
		jQuery.post(
			"/grossesse/saveaccouche", 
			jQuery("#frmParametresAccouche").serialize(),
			function(xml)
			{
				jQuery('#loaderBox2').css("display","none");
				jQuery('#submitBox2').css("display","block");
				total_error = jQuery(xml).find('total_error').text();
				
				if(total_error === '1')
				{
					jQuery('#errorBox02').css("display","block");
					jQuery('#errorBox02').html( jQuery(xml).find('description').text() );
					
				}else{
					
					_grossesse.popupEnfant(
						'Accouchement',
						'<p>Les informations pour cet accouchement ont &eacute;t&eacute; sauvegard&eacute;s avec succ&egrave;s.</p><p> Voulez-vous ajouter un enfant?</p>', 
						jQuery(xml).find('description').text() 
					);
					//jQuery('#successBox02').css("display","block");
					//jQuery('#successBox02').html( jQuery(xml).find('description').text() );
					//location.reload();
				}
			}
		);

	},
	
//-----------------------------------------------------------
// confirmation pour supprimer un ami
//--
	popupEnfant: function(title,description,grossesse_id){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non merci, je le ferai plus tard." :function()
             	{
             		location.reload();
             	},
				"Oui, j'aimerais ajouter un enfant dans ma liste" :function()
				{
					window.location = '/enfants/ajouterenfant/new/'+grossesse_id;

             	}
			}
		});

		jQuery("#popUp").dialog("open");

	},
	
//-----------------------------------------------------------
// confirmation pour supprimer une grossesse
//--
	deleteJournal: function(title,description,id){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/grossesse/deletegrossesse",
             			{ 	//parameters
             				'id' : id
             			},
  						function(data) //callback function
  						{
							jQuery("#journal"+id+"").remove();
							location.reload();
							
    						jQuery("#popUp").dialog("close");
    						
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");

	},
	
//-----------------------------------------------------------
// confirmation pour supprimer une entree du journal
//--
	deleteJournalEntry: function(title,description,id){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery.post(
             			"/grossesse/deletejournalentry",
             			{ 	//parameters
             				'id' : id
             			},
  						function(data) //callback function
  						{
  							if(data == "success")
  							{
								jQuery("#journal"+id+"").remove();
								//location.reload();
    							jQuery("#popUp").dialog("close");
    							
    						}
  						}
  					);
  					
  					_grossesse.detailsLoad( id );
             	}
			}
		});

		jQuery("#popUp").dialog("open");

	}
};

//
// END GROSSESSE     								     		  //
//------------------------------------------------------------------



//---------------------------------------------------------------
//
// GLOBALS           --------------------------------------
//
//---------------------------------------------------------------

var _global = {
	getAccountMenu: function(menu_horizontal_selected)
	{
		jQuery.post(
			"/block/getaccountmenu",
			{'menu_horizontal_selected':menu_horizontal_selected},
			function(block)
			{
				jQuery("#lsProfil").html( block );
				
				jQuery("#lsMenu #lsProfil .item em").hover(_menu.btProfil, _menu.btProfilOff)
				
				jQuery("#lsMenu #lsProfil .item").click(_menu.menChange);
				jQuery("#lsMenu #lsProfil .lsSm a").click(_menu.subChange);
				
				jQuery("#lsMenu .lsItem .sm").hide();
				jQuery("#lsMenu .open .sm").show();
				
				if(jQuery("#lsMenu .lsItem.open").get(0)){ // fix header height depending on open submenu or not
					jQuery("#lsMenu").height(jQuery("#lsMenu .lsItem").height() + jQuery("#lsMenu .lsItem.open .sm").height() + 20);
				}else{
					jQuery("#lsMenu").height(jQuery("#lsMenu .lsItem").height());
				}
				
				jQuery("#lsMenu #password").keypress(function(e) {
					if(e.which == 13){
						jQuery("#header #frmLoginTop .btBlue a").trigger("click");
					}
				});
								
				// special case for sm profil
				_menu.profilCheck();
				_tt.tipLoad();
			}
		);
	},
	getNextEvent: function()
	{
		jQuery.post(
			"/block/getnextevent",
			function(block)
			{
				jQuery("#events").html( block );

			}
		);
	},
	isIframe: function() 
	{
		if (window.top === window.self) {
			return false;
		} else {
			return true;
		}		
	}
};

//
// END GLOBALS								     		  //
//------------------------------------------------------------------


var _cookies = {

	load_widgets: function(){
		jQuery('.aWidget h3').eq(0).click(function() {
            //jQuery.cookie('', 'test', options);
            //return false;
        });
	}
}

//---------------------------------------------------------------
//
// MEMBRE              		-------------------------------------
//
//---------------------------------------------------------------

var _membre = {
//-----------------------------------------------------------
// lister photos
// album_id:integer, membre_id:integer, page:integer
//--
//	list:function(album_id,membre_id,page) {
//		jQuery("#listePhotoAjax").load(
//			"/photos/listemembrephotos",
//			{
//				 'page':page
//				,'member_id':membre_id
//				,'album_id':album_id
//			}
//		);
//	},
	
	list:function(album_id,membre_id,page) {
//		jQuery('#loader_list').show();
//		jQuery("#listePhotoAjax").empty();
		jQuery("#listePhotoAjax").load(
			"/photos/listemembrephotos",
			{
				 'page':page
				,'member_id':membre_id
				,'album_id':album_id
			},
			function() {
//				jQuery('#loader_list').hide();
				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_membre.list( album_id,membre_id,jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
			}
		);
	},
//-----------------------------------------------------------
// Ajouter aux favoris
//--
	addtofavorites:function(id,object) {
		jQuery.post(
			"/passerelle/addtofavorites", 
			{
				'id': id,
				'object': object
			},
			function(message)
			{
				jQuery("#popUp").remove();
				
				// create, insert and hide form in popup
				var popupContainer = '<div id="popUp" title="Article">' +
				
				'<p id="confirmPopUpDescription">'+ message +'</p>'+
				
				'</div>';
				
				jQuery("#wrapper").after(popupContainer);
				jQuery("#popUp").hide();
		
				jQuery("#popUp").dialog({ // set popup
					autoOpen: false,
					modal: true,
					resizable: false,
					buttons:
					{
						"Ok" :function()
		             	{
		             		jQuery("#popUp").dialog("close");
		             	}
					}
				});
				
				jQuery("#popUp").dialog("open");
			}
		);
	},
	
	loginValidationFromMenu:function(data)
	{ 
		var from = window.location;
		
		jQuery('#loader_topmenu').show();
		jQuery('#errorBox01Login_topmenu').hide(); 
		jQuery('#loginSubmit').hide(); 
		
		if (jQuery('#frmLogin #password').val() != "" || jQuery('#frmLogin #username').val() != "") 
		{
			jQuery.post(
				"/membres/validateidentification", data,
				function(xml)
				{
					total_error = jQuery(xml).find('total_error').text();
					if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
						_formUtils.showmsg('errorBox01Login_topmenu', jQuery(xml).find('description').text(),'none');
						jQuery('#loader_topmenu').hide();
						jQuery('#loginSubmit').show();
						_menu.updateHeight();
					} else {
						//window.location.replace(answ);
						from = String(from);
						dieselocation = from.lastIndexOf("#");
						
						if (dieselocation > -1) {
							window.location.replace(jQuery(xml).find('description').text());
						} else {
							window.location.replace(from);
						}
					}
				}
			);
		} 
		
		_menu.updateHeight();
		return false;
	},

	loginValidation:function(data)
	{ 
		var from = window.location;
		
		jQuery('#loader').show();
		jQuery('#errorBox01Login').hide(); 
//		jQuery('#loginSubmit').hide(); 
		
		if (jQuery('#frmLogin #password').val() != "" || jQuery('#frmLogin #username').val() != "") 
		{
			jQuery.post(
				"/membres/validateidentification", data,
				function(xml)
				{
					total_error = jQuery(xml).find('total_error').text();
					if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
						_formUtils.showmsg('errorBox01Login', jQuery(xml).find('description').text(),'none');
						jQuery('#loader').hide();
//						jQuery('#loginSubmit').show();
						_menu.updateHeight();
					} else {
						//window.location.replace(answ);
						from = String(from);
						dieselocation = from.lastIndexOf("#");
						
						if (dieselocation > -1) {
							window.location.replace(jQuery(xml).find('description').text());
						} else {
							window.location.replace(from);
						}
					}
				}
			);
		} 
		
		_menu.updateHeight();
		return false;
	}
		
}

//---------------------------------------------------------------
//
// END MEMBRE		        -------------------------------------
//
//---------------------------------------------------------------

//---------------------------------------------------------------
//
// MONPROFIL              	-------------------------------------
//
//---------------------------------------------------------------
var _monprofil = {
//-----------------------------------------------------------
// lister photos
// album_id:integer, membre_id:integer, page:integer
//--
	list:function(album_id,membre_id,page) {
		jQuery('#loader_list').show();
		jQuery("#listePhotoAjax").empty();
		jQuery("#listePhotoAjax").load(
			"/photos/listemonprofilphotos",
			{
				 'page':page
				,'member_id':membre_id
				,'album_id':album_id
			},
			function() {
				jQuery("#loader_list").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
   					_monprofil.list(album_id,membre_id,jQuery(this).attr("id"));
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
			}
		);
	},
//-----------------------------------------------------------
// sauvegarde la photo uploadé ou choisie 
// formId:string
//--
	savePhotoProfil:function(formId) {
		if (jQuery('#cbPhotoUrl').val() != '' || jQuery('#photoAlbum_id').val() != '') {
			jQuery('#loaderBox').css("display","block");
			jQuery('#successBox01').css("display","none");
			jQuery('#errorBox01').css("display","none");
			jQuery('div.submit').css("display","none");
			jQuery.post('/monprofil/savePhotoProfil',jQuery('#'+formId).serialize(),function(xml){
				total_error = jQuery(xml).find('total_error').text();
				if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text(),'none');
				} else {
					FILENAV_CURRENT_FILE_URL = jQuery('#thumbnails img').attr('src');
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text(),'none');
					jQuery('#cbPhotoUrl').val('');
					jQuery('#divFileProgressContainer').css('display','none');
					// Replace the image in JavaScript
					var imgName = jQuery(xml).find('image').text().split('.');
//					imgName = imgName.split('.');
					var imgPath =  jQuery(xml).find('imagePath').text();
					var src = imgPath+"/124x124/"+imgName[0]+"_124x124."+imgName[1];
					jQuery("#profilBox span.imgParole img").attr("src", src  );
//					jQuery("#profilBox span.imgParole img").attr("src", "/tools/resizepicture.php?w=124&h=124&img=" + jQuery(xml).find('image').text());
					jQuery('#avatar_remove_btn').click(function() {
						_monprofil.removePhotoProfil();
					}
					);
					
				}
				jQuery('#loaderBox').css("display","none");
				jQuery('div.submit').css("display","block");
			},'xml');
		}
	},	
//-----------------------------------------------------------
// retire la photo de profil d'un membre
//--	
	removePhotoProfil:function(){
		jQuery('#loaderBox').css("display","block");
		jQuery('#successBox01').css("display","none");
		jQuery('#errorBox01').css("display","none");
		jQuery('div.submit').css("display","none");
		jQuery.post('/monprofil/removePhotoProfil', function(xml){
			if(!jQuery(xml).find('success').text()){
				// Une erreur s'est produite... the user is not logged in (should not happen)
				_formUtils.showmsg('errorBox01', jQuery(xml).find('message').text(),'none');
				jQuery('#loaderBox').css("display","none");
				jQuery('div.submit').css("display","block");
			} else {
				jQuery("div#thumbnails.spaced img").attr("src", "/tools/resizepicture.php?w=100&h=100&img=_images_default-UNDER-avatar.gif&force=1");
				jQuery("#profilBox span.imgParole img").attr("src", "/tools/resizepicture.php?w=124&h=124&img=_images_default-UNDER-avatar.gif&force=1");
				_formUtils.showmsg('successBox01', jQuery(xml).find('message').text(),'none');
				jQuery('#loaderBox').css("display","none");
				jQuery('div.submit').css("display","block");
			}
		}, "xml");
	},
	deleteProfile: function(title, description) {
		
		_formUtils.clearMessages('');
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons: 
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function() 
				{
					jQuery.post(
             			"/monprofil/supprimer", 
             			{},
  						function(data)
  						{
  							if(data === 'success')
  							{
  								jQuery("#popUp").dialog("close");
  								_monprofil.deleteConfirmation('Compte supprimer', 'Votre compte est maintenant supprimer');  							  							
  							}else{
  								jQuery("#popUp").dialog("close");
  							}
  						}
  					);
             	}
			}
		});
		
		jQuery("#popUp").dialog("open");

	},
	deleteConfirmation: function(title, description) {
		
		_formUtils.clearMessages('');
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

			
		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons: 
			{
				"Ok" :function()
             	{
             		jQuery("#popUp").dialog("close");
             		window.location = "/";

             	}
			}
		});
		
		jQuery("#popUp").dialog("open");

	}
}

//---------------------------------------------------------------
//
// END MONPROFIL		        -------------------------------------
//
//---------------------------------------------------------------

//---------------------------------------------------------------
//
// ALBUM PHOTO              -------------------------------------
//
//---------------------------------------------------------------
var _album = {

	addAlbum:function(formId) {
		jQuery('#loaderBox').css("display","block");
		jQuery.post('/albums/saveAddAlbum',jQuery('#'+formId).serialize(),function(xml){

			var total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
			} else {
				var album_id = jQuery(xml).find('album_id').text();
				document.location = '/photos/ajouter/' + album_id;
			}
			jQuery('#loaderBox').css("display","none");
		},'xml');
	},
//-----------------------------------------------------------
// lister album
//--
	list:function(page) {
	
		jQuery("#loader_list").show();
		
		jQuery("#listalbum").load(
			"/albums/listealbums",
			{
				'page':page
			},
			function() //callback function
			{
   				jQuery("#loader_list").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_album.list( jQuery(this).attr("id") );
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");

				_tt.tipLoad();
 			}
		);
	},
//-----------------------------------------------------------
// confirmation pour supprimer un album
//--
	deleteAlbum: function(title,description,album_id){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery('#loaderBox').css("display","block");
					jQuery.post(
             			"/albums/saveDeleteAlbum",
             			{ 	//parameters
             				'id' : album_id
             			},
  						function(xml) //callback function
  						{
							jQuery("#popUp").dialog("close");
							total_error = jQuery(xml).find('total_error').text();
							if(total_error === '1') { // Si on a des erreurs on averti l'usager
								alert( jQuery(xml).find('description').text() );
							} else {
								jQuery("#album_"+album_id+"").fadeOut('fast',function(){
									jQuery("#album_"+album_id+"").remove();
									_formUtils.resetDarkAlternance('ul.listFriend li');
								});
							}
							jQuery('#loaderBox').css("display","none");
  						},
						'xml'
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");
	},
//-----------------------------------------------------------
// Modification d'un album
//--
	modifyAlbum:function(formId) {
		jQuery('#loaderBox').css("display","block");
		jQuery.post('/albums/saveModifyAlbum',jQuery('#'+formId).serialize(),function(xml){
			total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text(),'wrapper');
			} else {
				document.location = '/albums/liste';
			}
			jQuery('#loaderBox').css("display","none");
		},'xml');
	}
}
//---------------------------------------------------------------
//
// END ALBUM PHOTO          -------------------------------------
//
//---------------------------------------------------------------

//--------------------------------------------------------------
//
// ACTIVITY
//
//--------------------------------------------------------------

var _activities = {
	saveFilter:function(){	
		
		var filter = [];
		jQuery('#filter:checked').each(function(i,checked){
			
			filter[i] = jQuery(this).val();
		});
		
		jQuery.post('/sommaire/saveactivity',{'filter[]':filter},
			function(data){
				if(data) _activities.list();
		});
		
	},
	list : function(){
		jQuery('#loaderBox').show();
		jQuery("#loadActivity").hide();
		jQuery("#loadActivity").load(
				"/sommaire/loadactivity",
				{
//					 'load':page
//					,'album_id':album_id
//					,'infoPhoto':infoPhoto
//					,'triage':triage // recents, plusvues, pluscomments
				},
				function() //callback function
				{
	   				jQuery("#loaderBox").hide();
	   				jQuery("#loadActivity").show();
	 			}
			);
		
	}
}
//---------------------------------------------------------------
//
// PHOTO              		-------------------------------------
//
//---------------------------------------------------------------
var _monProfil = {
	saveBulletins:function(formId) {
		jQuery('#loaderBox').css("display","block");
		jQuery('#submitBox').css("display","none");
		
		jQuery.post('/monprofil/savebulletins',jQuery('#'+formId).serialize(),function(xml)
		{
			total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text(),'wrapper');
			} else {
				_formUtils.showmsg('successBox01', jQuery(xml).find('description').text(),'wrapper');
			}
			jQuery('#loaderBox').css("display","none");
			jQuery('#submitBox').css("display","block");
		},'xml');
	}
}



//---------------------------------------------------------------
//
// PHOTO              		-------------------------------------
//
//---------------------------------------------------------------
var _photos = {
	addToAlbum:function(formId) {
		jQuery('#loaderBox').css("display","block");
		jQuery.post('/photos/saveAddPhoto',jQuery('#'+formId).serialize(),function(xml){
			total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
			} else {
				_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
				jQuery('#attribute_photoName_required').val('');
				// Supprime l'ancien textarea pour pouvoir le reseter
				jQuery('#attribute_photoDesc').remove();
				// On le recré on-the-fly
				jQuery('#lblDescTextarea').after('<textarea id="attribute_photoDesc" rows="10" cols="50" name="attribute_photoDesc"></textarea>');
				
				jQuery('#attribute_albumCover').attr('checked','');
				jQuery('#cbPhotoUrl').val('');
				jQuery('#thumbnails').css('display','none');
				jQuery('#divFileProgressContainer').css('display','none');
				
				_photos.list(jQuery("#attribute_albumId_required").val(),1,'album_name','recents');
			}
			jQuery('#loaderBox').css("display","none");
		},'xml');
	},
//-----------------------------------------------------------
// lister photos
// infoPhoto = album_name (pour afficher le nom de l'album), photo_desc (pour la description de la photo)
//--
	list:function(album_id,page,infoPhoto,triage) {
	
		jQuery("#loader_list").show();
		
		jQuery("#listphotos").load(
			"/photos/listephotos",
			{
				 'page':page
				,'album_id':album_id
				,'infoPhoto':infoPhoto
				,'triage':triage // recents, plusvues, pluscomments
			},
			function() //callback function
			{
   				jQuery("#loader_list").hide();
   				
   				jQuery("#ajaxpaging li a.enabled").click(function(){ // pagination
					_photos.list(album_id, jQuery(this).attr("id"), infoPhoto);
					return false;
				});
				
				jQuery("#ajaxpaging li a.disabled").click(function(){ // pagination
					return false;
				});
				
				jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove").addClass("tt");

				_tt.tipLoad();
 			}
		);
	},
//-----------------------------------------------------------
// Mettre une photo comme couverture d'un album
//--
	setAsCover:function(album_id,photo_id) {
		jQuery('#loaderBox').css("display","block");
		jQuery.post('/photos/setAsCover',{'attribute_albumId_required':album_id,'attribute_photoId_required':photo_id},function(xml){
			total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
			} else {
				_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
			}
			jQuery('#loaderBox').css("display","none");
		},'xml');
	},
//-----------------------------------------------------------
// confirmation pour supprimer une photo
//--
	deletePhoto: function(title,description,photo_id, album_id, callback){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
					jQuery('#loaderBox').css("display","block");
					jQuery.post(
             			"/photos/saveDeletePhoto",
             			{ 	//parameters
             				'attribute_photoId_required' : photo_id
             			},
  						function(xml) //callback function
  						{
							jQuery("#popUp").dialog("close");
							total_error = jQuery(xml).find('total_error').text();
							if(total_error === '1') { // Si on a des erreurs on averti l'usager
								alert( jQuery(xml).find('description').text() );
							} else {
								
								_photos.list(album_id,'',1,'photo_desc');
								/*
								jQuery("#photo_"+photo_id).fadeOut('fast',function() {
									jQuery("#photo_"+photo_id).remove();
									_formUtils.resetDarkAlternance('ul.listFriend li');
								});
								*/
								if (callback != null) {
									callback();
								}
							}
							jQuery('#loaderBox').css("display","none");
  						},
						'xml'
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");
	},
	
//-----------------------------------------------------------
// confirmation pour signaler une photo
//--
	reportPhoto: function(title,description,photo_id, album_id, callback){
		
		jQuery("#popUp").remove();
		
		// create, insert and hide form in popup
		var popupContainer = '<div id="popUp" title="'+ title +'">' +
		'<p id="confirmPopUpDescription">'+ description +'</p>'+
		'</div>';
		
		jQuery("#wrapper").after(popupContainer);
		jQuery("#popUp").hide();

		jQuery("#popUp").dialog({ // set popup
			autoOpen: false,
			modal: true,
			resizable: false,
			buttons:
			{
				"Non" :function()
             	{
             		jQuery("#popUp").dialog("close");
             	},
				"Oui" :function()
				{
//					jQuery('#loaderBox').css("display","block");
					jQuery.post(
             			"/photos/reportPhoto",
             			{ 	//parameters
             				'id' : photo_id
             			},
             			function(data) //callback function
             			{
//             				jQuery("#listcomments").after(data);
    						jQuery("#popUp").dialog("close");
  						}
  					);
             	}
			}
		});

		jQuery("#popUp").dialog("open");
	},
		
//-----------------------------------------------------------
// Modifier une photo d'un album
//--
	modifyPhoto:function(formId) {
		jQuery('#loaderBox').css("display","block");
		jQuery.post('/photos/saveModifyPhoto',jQuery('#'+formId).serialize(),function(xml){
			total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
			} else {
				_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
			}
			jQuery('#loaderBox').css("display","none");
		},'xml');
	},
//-----------------------------------------------------------
// set a photo as profile photo
//--
	setAsAvatar:function(photo_id) {
		jQuery('#loaderBox').css("display","block");
		jQuery.post('/photos/setAsAvatar',{'attribute_photoId_required':photo_id},function(xml){
			total_error = jQuery(xml).find('total_error').text();
			if(total_error === '1') { // Si on a des erreurs on affiche sinon le controller vas faire la redirection vers la liste des albums
				_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
			} else {
				_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
				// Replace the image in JavaScript
				var path = jQuery(xml).find('imagePath').text();
				var imgName = jQuery(xml).find('image').text().split('.');
				var urlCraft124x124 = path+'/124x124/'+imgName[0]+'_124x124.'+imgName[1];
				var urlCraft60x60 = path+'/60x60/'+imgName[0]+'_60x60.'+imgName[1];
//				jQuery("a.imgParole img").attr("src", "/tools/resizepicture.php?w=124&h=124&img=" + jQuery(xml).find('image').text());
//				jQuery("#frmComments span.img img").attr("src", "/tools/resizepicture.php?w=60&h=60&img=" + jQuery(xml).find('image').text());
				jQuery("a.imgParole img").attr("src", urlCraft124x124);
				jQuery("#frmComments span.img img").attr("src", urlCraft60x60);
			}
			jQuery('#loaderBox').css("display","none");
		},'xml');
	},
//-----------------------------------------------------------
// used when we click on selectbox with the list of albums
//--
	selectPhoto:function(btnId) {
		jQuery('#cbPhotoUrl').val('');
		jQuery('#photoAlbum_id').val(btnId);
		var urlOriginal = jQuery('#'+btnId+' img').attr('src');
		if (urlOriginal != undefined) {
			var chunks = urlOriginal.split('/');
			var lastPart = chunks[chunks.length-1];
//			var urlCraft = '/tools/resizepicture.php?h=100&w=100&img='+PHOTOS_UPLOAD_ROOTDIR+'_images_albums_'+MEMBER_ID+'_'+lastPart;	
			var uploadroot = PHOTOS_UPLOAD_ROOTDIR.split('_');
			var urlCraft = '/'+uploadroot[uploadroot.length-1]+'/images/albums/'+MEMBER_ID+'/100x100/'+lastPart.replace('52x52','100x100');
//			alert(urlCraft);
			jQuery('#thumbnails img').attr('src',urlCraft);
		}
		return false;
	},
//-----------------------------------------------------------
// used when we deselect image in the list of pictures
//--
	deselectPhoto:function(btnId) {
		jQuery('#cbPhotoUrl').val(FILENAV_CURRENT_cbPhotoUrl);
		jQuery('#photoAlbum_id').val(FILENAV_CURRENT_photoAlbum_id);
		jQuery('#thumbnails img').attr('src',FILENAV_CURRENT_FILE_URL); // '/tools/resizepicture.php?w=100&h=100&img=_images_default-UNDER-avatar.gif&force=1'
		return false;
	},
//-----------------------------------------------------------
// used when we click on pagination
//--
	switchPage:function(page) {
		var albumId = jQuery('#iAlbum').val();
		//alert(albumId);
		_monprofil.list(albumId,MEMBER_ID,page);
		currentPhotoPage = page;
		return false;
	}
}
//---------------------------------------------------------------
//
// END PHOTO         		-------------------------------------
//
//---------------------------------------------------------------



//---------------------------------------------------------------
//
// BONNES ADRESSES          -------------------------------------
//
//---------------------------------------------------------------

var _bonnesAdresses = {
	
	registerAccount:function(data){
	
		jQuery('#successBox01_register').text("");
		jQuery('#mainErrorBox_register').text("");
		jQuery('#mainErrorBox_register').hide();
		jQuery('#loader_register').show();
		jQuery('#submit_register').hide();
		
		jQuery.post(
			"/bonnes-adresses/registeraccount",
			data,
			function(xml){
				var total_error = jQuery(xml).find('total_error').text();
				var description = jQuery(xml).find('description').text();
				if (total_error == '1'){ 
					jQuery('#loader_register').hide();
					jQuery('#submit_register').show();
					jQuery('#mainErrorBox_register').html(description);
					jQuery('#mainErrorBox_register').show(); 
				} else if (total_error == '0') {
					window.location.replace(description);
				}					
			},
		"text");
	},
	
	getsubcat:function(category){
	
		type = jQuery('#mainCat').val();
		
		jQuery.post(
			"/bonnes-adresses/selectcat?type="+ type +"&category="+ category,
			{
				
			},
			function(html){
				jQuery('#sous_cat').html(html);
				jQuery('#sous_cat select').selectbox();				
			},
		"html");
	},
	
	updateStates:function(){
		jQuery("#recrutementForm").attr("action", "/bonnes-adresses/ajout");
		jQuery("#recrutementForm").submit();
	},
	
	updateCount:function(textArea, receiver){
		var count = 0;
		switch(receiver){
			case "countShort":
				count = 100 - jQuery('#' +textArea).val().length;
				break;
			case "countLong":
				count = 3000 - jQuery('#' +textArea).val().length;
				break;
		}
		jQuery("#" + receiver).html("<strong>" + count + "</strong> caract&egrave;res restants").css("color", (count < 0) ? "red" : "black");
	}
	
}
//---------------------------------------------------------------
//
// END BONNES ADRESSES 		-------------------------------------
//
//---------------------------------------------------------------

//---------------------------------------------------------------
//
// ECARDS		            -------------------------------------
//
//---------------------------------------------------------------

var _ecards = {
	switchECategorie: function(idCategorie,idSubCategorie,doSwitchTitle,myCallBack) {
		jQuery('#listeSubCategories li').removeClass('selected');
		jQuery('#esubcategorie_'+idCategorie+'_'+idSubCategorie).parent().addClass('selected');
		if (doSwitchTitle == undefined) { doSwitchTitle = true; }
		if (tickerInterval != null) { clearInterval(tickerInterval); }
		jQuery('#contenuChangeantTemplate').html(dataTemplates[idCategorie][idSubCategorie]);
		if (!templateSliderShown) { jQuery('#template-slider').show(); templateSliderShown = true; }
		jQuery('ul.ticker').attr('style','');
		// Montre / cache les flèches
		if (jQuery('ul.ticker li').length > 1) {
			this.toggleArrow(true);
		} else {
			this.toggleArrow(false);
		}
		if (doSwitchTitle) {
			// Change le titre de la boite des templates
			_ecards.switchTitle(idSubCategorie);
		}
		if (myCallBack != undefined) { myCallBack(); }
	},
	switchSubCategorie: function (idCategorie,doSwitchTitle,myCallBack) {
		// Gestion des classe pour montrer quelle catégorie est sélectionnée
		jQuery('#listeCategories li').removeClass('selected');
		jQuery('#ecategorie_'+idCategorie).parent().addClass('selected');
		// Pour changer le titre, ne sera plus nécéssaire.
		if (doSwitchTitle == undefined) { doSwitchTitle = true; }
		// Change le UL des sous-catégories
		jQuery('#listeSubCategories').replaceWith(dataSubMenu[idCategorie]).fadeIn('fast',function() {
			if (doSwitchTitle) {
				_ecards.switchTitle(0);
				jQuery('#listeSubCategories li:eq(0) a').click(); // Affiche le choix de template pour la sous-catégorie
			}
			if (myCallBack != undefined) { myCallBack(); }
		});
	},
	// Quand on clique sur une image primeur 
	switchPrimeur:function (idCategorie,idSubCategorie) {
		_ecards.switchSubCategorie(idCategorie,false,function() {
			_ecards.switchECategorie(idCategorie,idSubCategorie,false,function() {
				_ecards.switchTitle(idSubCategorie);
			});
		});
	},
	// Change le titre de la boite des templates
	switchTitle: function(index) {
		var subName = jQuery('#listeSubCategories li:eq('+index+') a').html();
		jQuery('#template-slider h3 span').html('Choix de template : '+subName);
	},
	restartTicker: function () {
		if (tickerInterval != null) { clearInterval(tickerInterval); }
		tickerInterval = _ticker.tickLoad(jQuery("#template-slider"),true);
	},
	
	// Called by Flash when functions of flash are availables
	flashInitialized: function flashInitialized() {
		if (!isInitialized) {
			isInitialized = true;
			swfPreview = jQuery('#Ecards')[0];
			
				if (isIe) {
					jQuery('#Ecards').css('height','0');
				} else {
					jQuery('#Ecards').attr('height','0');
				}			
			
			jQuery('#Ecards').attr('height','0');
		}
	},
	// Called by flash to debug
	debug: function (data) {
		alert(data);
	},
	// Called by flash when we see a ecard, that adjust the dimension of the swf loaded
	ajusteDimensions: function(_width,_height) {
		if (isIe) {
			jQuery('#Ecards').css('height',_height);
			jQuery('#Ecards').css('width',_width);
		} else {
			jQuery('#Ecards').attr('height',_height);
			jQuery('#Ecards').attr('width',_width);
		}
	},
	// Called by Flash to set template config accessible for javascript
	setTemplateConfig: function (prop,value) {
		econfig[prop] = value;
	},
	// Called by here
	switchTemplate:function (templateId) {
		//alert('template id = '+templateId);
		if (currentTemplateId != templateId) {
			if (isInitialized) {
				currentTemplateId = templateId;
				jQuery('#errorBox01').hide();
				jQuery('#attribute_templateId_required').val(templateId);
				_ecards.hideAllFields();
				econfig = new Object();
				swfPreview.switchTemplate(currentTemplateId,isModePreview);
			}
		}
	},
	// When we switch template, we hide field so we can show only those we need
	hideAllFields: function () {
		jQuery('#pstrTitle').hide();
		jQuery('#pfromName').hide();
		jQuery('#pfromEmail').hide();
		jQuery('#pstrMessage').hide();
		jQuery('#uploadPhoto').hide();
	}	,
	// Called by Flash once switchTemplate is done
	switchTemplateDone: function() {
		jQuery('#field_form').show();
		jQuery('#loader_ecardform').hide();
		if (econfig.need_title != undefined) {
			if (econfig.title_default != undefined) {
				jQuery('#attribute_strTitle_required').val(econfig.title_default);
			}
			jQuery('#attribute_strTitle_required').attr('maxlength',econfig.title_maxchar);
			jQuery('#attribute_strTitle_required').val(String(jQuery('#attribute_strTitle_required').val()).substr(0,econfig.title_maxchar));
			jQuery('#pstrTitle').show();
		}
		if (econfig.need_name != undefined) {
			jQuery('#pfromName').show();
		}
		if (econfig.need_email != undefined) {
			jQuery('#pfromEmail').show();
		}
		if (econfig.need_message != undefined) {
			jQuery('#pstrMessage').show();
			if (econfig.message_default != undefined) {
				jQuery('#attribute_strMessage_required').val(econfig.message_default);
			}
			jQuery('#attribute_strMessage_required').attr('maxlength',econfig.message_maxchar);
			jQuery('#attribute_strMessage_required').val(String(jQuery('#attribute_strMessage_required').val()).substr(0,econfig.message_maxchar));
		}
		if (econfig.need_photo != undefined) {
			jQuery('#uploadPhoto').show();
		}
		
		if (!isModePreview) {
			jQuery('#btnPreview').show(); // Montre le bouton preview
		}
		
		_ecards.updateConfigFields();
		//_ecards.updateFlashInfos();
		_ecards.previewTemplate();
	},
	updateConfigFields: function () {
		jQuery('#config_max_recipient').val(econfig.recipient);
		jQuery('#config_need_title').val(econfig.need_title);
		jQuery('#config_title_maxchar').val(econfig.title_maxchar);
		jQuery('#config_need_message').val(econfig.need_message);
		jQuery('#config_message_maxchar').val(econfig.message_maxchar);
		jQuery('#config_need_name').val(econfig.need_name);
		jQuery('#config_need_email').val(econfig.need_email);
		jQuery('#config_need_photo').val(econfig.need_photo);
	},
	// Called by this document
	updateFlashInfos:function() {
		var strTitle = jQuery('#attribute_strTitle_required').val(); 
		var strFromName = jQuery('#attribute_fromName_required').val();
		var strFromEmail = jQuery('#attribute_fromEmail_required').val();
		var toDestinataires = jQuery('#attribute_recipient_required').val();
		var strMessage = jQuery('#attribute_strMessage_required').val();
		var cbPhotoUrl = jQuery('#cbPhotoUrl').val();
		var strPhoto = (cbPhotoUrl != '' ? cbPhotoUrl : jQuery('#photoAlbum_id').val());
		
		swfPreview.updateInfos(strTitle,strFromName,strFromEmail,toDestinataires,strMessage,strPhoto);
	},
	// Called by this document
	togglePreview:function(isVisible) {
		if (isVisible === true) { // Pour faire afficher le preview
			
			if (isWorkingOnTemplate) {
				jQuery('#cont-btnSend').show();
				jQuery('#cont-btnPersonalize').hide();
				jQuery('#cont-btnModify').show();
			} else {
				jQuery('#cont-btnSend').hide();
				jQuery('#cont-btnPersonalize').show();
				jQuery('#cont-btnModify').hide();
			}
			
			jQuery('#btnsFinalize').show();
			
			jQuery('#ecardForm').hide();
			jQuery('#btnPreview').hide();
			
			if (econfig.card_height) {
				if (isIe) {
					jQuery('#Ecards').css('height',econfig.card_height);
				} else {
					jQuery('#Ecards').attr('height',econfig.card_height);
				}
			} else {
				if (isIe) {
					jQuery('#Ecards').css('height','600');
				} else {
					jQuery('#Ecards').attr('height','600');
				}
			}
			if (econfig.card_width) {
				if (isIe) {
					jQuery('#Ecards').css('width',econfig.card_width);
				} else {
					jQuery('#Ecards').attr('width',econfig.card_width);
				}
			} else {
				if (isIe) {
					jQuery('#Ecards').css('width','622');
				} else {
					jQuery('#Ecards').attr('width','622');
				}
			}
			previewBoxState = 'down';
		} else { // Pour cacher le preview
			isModePreview = false;
			jQuery('#btnsFinalize').hide();
			jQuery('#ecardForm').show();
			jQuery('#btnPreview').show();
				
			if (isIe) {
				jQuery('#Ecards').css('height','0');
			} else {
				jQuery('#Ecards').attr('height','0');
			}
			jQuery('#successBox01').hide();
			jQuery('#errorBox01').hide();
			previewBoxState = 'up';
		}
	},
	// Behavior of Previsualiser button
	previewTemplate:function() {
		isModePreview = true;
		_ecards.updateFlashInfos();
		_ecards.togglePreview(true);
		swfPreview.showAll();
	},
	// When we press send button
	sendEcard:function() {
//		alert(jQuery('#config_max_recipient').val());
//		if (jQuery('#attribute_recipient_required').val() != '') { // Si le champ des destinataies n'est pas vide
			jQuery('#errorBox01').hide();
			jQuery('#successBox01').hide();
			jQuery('#btnsFinalize').hide();
			jQuery('#loaderBox').show();
			jQuery.post('/ecards/save',jQuery('#ecardForm').serialize(),function(xml) {
				var total_error = jQuery(xml).find('total_error').text();
				jQuery('#loaderBox').hide();
				if(total_error === '1') { 
					_formUtils.showmsg('errorBox01', jQuery(xml).find('description').text());
					jQuery('#btnsFinalize').show();
				} else {
					_formUtils.showmsg('successBox01', jQuery(xml).find('description').text());
					jQuery('#btnsReset').show();
					jQuery('#topChoice').hide();
					jQuery('#choixTemplateForm').hide();
					jQuery('#template-slider').hide();
					jQuery('#previewBox').hide();
				}
			}, 'xml');
//		}
	},
	// Affiche ou cache les flèches dans le slider, state = true ou false
	toggleArrow:function(state) {
		if (state) {
			jQuery('.articlesNav p').removeClass('disabled');
		} else {
			jQuery('.articlesNav p').addClass('disabled');
		}
	},
	// reset le formulaire et le choix des templates
	reloadPage:function() {
		document.location = '/ecards';
	},
	// Ajoute la classe selected au template sélectionné
	setSelected:function(elm) {
		jQuery('ul.ticker div.selected').removeClass('selected');
		jQuery(elm).parent().addClass('selected');
	},
	// Montre les boutons login et register
	showLoginRegister:function() {
		jQuery('#requireLoginRegister').show();
	},

	//-----------------------------------------------------------
	// add a row of external recip
	//--

	addRecipientForm: function(){
//		try {
			
			var num = jQuery("div.addContact p.iTxt").size();
			//num --; // withdraw 1 cause they have one p for member recipient		
			
			jQuery.post(
					"/ecards/loadRecipientTemplate",
					{
						'n' : num
					},
					function(data) //callback function
					{
						
						jQuery("div.addContact fieldset").append(data);
						// Withdraw a raw of recip
						jQuery("div.addContact fieldset a.btSupp2").click(function(){
							jQuery(this).parents('p:eq(0)').replaceWith('');
						});
						
					}
				);
		
			
//		} catch (e) { alert('Erreur: '+e); }
	
	}
};

//---------------------------------------------------------------
//
// END ECARDS		        -------------------------------------
//
//---------------------------------------------------------------

/* ########################################################### */
// utilitaires pour formulaires

var _formUtils = {
	reset: function(id){
		jQuery(id).each(function(){
	        this.reset();
		});
	},
	clearMessages: function(suffix){
	
			jQuery('#errorBox01'+suffix).css("display","none");
			jQuery('#errorBox01'+suffix).html("");
			
			jQuery('#successBox01'+suffix).css("display","none");
			jQuery('#successBox01'+suffix).html("");
		
	},
	showmsg: function(id,msg,anchor){
		jQuery('#'+id+'').css("display","block");
		jQuery('#'+id+'').html(msg);
		var closeMe = '<a href="#" class="btCloseMess" onClick="jQuery(this).parent().hide(); return false;">Fermer</a>';
		jQuery(closeMe).appendTo(jQuery('#'+id+''));
		
		if(anchor == undefined) { anchor = 'content'; }
		if (anchor != "none"){
			window.location.replace('#' + anchor);
		}
	},
	loading: function(suffix){
	
			jQuery('#loaderBox'+suffix).css("display","block");
			jQuery('#submitBox'+suffix).css("display","none");
		
	},
	resetCaptcha: function(){
		jQuery("#captcha").css("display","none");
		jQuery("#loaderBoxCaptcha").css("display","block");
		jQuery("#attribute_captcha_input_required").css("display","none");
		jQuery("#attribute_captcha_id").attr("value","");
		jQuery("#attribute_captcha_input_required").attr("value","");
		
		jQuery.post(
			"/tools/getcaptcha",
			function(captcha_id)
			{
				jQuery("#loaderBoxCaptcha").css("display","none");
				jQuery('#captcha').css("display","block");
				jQuery('#attribute_captcha_input_required').css("display","block");
				jQuery("#captcha").attr("src","/captcha/"+captcha_id+".png");
				jQuery("#attribute_captcha_id").attr("value",captcha_id);
				jQuery("#attribute_captcha_input_required").attr("value","");
			}
		);
	},
	resetDarkAlternance: function(selection) {
		jQuery(selection).each(function() {
			jQuery(this).removeClass('dark');
		});
		var dark = false;
		jQuery(selection).each(function() {
			dark = !dark;
			if (dark) jQuery(this).addClass('dark');
		});
	},
	addslashes: function(str) {
		str=str.replace(/\\/g,'\\\\');
		str=str.replace(/\'/g,"\\\'");
		str=str.replace(/\"/g,'\\"');
		str=str.replace(/\0/g,'\\0');
		return str;
	}
}

jQuery(function() {  
     jQuery("form#frmfindfriend").keypress(function (e) {  
         if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {  
             jQuery('form#frmfindfriend a#submitBox').click();  
             return false;  
         } else {
             return true;  
         }
     });
     
     jQuery("form#frmfindfriendbyname").keypress(function (e) {  
         if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {  
             jQuery('form#frmfindfriendbyname a#submitBoxByName').click();  
             return false;  
         } else {
             return true;  
         }
     });
});


//---------------------------------------------------------------
//
//  UTF-8 data encode / decode  --------------------------------
//  http://www.webtoolkit.info/ --------------------------------
//
//---------------------------------------------------------------
 
var Utf8 = {
 
	// public method for url encoding
	encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
		for (var n = 0; n < string.length; n++) {
			var c = string.charCodeAt(n);
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 		}
		return utftext;
	},
 
	// public method for url decoding
	decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
			c = utftext.charCodeAt(i);
			
			
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				if(c !== 226){
					string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				}else{
					string += "'";
				}
				i += 3;
			}
		}
		return string;
	}
 
}


/* ############################################################# */
/* ################## 	VIDEO SECTION 		################### */

jQuery(function() {
	assignVideoPaginationLinks();
});

/* Assigns correct function to pagination */
function assignVideoPaginationLinks(){
	jQuery('#ajaxpaging').children().each(function() {
		myId = jQuery(this).children().eq(0).attr('id');
		if(jQuery(this).children().eq(0).hasClass('enabled')){
			jQuery(this).children().eq(0).click(
				function(x){ 
					return function() { 
						reloadVideoList('', '', x); return false;
					}; 
				}(myId)
			);
		}
	});
}
		
/* Reloads list of four videos on individual video page according to selected category, sorting order and page. */
function reloadVideoList(c, t, p) {	
	var reloadurl;
	var categoryID;
	var triage;
	var page;
	
	// load the right value into category, triage and page
	if(c != '') {
		categoryID  = c;
	} else {
		categoryID 	= jQuery('#videoListCategory').val();
	}
		
	if(t != '') {
		triage = t;
	} else {
		triage 		= jQuery('#videoListTriage').val();
	}
	
	if(p != ''){
		page = p;
	} else {
		page 		= 1;
	}
	
	reloadurl = '/videos/ajaxload/'+ categoryID +'/tri/'+ triage +'/page/'+ page;
		
	jQuery('#videoListWrapper').load(
										reloadurl, 
										{ 'exceptionID': jQuery('#videoId').val() }, 
										function () {
											// set invisible inputs to conserve values
											jQuery('#videoListCategory').val(categoryID);
											jQuery('#videoListTriage').val(triage);
											
											// select correct triage button
											for(var i = 1; i <= 3; i++){
												jQuery('#sort'+i).removeClass('selected');
																										
												if(jQuery('#sort'+i).attr('rel') == triage)
													jQuery('#sort'+i).addClass('selected');
												
											}
											
											// bind ajax pagination
											assignVideoPaginationLinks();
											
										}
	);

}


 
/* ########################################################### */
/* ready fonction */
jQuery(document).ready(function(){
 	
 	if( jQuery(".addContact").get(0) ){
 		_messagerie.loadRecipientList();
 	}
 	//_messagerie.countUnreadMessages('msgall');
 	
 	
 	if( jQuery(".countinbox").get(0) ){
 		_messagerie.countUnreadMessages('inbox');
 	}
 	
 	if( jQuery(".countalert").get(0) ){
 		_messagerie.countUnreadMessages('alert');
 	}
 	
 	
 	// date picker
 	if(jQuery("input.iDate").get(0)){
 		_date.load();
 	}
	
	// dialog
	if(jQuery(".btAddFriend").get(0)){
		//_dialogue.diaLoad();
	}
	
	if(jQuery(".addContact").get(0)){
		//_addReceiver.load()
	}
	
	// semaineGros
	if(jQuery("#semaineGros").get(0)){
		//_semaineGros.semLoad();
	}		 
		
	// tabs
	if(jQuery(".tabs").get(0)){
		_tabs.tabsLoad();
	}
					 
	// status edit // also in custom.js
	if(jQuery(".edit .status")){
		_status.statLoad();
	}
	
	// newsticker
	if(jQuery("#newsTicker").get(0)){
		_ticker.tickLoad(jQuery("#newsTicker"));
	}
	if(jQuery("#moreArticles").get(0)){
		_ticker.tickLoad(jQuery("#moreArticles"));
	}
	/*
	// fileNav
	if(jQuery(".fileNav").get(0)){
		_fileNav.fileLoad();
	}
	*/
	
	// png fix // also in custom.js
	//if(jQuery(".icnParole").get(0)){
		jQuery(".icnParole, .leVideo span").ifixpng();
	//}
	
	// show new member form
	if(jQuery("#new_member").get(0)){
		_newMember.load();
	}
	
	// menu // now in the body
	/*if(jQuery("#lsMenu").get(0)){
		_menu.menLoad();
	}*/
	
	// tooltips
	jQuery(".btSupp2, .btEdit, .btGo, .btAdd, .btMod, .btCover, .btMove, .btUserpic, .btTaf, .btDisconnect").addClass("tt");
	if(jQuery(".tt").get(0)){ // also in custom.js
		_tt.tipLoad();
	}
	
	// album cover
	if(jQuery(".btCover").get(0)){
		_cover.coverLoad();
	}
	
	// liste photo sort
	if(jQuery(".sortable").get(0)){
		_sort.load();
	}
	
	// corner photo
	/*if(jQuery(".round").get(0)){
		_corner.load();
	}*/
	
	//newGrossesse	 
	if(jQuery("#newGrossesse").get(0) || jQuery("#grossesse .encours").get(0)){
		_newGros.load();
	}
	
	//colorbox	 
	if(jQuery("#productImages").get(0)){
		_colorBox.load();
	}
	
	// select
	if(jQuery(".iSel select").get(0)){
		_select.load();
	}
	
	// video
	/*if(jQuery("#btVideoSwitch").get(0)){
		_videoMode.load();
	}*/
	
	// widgets
	if(jQuery("#widgets").get(0)){
		_widgets.load();
	}
		
	// faq
	if(jQuery("body.faq").get(0)){
		_faq.load();
	}
	
	_adresse.load();
	
	if(jQuery("#template-slider .new .tag").get(0)){
		jQuery("#template-slider .new .tag").ifixpng();
	}
	
	// contest
	if(jQuery("#contestOther").get(0)){
		_contestPic.load();
	}
	
	// photoNav
	jQuery(window).load(_picNav.load);
	jQuery(window).load(_picNavContest.load);
	
	// feed news widget
	//_feed.load();
	_situationUser.load();
	
	_widgets.loadClick();
	
	// Slide up widget
	jQuery("#widgets .closed .inner").slideUp("fast");
	
	if(jQuery("body#accueil")[0]){
		jQuery("#boxAdresse .inner").slideDown("fast");
		jQuery("#boxAdresse").removeClass("closed");
	}
	
	_social.init();
	cd.load();
	
});

