<link rel="stylesheet" type="text/css" href="!PATH!/SP__Ranking.css">
<script src="!PATH!/SP__jquery.min.js"></script>


	<div class="wrapper">	
		<div class="elements-sortable" id="theList">

		</div>
	</div>


<script type="text/javascript">



$(document).ready(function(){

  $(".mainspacertable .col1, .mainspacertable .col3").remove();																			//linke und rechte MMF Spalte entfernen
  $(".mainspacertable .col2").removeAttr("width");																						//beim mittleren MMF in der diese TXT eingebunden das width Attribut entfernen (33%) 

  $("input#next_btn").attr("onclick","storeRanking();");                                   												//Next-Button die Drag'n'Drop-spezifische Funktion zuweisen
  $("a#next_btn").attr("href","javascript:storeRanking();");                                   											//Next-Button die Drag'n'Drop-spezifische Funktion zuweisen
  $("#next_btn").before("<div class='ausfuellhinweis'>Bitte sortieren Sie mindestens ein Element an eine andere Position</div>");   	//Ausfuellhinweis


  //Array in das die Antwortlabels gespeichert werden
  var rankingItems = new Array();
  //fuer Randomisierung
  var rankingItems_shuffled = new Array();


  //Antworten auslesen und deren Labels ins Array pushen
  $( ".answer" ).each(function( index ) {

    index = index+1;

    if(index > 0 && index < 10){ rankingItems.push( "0" + index + "-" + $( this ).text() ); }
    if(index > 9){ rankingItems.push( index + "-" + $( this ).text() ); }

  });
  
  
  
  //ermitteln wieviele zu rangierendne Items es gibt 
  i = 0;
  for (var i = 0; i < rankingItems.length; i++ ) {
	
	if(rankingItems[i].substring(3, 14) == "Reihenfolge"){ break; }

  }

	var reihenfolgeSpeichern = "";
  //Liste aufbauen bis zum letzten zu rangierenden Item;
  for (var u = 0; u < i; u++ ) {
	
	helper = u+1;
	
    $( "#theList" ).append( '<div class=\"element\"><div><div class=\"currentIndexOutput\">'+helper+'</div><div class=\"itemtext\" id=\"itemText_'+u+'\"><p>'+rankingItems[u].substring(3)+'</p></div></div></div>' );


    //Aufrufreihenfolge (wichtig falls randomisiert) speichern	
	reihenfolgeSpeichern += u+1 + "-" + rankingItems[u].substring(3) + "; ";
	
  }
  //Aufrufreihenfolge in das ermittelte Textfeld schreiben
  $("#qt0r"+i).find("input[type=text]").val(reihenfolgeSpeichern);
  

//Ende ready function
});


//Drag Drop aus der erschaffenen Liste generieren
   
		//Hilfsvariable um zu pruefen, ob mindestens eins bewegt wurde
		var userAction = 0;
		
        $('.elements-sortable').sortable({
            start : function(event, ui) {				
                var start_pos = ui.item.index();
                ui.item.data('start_pos', start_pos);
            },
            change : function(event, ui) {
					
                var start_pos = ui.item.data('start_pos');
                var index = ui.placeholder.index(); 
                        
				currentIndex = (start_pos < index) ? index-2 : index-1;
				
                ui.placeholder.prevAll('div').each(function(){
                $this = $(this);
                if($this.is(ui.item)) {return;}	
				var myHelper = currentIndex+1;				
				$this.find('.currentIndexOutput').html(''+myHelper);

                currentIndex--;
                });
                        

				currentIndex = (start_pos < index) ? index : index+1;
                ui.placeholder.nextAll('div').each(function(){
                $this = $(this);
                if($this.is(ui.item)) return;
				var myHelper = currentIndex+1;
                $this.find('.currentIndexOutput').html(''+myHelper)
				
                currentIndex++;
                });
						
                var myHelper = (start_pos < index) ? index-1 : index;
				myHelper = myHelper+1;
                ui.item.find('.currentIndexOutput').html(''+myHelper);
				
				userAction = 1;
				
            },
			axis : 'y'
        });


function storeRanking(a) {

		//ermitteln wo die Labelantworten liegen (Variable i aus der document.ready function leider nicht verfuegbar)

		var labelStartPosition;
        $( ".itemtext" ).each(function( index ) {
		
		labelStartPosition = index+2;
        
        });
		

        $( ".itemtext" ).each(function( index ) {
        
        itemID = $(this).attr("id");
        temp = itemID.split("_");
        rankingItems_listenreihenfolge_nummer = temp[1];
        rankingItems_listenreihenfolge_nummer = parseInt(rankingItems_listenreihenfolge_nummer);

        position = index+1;

        var text_feld_inhalt = "document.rogator.t0_"+rankingItems_listenreihenfolge_nummer+".value = "+position+"";

			//Labels Rank 1 - 3 speichern
            if(position == 1){
				$("#qt0r"+labelStartPosition).find("input[type=text]").val($(this).children("p").text());
            }
            if(position == 2){
                $("#qt0r"+(labelStartPosition+1)).find("input[type=text]").val($(this).children("p").text());
            }
            if(position == 3){
                $("#qt0r"+(labelStartPosition+2)).find("input[type=text]").val($(this).children("p").text());
            }


        text_feld_inhalt = eval(text_feld_inhalt);

        });
		

		if(userAction == 1){ 
		//WEITER ZUR NAECHSTEN FRAGE
		next();
		} else {	
		$(".ausfuellhinweis").show();
		}
		
//Ende storeRanking function		
}



</script>