var questions=new Array();
var reponses=new Array();
var nb_ss_questions=new Array();
var k=0;
// Définition d'un getElementsByName sur objet dynamique pour IE :

function addReponse(id_question,libelle,mode,identifiant_reponse)
{
        var id_reponse=document.getElementsByName('norepq'+id_question).length*1+1;
        if(!libelle)
            libelle=document.getElementById('librq'+id_question).value;
        if(!mode)
        	mode=document.getElementById('mode_type_reponse').value;
        if(typeof(identifiant_reponse)=="undefined")
          identifiant_reponse=0;
        var chaine="<li name='rep_q"+id_question+"' id='rep_q"+id_question+"'><div>Réponse n°<div class=\"norep\" style='display:inline;' id=\"norepq"+id_question+"\" name=\"norepq"+id_question+"\">"+id_reponse+"</div> : <input type='text' id=\"rlib_"+id_question+"_"+id_reponse+"\" name=\"rlib["+id_question+"][]\" value=\""+libelle+"\"><input type='hidden' name='rep_identifiant["+id_question+"][]' value='"+identifiant_reponse+"'> ";
     	chaine+="<a href=\"#\" id=\"lienMRepQ"+id_question+"\" name=\"lienMRepQ"+id_question+"\" onclick=\"moveReponse("+id_question+",this.getAttribute('alt'),-1);return false;\" alt='"+id_reponse+"'><img src='/images/ed_fleche_haut.gif' align='absmiddle' border='0'></a>\n<a href=\"#\" id=\"lienDRepQ"+id_question+"\" name=\"lienDRepQ"+id_question+"\" onclick=\"moveReponse("+id_question+",this.getAttribute('alt'),1);return false;\" alt='"+id_reponse+"'><img src='/images/ed_fleche_bas.gif' align='absmiddle' border='0'></a> <a href=\"#\" id=\"lienDelRepQ"+id_question+"\" name=\"lienDelRepQ"+id_question+"\" onclick=\"delReponse("+id_question+",this.getAttribute('alt'));return false;\" alt='"+id_reponse+"'><img src=/images/ed_suppr.gif align='absmiddle' width=26 height=26 border=0></a></div></li>";
        document.getElementById('rsq'+id_question).innerHTML+=chaine;
        if(!identifiant_reponse)
        {
	        document.getElementById('librq'+id_question).value="";
	       // document.getElementById('valrq'+id_question).value="";
	       // document.getElementById('libelle_new_question').value="";
	        document.getElementById('librq'+id_question).focus();
	    }
}
function addQuestion(titre,precision,mode,identifiant_question,pere,type_reponse,mode_retour)
{
       var id_question=0;
       var chaine="";
       var kplus=0;

       k++;
	       id_question=k;
       nb_ss_questions[id_question]=0;
       if(!titre && !pere)
           titre=document.getElementById('libelle_new_question').value;
       else if(!titre && pere)
     		titre=document.getElementById('libelle_new_question_'+pere).value;

       if(!mode && !pere)
           mode=document.getElementById('mode_new_question').value;
       if(!type_reponse)
       	   type_reponse=document.getElementById('mode_type_reponse').value;
       if(!mode_retour)
           mode_retour=document.getElementById('mode_new_retour').value;
       if(typeof(identifiant_question)=="undefined")
          identifiant_question=0;

       if(identifiant_question)
       	       nb_ss_questions[identifiant_question]=0;


       chaine+="<li name=\"question_"+k+"\" id=\"question_"+k+"\"><div>Question n°<div class=\"noque\" style='display:inline;' id=\"noque\" name=\"noque\">"+id_question+"</div> : <input type='text' id='titre_question_" + id_question + "' name=\"question_titre[]\" value=\""+titre+"\" size=\"70\">&nbsp;";
       chaine+="<input type='hidden' name='questions_identifiant[]' value='"+identifiant_question+"'>";
       chaine+="<input type='hidden' name='question_mode[]' value='"+mode+"'>";
      // chaine+=type_reponse;
      
       chaine+="<select name='mode_type_reponse[]' id='mode_type_reponse_"+k+"'>";
       chaine+="<option value='check'";
       if(type_reponse=='check')
        chaine+='selected="selected"';
       chaine+='>Choix multiple</option>';
       chaine+="<option value='choix'";
       if(type_reponse=='choix')
        chaine+='selected="selected"';
       chaine+='>Choix unique</option>';
       chaine+="<option value='libre'";
       if(type_reponse=='libre')
        chaine+='selected="selected"';
       chaine+='>Réponse libre</option>';
       chaine+="<option value='texte'";
       if(type_reponse=='texte')
        chaine+='selected="selected"';
       chaine+='>Verbatim</option>';
       chaine+='</select>' ;
       
       chaine+="<select name='mode_retour_ligne[]' id='mode_retour_ligne_"+k+"'>";
       chaine+="<option value='non'";
       if(mode_retour=='non')
        chaine+='selected="selected"';
       chaine+='>Sans retour à la ligne</option>';
       chaine+="<option value='oui'";
       if(mode_retour=='oui')
        chaine+='selected="selected"';
       chaine+='>Retour à la ligne</option>';
       chaine+='</select>' ;
       chaine+="<a href=\"#\" id=\"lienMQ\" name=\"lienMQ\" onclick=\"moveQuestion(this.getAttribute('alt'),-1,true);return false;\" alt='"+id_question+"'><img src='/images/ed_fleche_haut.gif' border='0' align='absmiddle'></a>\n";
       chaine+="<a href=\"#\" id=\"lienDQ\" name=\"lienDQ\" onclick=\"moveQuestion(this.getAttribute('alt'),1,true);return false;\" alt='"+id_question+"'><img src='/images/ed_fleche_bas.gif' border='0' align='absmiddle'></a>\n";
       chaine+="<a href=\"#\" id=\"lienDelQ\" name=\"lienDelQ\" onclick=\"delQuestion(this.getAttribute('alt'),"+identifiant_question+");return false;\" alt='"+id_question+"'><img src=/images/ed_suppr.gif width=26 height=26 border=0 align='absmiddle'></a>\n<br />";

       chaine+="Précision : <input type=texte name='question_precision[]' value=\""+precision+"\" size='70'>";


       if(!pere && mode=='multiple')
       {

       	   chaine+="<fieldset><legend>Réponses tableau</legend>";
	       chaine+="<ul id='rsq"+id_question+"'>\n";
	       chaine+="<li>Ajouter réponse tableau : \n";
	       chaine+=" <input type=\"text\" name=\"librq"+id_question+"\" id=\"librq"+id_question+"\">";
	       chaine+="<button type=\"button\" onClick=\"addReponse("+id_question+");\">Ajouter</button>\n";
	       chaine+="</li></ul>\n";
	       chaine+="</fieldset>";
	   }
	   else if(!pere && mode=='simple')
	   {
       	   chaine+="<fieldset><legend>Réponses</legend>";
	   	   chaine+="<ul id='rsq"+id_question+"'>\n";
	       chaine+="<li>Ajouter réponse : \n";
	       chaine+=" <input type=\"text\" name=\"librq"+id_question+"\" id=\"librq"+id_question+"\">";
	       chaine+="<button type=\"button\" onClick=\"addReponse("+id_question+");\">Ajouter</button>\n";
	       chaine+="</li></ul>\n";
	       chaine+="</fieldset>";
	   }
       if(mode=='multiple' && !pere)
       {

	       chaine+="<fieldset><legend>Questions tableau</legend>";
	       chaine+="<ul id='sqsq_"+k+"'>\n";
	       chaine+="<li>Ajouter Question : \n";
	       chaine+=" <input type=\"text\" name=\"libelle_new_question_"+k+"\" id=\"libelle_new_question_"+k+"\">";
	       chaine+="<button type=\"button\" onClick=\"addSsQuestion(null,null,null,"+k+");\">Ajouter</button>\n";
	       chaine+="</li></ul>\n";
	       chaine+="</fieldset>";
	   }
       chaine+="</div></li>\n";

       		document.getElementById('questions').innerHTML+=chaine;
       		document.getElementById('libelle_new_question').value="";
       if(document.getElementById("librq"+id_question)!=null)
       		document.getElementById("librq"+id_question).focus();

}
function addSsQuestion(titre,mode,identifiant_question,pere)
{
       var id_question=pere;
       var chaine="";

       nb_ss_questions[pere]++;
       var l=nb_ss_questions[pere];
       if(!titre && !pere)
           titre=document.getElementById('libelle_new_question').value;
       else if(!titre && pere)
     	   titre=document.getElementById('libelle_new_question_'+pere).value;
       if(!mode && !pere)
           mode=document.getElementById('mode_new_question').value;
       if(typeof(identifiant_question)=="undefined")
          identifiant_question=0;

       chaine+="<li name=\"ss_question_"+pere+"\" id=\"ss_question_"+pere+"\"><div>Question n°<div class=\"noque\" style='display:inline;' id=\"nossque_"+pere+"\" name=\"nossque_"+pere+"\">"+id_question+"."+l+"</div> : <input type='text' id='titre_ss_question_" + id_question + "_" + l + "' name=\"ss_question_titre_" + id_question + "[]\" value=\""+titre+"\" size=\"70\">&nbsp;";
       chaine+="<input type='hidden' name='ss_questions_identifiant_"+pere+"[]' value='"+identifiant_question+"'>";
       if(pere)
       {
       		chaine+="<a href=\"#\" id=\"sslienMQ"+pere+"\" name=\"sslienMQ"+pere+"\" onclick=\"moveSsQuestion(this.getAttribute('alt'),-1,"+pere+");return false;\" alt='"+l+"'><img src='/images/ed_fleche_haut.gif' border='0' align='absmiddle'></a>\n";
      	 	chaine+="<a href=\"#\" id=\"sslienDQ"+pere+"\" name=\"sslienDQ"+pere+"\" onclick=\"moveSsQuestion(this.getAttribute('alt'),1,"+pere+");return false;\" alt='"+l+"'><img src='/images/ed_fleche_bas.gif' border='0' align='absmiddle'></a>\n";
	   }
       chaine+="<a href=\"#\" id=\"sslienDelQ"+pere+"\" name=\"sslienDelQ"+pere+"\" onclick=\"delSsQuestion("+pere+",this.getAttribute('alt'));return false;\" alt='"+l+"'><img src=/images/ed_suppr.gif width=26 height=26 border=0 align='absmiddle'></a>\n<br />";

       chaine+="</div></li>\n";
       if(pere)
       {

       		document.getElementById('sqsq_'+pere).innerHTML+=chaine;
       		document.getElementById('libelle_new_question_'+pere).value="";
       }
       else
       {
       		document.getElementById('questions').innerHTML+=chaine;
       		document.getElementById('libelle_new_question').value="";
       		document.getElementById("librq"+id_question).focus();
       }
}
function moveSsQuestion(id_question,pos,pere)
{

      id_question--;
      target=id_question+pos;

       if(!document.getElementById('titre_ss_question_'+ pere + '_' +(id_question+1))
       || !document.getElementById('titre_ss_question_' + pere + '_'+(target+1)))
         return;
     /* if(target<0 || typeof(document.getElementsByName('question')[target])=="undefined" )
         return;
       */
      //On re-spécifie la value car au déplacement on perd la value modifiée sur FF
      if(document.getElementById('titre_ss_question_'+ pere + '_' +(id_question+1)))
		document.getElementById('titre_ss_question_'+ pere + '_'+(id_question+1)).setAttribute('value',document.getElementById('titre_ss_question_'+pere + '_'+(id_question+1)).value);
      if(document.getElementById('titre_ss_question_' + pere + '_'+(target+1)))
		document.getElementById('titre_ss_question_'+pere + '_'+(target+1)).setAttribute('value',document.getElementById('titre_ss_question_'+pere + '_'+(target+1)).value);

	  //Renumérotation des ids pour la suite
      document.getElementById('titre_ss_question_' + pere + '_' + (id_question+1)).id = 'titre_ss_question_'+pere+'_temp';
	  document.getElementById('titre_ss_question_'+ pere + '_' + (target+1)).id = 'titre_ss_question_'+pere+'_' + (id_question+1);
      document.getElementById('titre_ss_question_'+pere+'_temp').id = 'titre_ss_question_'+pere+'_' +(target+1);

 	  //Déplacement
      var html=document.getElementsByName('ss_question_'+pere)[id_question].innerHTML;
      document.getElementsByName('ss_question_'+pere)[id_question].innerHTML=document.getElementsByName('ss_question_'+pere)[target].innerHTML;
      document.getElementsByName('ss_question_'+pere)[target].innerHTML=html;
      renumeroteSsQuestions(pere);
}
function moveQuestion(id_question,pos)
{

      id_question--;
      target=id_question+pos;
      if(!document.getElementById('titre_question_'+(id_question+1))
      || !document.getElementById('titre_question_'+(target+1)))
         return;

      //On re-spécifie la value car au déplacement on perd la value modifiée sur FF
      if(document.getElementById('titre_question_'+(id_question+1)))
		document.getElementById('titre_question_'+(id_question+1)).setAttribute('value',document.getElementById('titre_question_'+(id_question+1)).value);
      if(document.getElementById('titre_question_'+(target+1)))
		document.getElementById('titre_question_'+(target+1)).setAttribute('value',document.getElementById('titre_question_'+(target+1)).value);

	  //Renumérotation des ids pour la suite
      document.getElementById('titre_question_' + (id_question+1)).id = 'titre_question_temp';
	  document.getElementById('titre_question_'+(target+1)).id = 'titre_question_' + (id_question+1);
      document.getElementById('titre_question_temp').id = 'titre_question_' +(target+1);

 	  //Déplacement
      var html=document.getElementById('question_'+(id_question+1)).innerHTML;
      document.getElementById('question_'+(id_question+1)).innerHTML=document.getElementById('question_'+(target+1)).innerHTML;
      document.getElementById('question_'+(target+1)).innerHTML=html;
      renumeroteQuestions();
}
function moveReponse(id_question,id_reponse,pos)
{
      id_reponse--;
      target=id_reponse+pos;
      if(target<0 || typeof(document.getElementsByName('rep_q'+id_question)[target])=="undefined" )
         return;

      //On respécifie la value car au déplacement on perd la value modifiée sur FF
      if(document.getElementById('rlib_'+id_question+'_'+(id_reponse+1)))
      	document.getElementById('rlib_'+id_question+'_'+(id_reponse+1)).setAttribute('value',document.getElementById('rlib_'+id_question+'_'+(id_reponse+1)).value);
      if(document.getElementById('rlib_'+id_question+'_'+(target+1)))
       	document.getElementById('rlib_'+id_question+'_'+(target+1)).setAttribute('value',document.getElementById('rlib_'+id_question+'_'+(target+1)).value);

	  //Déplacement
      var html=document.getElementsByName('rep_q'+id_question)[id_reponse].innerHTML;
      document.getElementsByName('rep_q'+id_question)[id_reponse].innerHTML=document.getElementsByName('rep_q'+id_question)[target].innerHTML;
      document.getElementsByName('rep_q'+id_question)[target].innerHTML=html;

	  //Renumérotation des ids pour la suite
	  document.getElementById('rlib_' + id_question + '_' + (id_reponse+1)).id = 'rlib_' + id_question + '_temp';
	  document.getElementById('rlib_' + id_question + '_'+(target+1)).id = 'rlib_' + id_question + '_' + (id_reponse+1);
      document.getElementById('rlib_' + id_question + '_temp').id = 'rlib_' + id_question + '_' +(target+1);

      renumeroteReponses(id_question);
}
function renumeroteReponses(id_question)
{
       for(var i=0;i<document.getElementsByName('norepq'+id_question).length;i++)
       {
           document.getElementsByName('norepq'+id_question)[i].innerHTML=i*1+1;
		   document.getElementsByName('lienDelRepQ'+id_question)[i].setAttribute('alt',(i*1+1));
           document.getElementsByName('lienDelRepQ'+id_question)[i].setAttribute('alt',(i*1+1));
           document.getElementsByName('lienMRepQ'+id_question)[i].setAttribute('alt',(i*1+1));
           document.getElementsByName('lienDRepQ'+id_question)[i].setAttribute('alt',(i*1+1));
           //alert('rlib['+id_question+']['+i+']');
           //Prévoir la reselection de la select du mode
       }
}
function renumeroteQuestions()
{
       for(var i=0;i<document.getElementsByName('noque').length;i++)
       {
           document.getElementsByName('noque')[i].innerHTML=i*1+1;
           document.getElementsByName('lienDelQ')[i].setAttribute('alt',i*1+1);
           document.getElementsByName('lienMQ')[i].setAttribute('alt',i*1+1);
           document.getElementsByName('lienDQ')[i].setAttribute('alt',i*1+1);
       }
}
function renumeroteSsQuestions(pere)
{
       for(var i=0;i<document.getElementsByName('nossque_'+pere).length;i++)
       {
           document.getElementsByName('nossque_'+pere)[i].innerHTML=pere+"."+(i*1+1);
           document.getElementsByName('sslienDelQ'+pere)[i].setAttribute('alt',i*1+1);
           document.getElementsByName('sslienMQ'+pere)[i].setAttribute('alt',i*1+1);
           document.getElementsByName('sslienDQ'+pere)[i].setAttribute('alt',i*1+1);
       }
}
function delReponse(id_question,id_reponse)
{
       // Vérifie si il y a eu des réponses sur cette propal ?!
       document.getElementsByName('rep_q'+id_question)[id_reponse-1].parentNode.removeChild(document.getElementsByName('rep_q'+id_question)[id_reponse-1]);
       renumeroteReponses(id_question);
}
function delQuestion(id_question,identifiant_question)
{
       //Vérification si il y a eu des réponses à cette questions si oui avertissement
       document.getElementById('question_'+id_question).parentNode.removeChild(document.getElementById('question_'+id_question));
       document.getElementById('formulaire').innerHTML+="<input type='hidden' name='delQuestions[]' value='"+identifiant_question+"'>";
       renumeroteQuestions();
}



