var gBoxLoadingContentHtml = '<p align="center" style="margin-top: 35%;"><img src="images/ajax_loader_'+gSiteId+'.gif"></p>';

function loadDivWithLoadingGraphic(divQuery)
{
	$(divQuery).html(gBoxLoadingContentHtml);
}


function rechercheDeBiensFormIdResetFields()
{
	$('#rechercheDeBiensForm_champ_secteur').val("");
	$('#rechercheDeBiensForm_champ_surfaceMinimum').val("");
	$('#rechercheDeBiensForm_champ_prixMinimum').val("");
	$('#rechercheDeBiensForm_champ_prixMaximum').val("");

	submitCriteresForm();
}


function demandeDeQuestionForm_checkFields()
{
	if (!checkEmail($('#demandeDeQuestionForm_champ_email').val())) {
		alert("Vous n'avez pas renseigné le champ Adresse électronique correctement.");
		$('#demandeDeQuestionForm_champ_email').focus();
		return false;
	}

	if ($('#demandeDeQuestionForm_champ_antispam').val() != "robin") {
		alert("Vous n'avez pas renseigné le champ anti-spam correctement.");
		$('#demandeDeQuestionForm_champ_antispam').focus();
		return false;
	}


	var moreData = getUrlParameter( 'moreData' );
	if (moreData != null)
		moreData = $.evalJSON( unescape( moreData ) );
	else
		moreData = { };

	moreData.fromEmail = $('#demandeDeQuestionForm_champ_email').val();
	moreData.fromName = $('#demandeDeQuestionForm_champ_nom').val();
	moreData.fromTel = $('#demandeDeQuestionForm_champ_telephone').val();
	moreData.type = $('#demandeDeQuestionForm_champ_Objet option:selected').text();

	$( '#demandeDeQuestionForm_champ_MoreData' ).val( $.toJSON( moreData ) );

	return true;
}


function checkEmail(email)
{
	var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;

	if (!filter.test(email))
		return false;

	return true;
}

function getUrlParameter(paramName)
{
    paramsString = self.location.search;
    pos = paramsString.indexOf(paramName);
    if (pos == -1)
        return null;

    // REMOVE THE PIECE BEFORE THE PARAM
    paramsString = paramsString.slice(pos);

    // REMOVE THE PIECE AFTER THE PARAM VALUE
    pos = paramsString.indexOf('&');
    if (pos != -1)
        paramsString = paramsString.slice(0, pos);

    // EXTRACT THE PARAM VALUE
    pos = paramsString.indexOf('=');
    paramsString = paramsString.slice(pos+1);

    // RETURN THE FINAL VALUE
    return paramsString;
}

function preventLetterAndGetNbOfResults(e, srcField, doSubmit)
{
  srcField = srcField || null;

  if (srcField != null && (srcField.id == "rechercheDeBiensForm_champ_prixMinimum" || srcField.id == "rechercheDeBiensForm_champ_prixMaximum")) {
  	//setTimeout('$("#slider-prix").slider("option", "values", [$("#rechercheDeBiensForm_champ_prixMinimum").val(),$("#rechercheDeBiensForm_champ_prixMaximum").val()])', 100);
  	setTimeout('$("#slider-prix").slider("option", "value", $("#rechercheDeBiensForm_champ_prixMaximum").val())', 100);
  }

  if (noLetters(e) == true) {
	if (doSubmit) {
		setTimeout('submitCriteresForm()', 100);
		return true;
	}
  }

  return false;
}

function noLetters(e)
{
  var keynum;
  var keychar;
  var numcheck;

  if(window.event) // IE
    keynum = e.keyCode;
  else if(e.which) // Netscape/Firefox/Opera
    keynum = e.which;

  if (keynum == 8 /*BACKSPACE*/ || keynum == 9 /*TAB*/ || keynum == 13 /*ENTER*/ ||
      keynum == 37 /*LEFT ARROW*/ || keynum == 39 /*RIGHT ARROW*/ ||
      keynum == 36 /*HOME*/ || keynum == 35 /*END*/ || keynum == 46 /*SUPPR*/ ||
	  keynum == top.undefined)
    return true;

  keychar = String.fromCharCode(keynum);
  numcheck = /\d/;

//  window.status = "e.which: " + e.which + " |a e.keyCode: " + e.keyCode + " | e.charCode: " + e.charCode + " | String.fromCharCode(e.which): " + String.fromCharCode(keynum);
  return numcheck.test(keychar) || (e.keyCode >= 96 && e.keyCode <= 105) ;
}


var g_pacedFormSubmit_callTime = 0;

function pacedFormSubmit()
{
	var timeSinceLastCall = new Date().getTime() - g_pacedFormSubmit_callTime;

	// Function was previously called less than 1 second ago.
	if (timeSinceLastCall < 1000) {
		// if (console) console.log('[pacedFormSubmit] Last called ' + timeSinceLastCall + ' ms ago. Dropping call.');
		return;
	}

	var url = "get_terrains.php?" + $('#rechercheDeBiensFormId').serialize();

	// Set last submit time	.
	g_pacedFormSubmit_callTime = new Date().getTime();
	// if (console) console.log('[pacedFormSubmit] Last called ' + timeSinceLastCall + ' ms ago. Submitting... [' + url + ']');

	// LOAD THE CONTENT, THEN EXECUTE SOME HOUSEKEEPING JAVASCRIPT INSTRUCTIONS.
	$('#listTerrainsDiv .content').load(url, function() {
												// Prevent click event from bubbling up to the DIV when clicking on the photos.
												$('div.offre a').click(stopBubblingUp);
												// Tell Shadowbox to setup the newly loaded images.
												Shadowbox.clearCache();
												Shadowbox.setup('a.photo');
												Shadowbox.setup('.offre a.map');

											  }
										);
}


function delay(millis)
{
	var date = new Date();
	var curDate = null;

	do { curDate = new Date(); }
	while(curDate-date < millis);
}


function stopBubblingUp(event)
{
	event.stopPropagation();
}


function showMentionsLegales()
{
	Shadowbox.open({
        content:    $('#mentionLegalesWrapper').html(),
        player:     'html',
        title:      $('#mentionLegalesWrapper').attr('title'),
        height:     350,
        width:      550
    });

}


