var contactId = 0;
var alertTimerid = null;


function completeDocument() {
  $('#cache').css('opacity', '0.75');
  $('#footer').css('marginTop', (300 - $('#footer').height())+'px');
  $('#step2, #step3').css('left', $('#upload').css('width'));

  $('#butupl').click(uploadForm);
  $('#step1 .continue').click(_uploadStep1);
  $('#step2 .send').click(uploadStep3);
  $('#upload .cancel').click(uploadCancel);
  $('#butreg').click(showReglement);
  $('#butmen').click(showMentionsLegales);
  $('div.simple .cancel').live('click', pageClose);
}

function preloadThings() {
  preloadImages('/images/bouton-sel.png', '/images/upload-bg.png');
  loadReglement();
  loadMentionsLegales();
}

function loadFlash() {
  var flashvars = {
    lexml: 'selection.php'
  };
  var params = {
    quality: "high",
    play: "true",
    loop: "true",
    scale: "showall",
    align: "middle",
    allowFullScreen: "false",
    allowScriptAccess: "sameDomain",
    wmode: "transparent"
  };
  swfobject.embedSWF("/main.swf", "page", 900, 600, "8.0.0", "", flashvars, params);
}

function preloadImages() {
  var d=document;
  if(d.images){
    if (!d.MM_p) d.MM_p = new Array();
    var i, j = d.MM_p.length, a = preloadImages.arguments;
    for(i = 0; i < a.length; i ++)
      if (a[i].indexOf("#") != 0) {
	d.MM_p[j] = new Image;
	d.MM_p[j++].src = a[i];
      }
  }
}

function uploadCancel() {
  document.myform.reset();
  document.upform.reset();
  $('#cache, #upload, #loading').css('display', 'none');
  $('#step2 .send').unbind();
  $('#step2 .send').click(uploadStep3);
  myAlertHide('mes3');
  $('#step1').css('left', '0px');
  $('#step2, #step3').css('left', $('#upload').css('width'));
}

function uploadForm() {
  $('#cache, #upload').css('display', 'block');
}

function _uploadStep1() {
  var f = document.myform;

  var i = f.email.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (i) {
    var e = emailIsValid(i);
    if (e == null) {
      myAlert('mes1', 'Adresse email incorrecte.');
      return false;
    }
    f.email.value = e;
    $('#step1 .continue').unbind();
    myAlert('mes1', 'Merci de patienter...', true);
    $.ajax({
      type: "GET",
      url: '/scripts/contact-connect.php',
      data: "email="+e,
      success: function(data){
	if (parseInt(data) == 0) {
	  myAlert('mes1', "Vous n'êtes pas encore inscrit.");
	  $('#step1 .continue').click(_uploadStep1);
	  return false;
	}
	contactId = parseInt(data);
	myAlertHide('mes1');
	$('#step1 .continue').click(_uploadStep1);
	return uploadStep2();
      }
    });
    return false;
  }

  i = f.prenom.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci d'indiquer votre prénom.");
    return false;
  }
  f.prenom.value = i;
  i = f.nom.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci d'indiquer votre nom.");
    return false;
  }
  f.nom.value = i;
  i = f.pseudo.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci de choisir un pseudo.");
    return false;
  }
  f.pseudo.value = i;
  var i = f.email_new.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci d'indiquer votre adresse email.");
    return false;
  }
  var e = emailIsValid(i);
  if (e == null) {
    myAlert('mes2', 'Adresse email incorrecte.');
    return false;
  }
  f.email_new.value = e;
  i = f.adresse.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci d'indiquer votre adresse.");
    return false;
  }
  f.adresse.value = i;
  i = f.cp.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci d'indiquer votre code postal.");
    return false;
  }
  f.cp.value = i;
  i = f.ville.value;
  i = i.replace(/(^\s+|\s+$)/, '');
  if (!i) {
    myAlert('mes2', "Merci d'indiquer votre ville.");
    return false;
  }
  f.ville.value = i;

  $('#step1 .continue').unbind();
  myAlert('mes2', 'Merci de patienter...', true);
  $('#myform').ajaxSubmit({
    type: "POST",
    url: '/scripts/contact-add.php',
    success: function(data){
      contactId = parseInt(data);
      myAlertHide('mes2');
      f.reset();
      $('#step1 .continue').click(uploadStep1);
      return uploadStep2();
    }
  });
  return false;
}

function uploadStep2() {
  $('#step1').animate({left: '-'+$('#upload').css('width')}, 500);
  $('#step2').animate({left: '0px'}, 500);
  document.upform.contact.value = contactId;
  return false;
}

function uploadStep3() {
  $('#step2 .send').unbind();
  $('#loading').css('display', 'block');
  myAlert('mes3', "L'opération peut durer plusieurs minutes.<br/>Merci de bien vouloir patienter.", true);
  $('#upform').ajaxSubmit({
    type: "POST",
    url: '/scripts/media-add.php',
    success: function(data){
	myAlertHide('mes3');
	$('#loading').css('display', 'none');
	$('#step2 .send').click(uploadStep3);
	document.upform.reset();
	return uploadStep4();
    }
  });
  return false;
}

function uploadStep4() {
  $('#step2').animate({left: '-'+$('#upload').css('width')}, 500);
  $('#step3').animate({left: '0px'}, 500);
  return false;
}

function emailIsValid( email ) {
  var e = email.toLowerCase(); 
  e = e.replace( /(^\s+|\s+$)/g, '' );
  if (!e.match(/[a-z0-9\.\-]+@[a-z0-9\.\-]+\.[a-z]{2,4}/))
    return null;
  return e;
}

function myAlert(id, mes, persistent) {
  if (!mes) return false;
  if (alertTimerid) clearTimeout(alertTimerid);
  $('#'+id).html(mes);
  if (!persistent) myAlertWait(id);
}

function myAlertWait(id) {
  if (alertTimerid) clearTimeout(alertTimerid);
  alertTimerid = setTimeout('myAlertHide(\''+id+'\')', 9000);
}

function myAlertHide(id) {
  $('#'+id).html('');
}

function loadPage(id, n) {
  $.ajax({
    type: "GET",
    cache: false,
    url: 'templates/get-page.php',
    data: 'id='+id,
    success: function(data){
	$('body').append(data);
    }
  });
}

function loadReglement() {
  loadPage(5);
}

function loadMentionsLegales() {
  loadPage(6);
}

function showReglement() {
  $('#cache, #reglement').css('display', 'block');
  $('#reglement div.top').jScrollPane({showArrows: true});
}

function showMentionsLegales() {
  $('#cache, #mentions').css('display', 'block');
  $('#mentions div.top').jScrollPane({showArrows: true});
}

function pageClose() {
  $('#cache, div.simple').css('display', 'none');
}


