
/* +++++++++++++++++++++++++++++++++++
   ++[/FONCTIONS DE COACHING       ]++
   ++++++++++++++++++++++++++++++++ */

window.addEvent('domready', function()
{
	//$ Partie compte // onglets de nav
	if($('MonCompte')){
		/*
		animSpans = function(el, time, offTop, hovTop){
			var spanOff;
			var spanHov;

			var spans = el.getElements('span');
			for(i=0; i<spans.length; i++){
				if(spans[i].hasClass('hov')){
					spanHov = spans[i];
				}
				if(spans[i].hasClass('off')){
					spanOff = spans[i];
				}
			}
			spanOff.Fx = new Fx.Morph(spanOff, { duration:time });
			spanHov.Fx = new Fx.Morph(spanHov, { duration:time });

			spanOff.Fx.cancel();
			spanHov.Fx.cancel();
			spanOff.Fx.start({'top':offTop});
			spanHov.Fx.start({'top':hovTop});
		}
		*/
		initOnglets = function(el){
			var btnH = $(el+'Btn').getStyle('height').toInt();

			var spans = $(el+'Btn').getElements('span');
			for(i=0; i<spans.length; i++){
				if(spans[i].hasClass('hov')){
					spanHov = spans[i];
				}
				if(spans[i].hasClass('off')){
					spanOff = spans[i];
				}
			}
			spanOff.Fx = new Fx.Morph(spanOff, { duration:200 });
			spanHov.Fx = new Fx.Morph(spanHov, { duration:200 });

			spanOff.Fx.start({'top':btnH});
			spanHov.Fx.start({'top':0});

			$(el).setStyle('display','inline');
			$(el+'Btn').removeClass('move');
			$(el+'Btn').addClass('on');

			_oldId = el;
		}

		$$('.move').each(function(el)
		{

			el.commonid = String(el.id).replace('Btn','');

			el._newBtn = $(el.commonid+'Btn');
			el._newPage = $(el.commonid);

			el.btnH = el.getStyle('height').toInt();

			el.spans = el.getElements('span');
			for(i=0; i<el.spans.length; i++){
				if(el.spans[i].hasClass('hov')){
					el.spanHov = el.spans[i];
				}
				if(el.spans[i].hasClass('off')){
					el.spanOff = el.spans[i];
				}
			}
			el.spanOff.Fx = new Fx.Morph(el.spanOff, { duration:200 });
			el.spanHov.Fx = new Fx.Morph(el.spanHov, { duration:200 });

			var _jumps = $('compte-snav').getElements('.btn');
			for(i=0; i<_jumps.length; i++){
				if(_jumps[i] == el){
					 el.jump = i;
				}
			}

			el.jumpto = (el._newPage.getStyle('width').toInt() + el._newPage.getStyle('margin-left').toInt() + el._newPage.getStyle('margin-right').toInt()) * el.jump;

			el.addEvent('mouseenter', function()
			{
				if(!el.hasClass('on')){
					el.spanOff.Fx.cancel();
					el.spanHov.Fx.cancel();
					el.spanOff.Fx.start({'top':el.btnH});
					el.spanHov.Fx.start({'top':0});
				}
			});

			el.addEvent('mouseleave', function()
			{
				if(!el.hasClass('on')){
					el.spanOff.Fx.cancel();
					el.spanHov.Fx.cancel();
					el.spanOff.Fx.start({'top':58});
					el.spanHov.Fx.start({'top':el.btnH});
				}
			});

			el.addEvent('click', function()
			{
				if(!el.hasClass('on')){
					_newId = el.commonid;
					var spans = $(_oldId+'Btn').getElements('span');
					for(i=0; i<spans.length; i++){
						if(spans[i].hasClass('hov')){
							spanHov = spans[i];
						}
						if(spans[i].hasClass('off')){
							spanOff = spans[i];
						}
					}
					spanOff.Fx = new Fx.Morph(spanOff, { duration:200 });
					spanHov.Fx = new Fx.Morph(spanHov, { duration:200 });


					new Fx.Tween($('pages-slide'),
					{
						duration: 400
					}).start('left',-el.jumpto);

					spanOff.Fx.cancel();
					spanHov.Fx.cancel();
					spanOff.Fx.start({'top':58});
					spanHov.Fx.start({'top':el.btnH});

					$(_newId+'Btn').removeClass('move');
					$(_newId+'Btn').addClass('on');
					$(_oldId+'Btn').removeClass('on');
					$(_oldId+'Btn').addClass('move');
					_oldId = _newId;
				}
			});

		});
		initOnglets('regime');
	}


   //$ Récupération de l'étape en cours
   if($('Diagnostic-Test')){
	   //$ On analyse les indicateurs d'étape
	   var Steps = $('Steps').getElements('.step');

	  //$ On cherche celui dont la classe est 'on'
	   for(i=0; i<Steps.length; i++){
			if(Steps[i].hasClass('on')){
				step = i+1;
				Steps[i].removeClass('on');
			}
		}
		//$ Condition spéciale pour l'étape3 / Correspondance avec le calque effectif
		if(step==3){ step = 4; }
		if(step>2){ OpenLayer('Diagnostic-Test', '#ffeda9', 1); }
		//$ On slide jusqu'au bon calque
		CoachingSteps(step);





	  /* Changement des informations pour le calcul de l'IMC */
	  $('Calcul-IMC-poids').addEvent('keyup', HideIMCInfo);
	  $('Calcul-IMC-taille').addEvent('keyup', HideIMCInfo);

	  /* Initialisation du formulaire */
	  ['.rbage#4', '.rbsex#4', '.rbsoin#5', '.rbsport#5', '.rbsommeil#6', '.rbrepas#6'].each(function(val)
	  {
	    var aTmp      = String(val).split('#');
	    $$(aTmp[0]).each(function(el)
	    {
	      el.checked  = false;
	      el.addEvent('change', function(){ShowStep(aTmp[1]);});
	      el.addEvent('click', function(){ShowStep(aTmp[1]);});
	    });
	  });
   }

  /* Formulaire ajax */
  var oAjax = new MD.frmAjax(
  {
		onSuccess:function(oForm, oJson)
		{
		  switch(oForm.id)
		  {
		    case 'FrmRegisterTchat':
		    	$('FrmRegisterTchat').setStyle('display','none');
		    	$('SUCCESS-FrmRegisterTchat').setStyle('display','block');
		    	break;
		    case 'NewsletterForm':
		      $('Newsletter-Errors').setStyle('display','none');
		      $('NewsletterForm').setStyle('display','none');
  			  $('Newsletter-Confirm').setStyle('display','block');
		      break;
		    case 'ContactForm':
  			  $('Contact-Errors').setStyle('display','none');
  			  $('ContactForm').setStyle('display','none');
  			  $('Contact-Confirm').setStyle('display','block');
  			  break;
		    case 'Change-Info':
  			  window.location="index.html?update=1";
  			  break;
  			case 'Calcul-IMC2' :
          $('Error-IMC').setStyle('visibility',   'hidden');
          $('Error-IMC').setStyle('display', 'none');
          $('valimc').set('html', oJson.imc);
  			  $('textimc').set('html', String(oJson.message).md_replace('___RC___', '<br />'));
  			  $('Result-IMC').setStyle('display', 'block');
  			  new Fx.Morph('Result-IMC',
  			  {
    				duration: 1000
  			  }).start({opacity:[0,1]});
  			  break;
  			case 'Calcul-IMC' :
  			  $('valimc').set('html', oJson.imc);
  			  $('textimc').set('html', String(oJson.message).md_replace('___RC___', '<br />'));
  			  HideIMCInfo();
  			  $('Result-IMC').setStyle('display', 'block');
  			  new Fx.Morph('Result-IMC',
  			  {
    				duration: 1000,
    				onComplete:function()
    				{
    				  var strId = (oJson.imcok == 1) ? 'nextStep1' : 'notgoodstep';
    				  $(strId).setStyle('display', 'block');

    				  if(oJson.imcok == 1)
    				  {
    				    $('Account-Create-poids').set('value',$('Calcul-IMC-poids').get('value'));
    				    $('Account-Create-taille').set('value',$('Calcul-IMC-taille').get('value'));
    				  }

    				  new Fx.Morph(strId,{duration: 1000}).start({opacity:[0,1]});
    				}
  			  }).start({opacity:[0,1]});
  			  break;
  			case 'Forgotten-Pass':
  			  SwitchTo('Forgotten-Pass','Forgotten-Pass-valid');
  			  break;
  			case 'Account-Login':
  			  window.location = 'index.html';
  			  break;
  			case 'Account-Create':
  			  $('Account-Confirm-wid').set('value',oJson.wid);
  			  CoachingSteps(4);
  			  break;
  			case 'Account-Confirm':
  			  window.location = 'index.html';
  			  break;
  			case 'Account-Modify':
  			  $('BjrName').set('html', 'Bonjour '+$('firstname').get('value'));
  			  OpenLayer('', '#ffeda9', 0);
  			  break;
  			case 'Send-Friends':
  			  $$('.fieldstf').set('value', '');

  			  $('Send-Friends').setStyle('display', 'none');
  			  $('Send-Confirm').setStyle('display', 'block');

  			  //OpenLayer('', '#ffeda9', 0);
  			  break;
		  }
		},
		onError:function(oForm, oJson)
		{
		  switch(oForm.id)
		  {
		  	case 'FrmRegisterTchat':
		    	//alert('notok FrmRegisterTchat');
		    	break;
		  	case 'NewsletterForm':
		      $('Newsletter-Errors').setStyle('display','block');
		      break;
  			case 'ContactForm':
  			  $('Contact-Errors').setStyle('display','block');
  			  break;
  			case 'Change-Info':
  			  var strError  = oJson.errors.error;
  			  $('Errors-IMC').setStyle('display','none');
  			  $('Errors-ERREURSAISIE').setStyle('display','none');
  			  $('Errors-Dangers').setStyle('display','none');
  			  switch(strError)
  			  {
  			    case 'IMCDANGERS':$('Errors-Dangers').setStyle('display','block');break;
  			    default:$('Errors-ERREURSAISIE').setStyle('display','block');break;
  			  }
  			  $('Errors-IMC').setStyle('display','block');
  			  break;
  			case 'Calcul-IMC' :
          HideIMCInfo();
          $('Error-IMC').setStyle('display', 'block');
          new Fx.Morph('Error-IMC',
  			  {
  				  duration: 1000
  			  }).start({opacity:[0,1]});
  			  break;
  			case 'Calcul-IMC2' :
          $('Error-IMC').setStyle('visibility',   'hidden');
          $('Error-IMC').setStyle('display', 'block');
           $('Result-IMC').setStyle('display',     'none');
          new Fx.Morph('Error-IMC',
  			  {
  				  duration: 1000
  			  }).start({opacity:[0,1]});
  			  break;
  			case 'Forgotten-Pass':
  			  SwitchTo('Forgotten-Pass','Forgotten-Pass-error');
  			  break;
  			case 'Account-Login':
  			  SwitchTo('Account-Login','Login-Error');
  			  break;
  			case 'Account-Create':
  			  $('errortxt1').setStyle('display', 'none');
  			  $('errortxt2').setStyle('display', 'none');
  			  $('errortxt3').setStyle('display', 'none');
  			  if(oJson.errors.error == "EMAIL_ALLREADYUSED")
  			  {
  			    $('errortxt1').setStyle('display', 'block');
  			  }
  			  else if(oJson.errors.error == "PASSWORD_NOTSAME")
  			  {
  			    $('errortxt3').setStyle('display', 'block');
  			  }
  			  else
  			  {
  			    $('errortxt2').setStyle('display', 'block');
  			  }
  			  new Fx.Morph('Errors',
  			  {
  				  duration: 1000
  			  }).start({opacity:[0,1]});
  			  break;
  			case 'Account-Modify':
  			  $('errortxt1').setStyle('display', 'none');
  			  $('errortxt2').setStyle('display', 'none');
  			  $('errortxt3').setStyle('display', 'none');
  			  if(oJson.errors.error == "EMAIL_ALLREADYUSED")
  			  {
  			    $('errortxt1').setStyle('display', 'block');
  			  }
  			  else if(oJson.errors.error == "PASSWORD_NOTSAME")
  			  {
  			    $('errortxt3').setStyle('display', 'block');
  			  }
  			  else
  			  {
  			    $('errortxt2').setStyle('display', 'block');
  			  }
  			  new Fx.Morph('Errors',
  			  {
  				  duration: 1000
  			  }).start({opacity:[0,1]});
  			  break;
  			  case 'Send-Friends':
  			  $('stferrortxt1').setStyle('display', 'none');
  			  $('stferrortxt2').setStyle('display', 'none');
  			  $('stferrortxt3').setStyle('display', 'none');
  			  $('stferrortxt4').setStyle('display', 'none');
  			  if(oJson.errors.error == "EMAIL_INVALID")
  			  {
  			    $('stferrortxt4').setStyle('display', 'block');
  			  }
  			  else if(oJson.errors.error == "PRENOM_EMPTY")
  			  {
  			    $('stferrortxt2').setStyle('display', 'block');
  			  }
  			  else if(oJson.errors.error == "EMAIL_EMPTY")
  			  {
  			    $('stferrortxt3').setStyle('display', 'block');
  			  }
  			  else if(oJson.errors.error == "FRIEND_EMPTY")
  			  {
  			    $('stferrortxt1').setStyle('display', 'block');
  			  }
  			  new Fx.Morph('ErrorsSendFriend',
  			  {
  				  duration: 1000
  			  }).start({opacity:[0,1]});
  			  break;
		  }
		}
  });
});

function ShowStep(iNum)
{
  var bVal1   = false;
  var bVal2   = false;
  var strVal1 = '';
  var strVal2 = '';
  var strNS   = $('NextStep'+iNum);
  switch(iNum)
  {
    case '4':
      strVal1 = '.rbage';
      strVal2 = '.rbsex';
      break;
    case '5':
      strVal1 = '.rbsoin';
      strVal2 = '.rbsport';
      break;
    case '6':
      strVal1 = '.rbsommeil';
      strVal2 = '.rbrepas';
      break;
  }

  $$(strVal1).each(function(el){if(el.checked == true){bVal1=true;}});
  $$(strVal2).each(function(el){if(el.checked == true){bVal2=true;}});
  if((bVal1 == true) && (bVal2 == true))
  {
    new Fx.Morph(strNS,
	  {
		  duration: 400
	  }).start({opacity:[0,1]});
  }
  else
  {
    $(strNS).setStyle('visibility',  'hidden');
  }

}
function HideIMCInfo()
{
  $('Result-IMC').setStyle('visibility',  'hidden');
  $('nextStep1').setStyle('visibility',   'hidden');
  $('notgoodstep').setStyle('visibility', 'hidden');
  $('Error-IMC').setStyle('visibility',   'hidden');

  $('Result-IMC').setStyle('display',     'none');
  $('nextStep1').setStyle('display',      'none');
  $('notgoodstep').setStyle('display',    'none');
  $('Error-IMC').setStyle('display',      'none');
}


function CoachingSteps(step){
	//$ Valeur du pas
	var StepW = 700;
	//$ Coordonnées X de destination
	var StepX = -(StepW*(step-1));

	//$ Animation du conteneur
	$('StepSlide').FXMove = new Fx.Tween($('StepSlide'),{duration: 500});
	$('StepSlide').FXMove.cancel();
	$('StepSlide').FXMove.start('left', StepX);

	//$ Patch pour recaler lea correspondance étapes / indicateur
	if(step>=3){ step = step - 1; }
	//$ Allumage / Extinction de l'indicateur
	var _circles = $('Steps').getElements('.step');
	for(i=0; i<_circles.length; i++){
		if(i==step-1){
			circle = _circles[i].getElements('span');
			circle[0].FXbtn = new Fx.Tween(circle[0],{duration: 600});
			circle[0].FXbtn.start('opacity',0);
		} else {
			circle = _circles[i].getElements('span');
			circle[0].FXbtn = new Fx.Tween(circle[0],{duration: 600});
			circle[0].FXbtn.start('opacity',1);
		}
	}
}

function speak()
{
  $('bullemsg').set('html', String(aMessage[iMessage]).md_unprotect());
  $('bulle').setStyle('display', 'block');
  nextSpeak.delay(5000);
}
function nextSpeak()
{
  iMessage++;
  if(iMessage > (aMessage.length - 1))
  {
    iMessage = 0;
    $('bulle').setStyle('display', 'none');
    speak.delay(5000);
  }
  else
  {
    $('bullemsg').set('html', String(aMessage[iMessage]).md_unprotect());
    nextSpeak.delay(5000);
  }
}
