var srcObj = new Object;
var destObj = new Object;



function startDrag(){
	 // get what is being dragged:
	srcObj = window.event.srcElement;

	 // post the data for Windows:
	var dragData = window.event.dataTransfer;

	 // set the type of data for the clipboard:
	dragData.setData('Text', window.event.srcElement.src);

	 // allow only dragging that involves moving the object:
	dragData.effectAllowed = 'linkMove';

	 // use the special 'move' cursor when dragging:
	dragData.dropEffect = 'move';
}

function enterDrag() {
	// allow target object to read clipboard:
	window.event.dataTransfer.getData('Text');
}

function endDrag() {
    // when done remove clipboard data
	window.event.dataTransfer.clearData();

}

function overDrag() {
    // tell onOverDrag handler not to do anything:
	window.event.returnValue = false;
	window.event.srcElement.className = "imgDD1";
}

function leaveDrag() {
    // tell onOverDrag handler not to do anything:
	window.event.returnValue = false;
	window.event.srcElement.className = "imgDD0";

}

function drop() {
    // eliminate default action of ondrop so we can customize:
	window.event.returnValue = false;
	window.event.srcElement.className = "imgDD0";
	changeOrder();
}


function changeOrder() {

	//aktuelles Enter objekt
	destObj = window.event.srcElement;
	var destPic = destObj.src;
	var sourcePic = srcObj.src;

	//collection Object aller Images die zu sortieren sind
	var myImages = new Object;
	myImages = document.images("myDragImages");

	//aktuellen Index von Drag and Drop Destination und Source speichern
	destIndex = destObj.myindex;
	srcIndex = srcObj.myindex;

	//Die Bilderdaten in einem Array zwischenspeichern, da die Inhalte der Img Objekte dynamisch verändert werden

	var picCount = myImages.length;
	var PicStack = new Array();
	var mediaIdStack = new Array();

	for(j=0; j<= picCount-1; j++) {
		PicStack[j] = myImages[j].src;
		mediaIdStack[j] = myImages[j].mediaid;
	}



	//alert("DESTIndex:" + destIndex + ", SourceIndex: " + srcObj.myindex);

	//abhängig von Richtungsverschiebung werden die Bilder und Indizes neu vergeben
	if(!(destIndex==srcObj.myindex)) {
		if(destIndex < srcIndex) {
			for (i = destIndex-1; i < srcIndex-1; i++) {
				myImages[i+1].src = PicStack[i];
				myImages[i+1].mediaid = mediaIdStack[i];
				myImages[i+1].myindex = i+2;
			}
			myImages[destIndex-1].src = sourcePic;
			myImages[destIndex-1].myindex = destIndex;
			myImages[destIndex-1].mediaid = mediaIdStack[srcIndex-1];
		}


		if(destIndex > srcIndex) {
			for (i = srcIndex ; i < destIndex; i++) {
				myImages[i-1].src = PicStack[i];
				myImages[i-1].mediaid = mediaIdStack[i];
				myImages[i-1].myindex = i;
			}
			myImages[destIndex-1].src = sourcePic;
			myImages[destIndex-1].myindex = destIndex;
			myImages[destIndex-1].mediaid = mediaIdStack[srcIndex-1];
		}
	}



	//alert(document.getElementById("content").innerHTML);
	//alle Images auslesen und für Formularverarbeitung aufbereiten

	var output = new String();
	for (i=0; i < picCount; i++) {
		output += myImages[i].mediaid + "=" + myImages[i].myindex;
		if (i < picCount-1) output += ",";
	}
	document.forms.sort.newsortorder.value=output;
	//alert (document.forms.sort.newsortorder.value);

}

//Funktion zum öffnen von myimages in Popup Fenster
function open_myimages (){
	open("myimages.php", "picwin", "width=600,height=200,resizable=yes,status=no,toolbar=no,menubar=no,location=no,scrollbars=yes");
}

