//site_url ="http://babeltrip/";
site_url ="http://www.babeltrip.com/";
imBlnc	=site_url+"css/blank.png";
imSpnnr	=site_url+"css/spinner.gif";

msgurl = site_url+"jx/message/";
headerurl = site_url+"jx/header/";
msgavatarurl =  site_url+"jx/msgavatar/";
listurl = site_url+"jx/list/";
prosurl = site_url+"jx/pros/";
dealurl = site_url+"jx/deal/";
dealconfigurl = site_url+"jx/dealconfig/";
nwsltrrurl = site_url+"jx/nwslttr/";
hunturl = site_url+"jx/hunt/";
stickyurl = site_url+"jx/sticky/";
unfoldurl = site_url+"jx/unfold/";
sticktopurl = site_url+"jx/sticktop/";
registerrequesturl = site_url+"jx/signin/";
favoriteurl = site_url+"jx/favorite/";
favoritestatusurl = site_url+"jx/favstatus/";
popupurl = site_url+"jx/popup/";
featuredurl = site_url+"jx/featured/";
refsuggest = site_url+"jx/refsuggest/";
refsuggestlis = site_url+"jx/refsuggestlis/";
fbconnecturl = site_url+"jx/fbconnect/";
cnvurl = site_url+"jx/canvass/";

function ajax_updater(m, u, p, oId,wId){

		$.ajax({
			type: m,
			url: u,
			data: p,
			beforeSend : function() {
				$(wId).src=imSpnnr;
				$(wId).attr('src',imSpnnr);
			  },
			success: function(data) {
				    $(oId).html(data);
				    
				  }
			});
}

function ajax_prepend(m, u, p, oId,wId){

		$.ajax({
			type: m,
			url: u,
			data: p,
			beforeSend : function() {
				$(wId).src=imSpnnr;
				$(wId).attr('src',imSpnnr);
			  },
			success: function(data) {
				    $(oId).prepend(data);
				    
				  }
			});
}
function list_updater(m, u, p, oId,wId, append){

	$.ajax({
		type: m,
		url: u,
		data: p,
		beforeSend : function() {

			$(wId).attr('src',imSpnnr);
			
		  },
		success: function(data) {
			  if (append) {
				  $('.nav').remove();
				  $(oId).append(data);
			  }
			  else {
				  $(oId).html(data);

				  if(jQuery.browser.msie) {
					  $("#msglist").fadeTo("fast", function() {
						   this.style.removeAttribute('filter');
					  });
				  }
				  else {
					  $("#msglist").fadeTo("fast", 1);
				  }
			  }

				$(wId).attr('src',imBlnc);
			  }
		});
}
function msg_post(tp, mtype) {
	if ( mtype === undefined ) mtype = encodeURIComponent($('#qmtype').val());
	pars="t="+tp;
	pars=pars+"&purl="+encodeURIComponent($('#qparent_url').val());
	pars=pars+"&title="+encodeURIComponent($('#qtitle').val());
	pars=pars+"&description="+encodeURIComponent($('#qdescription').val());
	pars=pars+"&email="+encodeURIComponent($('#qemail').val());
	pars=pars+"&username="+encodeURIComponent($('#qusername').val());
	pars=pars+"&mtype="+mtype;
	ajax_updater("post", msgurl, pars, "#msgform");
	
}

function profile_post() {

	pars="t=submit";
	pars=pars+"&title="+encodeURIComponent($('#qtitle').val());
	pars=pars+"&description="+encodeURIComponent($('#qprofile').val());
	pars=pars+"&mtype=profile";

	ajax_updater("post", msgurl, pars, "#minibio");
	
}
function profile_update(url) {

	t=encodeURIComponent($('#qtype').val());
	pars="t="+t;
	pars=pars+"&url="+url;
	pars=pars+"&title="+encodeURIComponent($('#qtitle').val());
	if (t=='update') {
	pars=pars+"&description="+encodeURIComponent($('#qprofile').val());
	}
	pars=pars+"&mtype=profile";

	ajax_updater("post", msgurl, pars, "#minibio","#profileedit");
	
}

function canvass_upd(salt) {

	pars="s="+salt;
	pars=pars+"&email="+encodeURIComponent($('#qemail').val());
	pars=pars+"&pseudo="+encodeURIComponent($('#qusername').val());
	pars=pars+"&profile="+encodeURIComponent($('#qprofile').val());

	if ($('#qemail').val()!=$('#qcanvassemail').val() && $('#qusername').val()!=$('#qcanvassusername').val()) {
			ajax_updater("post", cnvurl, pars, "#canvass");
	}
	else {
	    if (confirm("Choisissez judicieusement vos informations, vous ne pourrez pas les changer par la suite.\n\nÊtes-vous sur de votre choix?")) {
	    	ajax_updater("post", cnvurl, pars, "#canvass");
	    }	
	}
	
	
}
function msg_list(tp,$reset) {
	if ( $reset === undefined )$reset = false;
	$append=false; //tbd
	if (tp=='home') {
		pars="t=home";
	}
	else if (tp=='tag') {
		pars="t=tag";
		pars=pars+"&q="+encodeURIComponent($('#qq').val());
	}
	else if (tp=='deals') {
		pars="t=deals";
		if ( $('#qq').val() != undefined ) pars=pars+"&q="+encodeURIComponent($('#qq').val());
	}
	else if (tp=='search') {
		pars="t=search";
		pars=pars+"&q="+encodeURIComponent($('#qq').val());
	}
	else if (tp=='questions') {
		pars="t=questions";
		if ( $('#qq').val() != undefined ) pars=pars+"&q="+encodeURIComponent($('#qq').val());
	}
	else if (tp=='profil') {
		pars="t=profil";
		pars=pars+"&u="+encodeURIComponent($('#qu').val());
	}
	if ($reset) pars=pars+"&r=1";
	
	pars=pars+"&o="+encodeURIComponent($('#qoffset').val());
	list_updater("post", listurl, pars, "#msglist",".spin", $append);
	
}

function pros_list($reset) {
	if ( $reset === undefined )$reset = false;
	$append=true;
	pars="o="+encodeURIComponent($('#qoffset').val());
	if ( $('#qtag').val() != undefined ) {
		pars="tag="+encodeURIComponent($('#qtag').val());
	}
	if ($reset) pars=pars+"&r=1";
	list_updater("get", prosurl, pars, "#msglist",".spin", $append);
	
}
function header($query) {
	if ( $query === undefined )$query = false;
	
	if ($query) {
		ajax_updater("post", headerurl, "q="+$query, "#loginbox");
	}
	else {
		ajax_updater("post", headerurl, "", "#loginbox");	
	}
}

function getrefsuggestlis($id) {
	ajax_prepend("post", refsuggestlis, "", $id);
}
function getrefsuggest($id) {
	ajax_prepend("post", refsuggest, "", $id);
}

function registerNewslttr() {
	ajax_updater("post", nwsltrrurl, "", "#newslttr");
}

function msgavatar() {
	ajax_updater("post", msgavatarurl, "", "#msgavatar");
}

function featured($where) {
	ajax_updater("get", featuredurl, "", $where);
}
function favorite(id) {
	pars="id="+id;
	ajax_updater("post", favoriteurl, pars, "#m_mor");
}
function getFavoriteStatus(id) {
	pars="id="+id;
	ajax_updater("post", favoritestatusurl, pars, "#m_mor");
}
function dispdealprices(id) {
	free = $('#dealfree'+id).is(':checked');	
	if (free) {
		$('#ddealprice'+id).hide();	
		$('#ddealdiscount'+id).hide();	
	}
	else {
		$('#ddealprice'+id).show();	
		$('#ddealdiscount'+id).show();	
	}

}
function msg_hunt(id,action) {

	pars="id="+id;
	pars=pars+"&b="+action;
		
		/* Les propriétés du deal */
		priceordiscount = $('input[type=radio][name=qpriceordiscount'+id+']:checked').attr('value');
		hasdate = $('input[type=radio][name=qhasdate'+id+']:checked').attr('value');
		free = $('#dealfree'+id).is(':checked');

		if (free) {
			pars=pars+"&free=1";
		}
		else {
			pars=pars+"&free=0";

			if ( $('#pricedeal'+id).val() != undefined ) {
				pricedeal = $('#pricedeal'+id).val();
				pars=pars+"&pricedeal="+encodeURIComponent(pricedeal);
			}

			if ( $('#dealdiscount'+id).val() != undefined ) {
				dealdiscount = $('#dealdiscount'+id).val();
				pars=pars+"&dealdiscount="+encodeURIComponent(dealdiscount);
			}

		}
		
		if ( $('#pricedefault'+id).val() != undefined ) {
			pricedefault = $('#pricedefault'+id).val();
			pars=pars+"&pricedefault="+encodeURIComponent(pricedefault);
		}

		if ( $('#dealteaser'+id).val() != undefined ) {
			dealteaser = $('#dealteaser'+id).val();
			pars=pars+"&dealteaser="+encodeURIComponent(dealteaser);
		}


		if ( $('#dealdateto').val() != undefined && hasdate==1 ) {
			dealdateto = $('#dealdateto').val();
			pars=pars+"&dealdateto="+encodeURIComponent(dealdateto);
		}

		if ( $('#dealdatefrom').val() != undefined && hasdate==1 ) {
			dealdatefrom = $('#dealdatefrom').val();
			pars=pars+"&dealdatefrom="+encodeURIComponent(dealdatefrom);
		}
		
		ajax_updater("post", hunturl, pars, "#msglist", "#deal"+id);

}

function msg_deal(id,action) {
	pars="id="+id;
	pars=pars+"&b="+action;
	ajax_updater("post", dealurl, pars, "#msglist", "#deal"+id);

}

function deal_config(id) {
	$(".dealoptions").empty();
	pars="id="+id;
	ajax_updater("post", dealconfigurl, pars, "#deal"+id);
	$("#deal"+id).show();
}

function deal_showdates(id) {
	
	if ($('input[type=radio][name=qhasdate'+id+']:checked').attr('value')==1) {
		$("#calendar"+id).show();
	}
	else {
		$("#calendar"+id).hide();
	}

}

function deal_showprice(id) {

	$("#dealprice"+id).show();
	$("#dealdiscount"+id).hide();
}

function deal_showdiscount(id) {

	$("#dealprice"+id).hide();
	$("#dealdiscount"+id).show();
}


jQuery(function($){
	$.datepicker.regional['fr'] = {
		closeText: 'Fermer',
		prevText: '&#x3c;Préc',
		nextText: 'Suiv&#x3e;',
		currentText: 'Courant',
		monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin',
		'Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
		monthNamesShort: ['Jan','Fév','Mar','Avr','Mai','Jun',
		'Jul','Aoû','Sep','Oct','Nov','Déc'],
		dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
		dayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],
		dayNamesMin: ['Di','Lu','Ma','Me','Je','Ve','Sa'],
		weekHeader: 'Sm',
		dateFormat: 'dd/mm/yy',
		firstDay: 1,
		isRTL: false,
		showMonthAfterYear: false,
		yearSuffix: ''};
	$.datepicker.setDefaults($.datepicker.regional['fr']);
});


function msg_sticky(id,action) {
	pars="id="+id;
	pars=pars+"&b="+action;
	ajax_updater("post", stickyurl, pars, "#msglist", "#sticky"+id);
}
function msg_sticktop(id,action) {
	pars="id="+id;
	pars=pars+"&b="+action;
	ajax_updater("post", sticktopurl, pars, "#msglist", "#sticktop"+id);
}

function msg_unfold(id,action) {
	pars="id="+id;
	pars=pars+"&b="+action;
	ajax_updater("post", unfoldurl, pars, "#msglist", "#unfold"+id);
}

function formLenCtrl(what,max,where) {
	var str=$(what).val();
	var lgth=str.length;
	var newstr= str.slice(0, max);
	lgth=newstr.length;
	$(where).removeClass("countergreat countermax counterclose");
	$(where).html(lgth);
	if (lgth==max) $(what).val(newstr);
	
	if (lgth>max-25) {
		$(where).addClass("countergreat");
	}
	
	if (lgth>max-10) {
		$(where).addClass("counterclose");
	}
	if (lgth>max-1) {
		$(where).addClass("countermax");
	}
}


function registerrequest () {

	pars="";
	ajax_updater("post", registerrequesturl, pars, "#dealregisterrequest");
	
	$("#global").fadeTo(0, 0.15, 
		function() {
			$("#askregister").fadeIn(1000);
		}
	);
}

function removeregisterrequest() {
	$("#askregister").fadeTo(500,0,function() {
		$("#askregister").hide();
		$("#global").fadeTo	(0,1);
	});
	
}

function toggleMsgNew(btn) {

	if ($.browser.msie) {
		divId="#msgnew";
	}
	else {
		divId="#msgform";
	}
	$('#qmtype').val(btn);
	if (btn=='question') {
		$(divId).fadeOut("normal", function () {
			$("#question-btn").removeClass("off-msg-btn");
			$("#question-btn").addClass("on-msg-btn");
			$("#message-btn").removeClass("on-msg-btn");
			$("#message-btn").addClass("off-msg-btn");
			$("fieldset").removeClass("fieldst-message");
			$("fieldset").addClass("fieldst-question");
	    });
	}	

	if (btn=='message') {
		$(divId).fadeOut("normal", function () {
			$("#message-btn").removeClass("off-msg-btn");
			$("#message-btn").addClass("on-msg-btn");
			$("#question-btn").removeClass("on-msg-btn");
			$("#question-btn").addClass("off-msg-btn");
			$("fieldset").addClass("fieldst-message");
			$("fieldset").removeClass("fieldst-question");
	    });
	}	
	$(divId).fadeIn("fast");

}


(function($) {

	// jQuery plugin definition
	$.fn.TextAreaExpander = function(minHeight, maxHeight) {

		var hCheck = !($.browser.msie || $.browser.opera);

		// resize a textarea
		function ResizeTextarea(e) {

			// event or initialize element?
			e = e.target || e;

			// find content length and box width
			var vlen = e.value.length, ewidth = e.offsetWidth;
			if (vlen != e.valLength || ewidth != e.boxWidth) {

				if (hCheck && (vlen < e.valLength || ewidth != e.boxWidth)) e.style.height = "0px";
				var h = Math.max(e.expandMin, Math.min(e.scrollHeight, e.expandMax));

				e.style.overflow = (e.scrollHeight > h ? "auto" : "hidden");
				e.style.height = h + "px";

				e.valLength = vlen;
				e.boxWidth = ewidth;
			}

			return true;
		};

		// initialize
		this.each(function() {

			// is a textarea?
			if (this.nodeName.toLowerCase() != "textarea") return;

			// set height restrictions
			var p = this.className.match(/expand(\d+)\-*(\d+)*/i);
			this.expandMin = minHeight || (p ? parseInt('0'+p[1], 10) : 0);
			this.expandMax = maxHeight || (p ? parseInt('0'+p[2], 10) : 99999);

			// initial resize
			ResizeTextarea(this);

			// zero vertical padding and add events
			if (!this.Initialized) {
				this.Initialized = true;
				$(this).css("padding-top", 0).css("padding-bottom", 0);
				$(this).bind("keyup", ResizeTextarea).bind("focus", ResizeTextarea);
			}
		});

		return this;
	};

})(jQuery);


function popup($mode) {
	if ( $mode === undefined )$mode = "open";

	deal=0;
	if ( $('#dflyer').hasClass('flyer') ) {
		deal=1;
	}
	if ($mode == "close") {
		$("#featured-overlay").hide();
		$("#featured-lightbox").html("");	
	}
	else {

		$.ajax({
			type: "post",
			url: popupurl,
			data: "d="+deal,
			beforeSend : function() {
			},
			success: function(data) {

				if (deal==1) {
					$("#featured-overlay").animate({opacity: .9});
				}
				$("#featured-overlay").show();
				$("#featured-lightbox").html(data);
			},
			statusCode: {404: function() {
				//on fait rien voire on ferme et on vide la popup
				$("#featured-overlay").hide();
				$("#featured-lightbox").html("");
				}
			}
		});
	}
	
}


