var List;
var PlaceHolder;

function load()
{
  List = document.getElementById("list");
  
  PlaceHolder = document.createElement("DIV");
  PlaceHolder.className = "list";
  PlaceHolder.style.backgroundColor = "rgb(225,225,225)";
  PlaceHolder.SourceI = null;
  
  new dragObject("e1", null, null, null, itemDragBegin, itemMoved, 
      itemDragEnd, false);
  new dragObject("e2", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e3", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e4", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e5", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e6", null, null, null, itemDragBegin, itemMoved, 
      itemDragEnd, false);
  new dragObject("e7", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e8", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e9", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
  new dragObject("e10", null, null, null, itemDragBegin, 
      itemMoved, itemDragEnd, false);
}
function itemDragBegin(eventObj, element)
{ 
  element.style.top = element.offsetTop + 'px';
  element.style.left = element.offsetLeft + 'px';
  element.className = "drag";
  document.getElementById('filebuttons').style.display = 'none';
  document.getElementById('deletebuttons').style.display = 'none';
  PlaceHolder.style.height = element.style.height;
  List.insertBefore(PlaceHolder, element);
  PlaceHolder.SourceI = element;
}
function itemMoved(newPos, element, eventObj)
{
  eventObj = eventObj ? eventObj : window.event;
  var yPos = newPos.Y + (eventObj.layerY ? eventObj.layerY : eventObj.offsetY);

  var temp;
  var bestItem = "end";
  for(var i=0; i<List.childNodes.length; i++)
  {
    if(List.childNodes[i].className == "list")
    {
      temp = parseInt(List.childNodes[i].style.height);
      if(temp/2 >= yPos)
      {
        bestItem = List.childNodes[i];
        break;
      }     
      yPos -= temp;
    }
  }
  
  if(bestItem == PlaceHolder || bestItem == PlaceHolder.SourceI) {
    return;
  }
  
  PlaceHolder.SourceI = bestItem;
  if(bestItem != "end") {
    List.insertBefore(PlaceHolder, List.childNodes[i]);
  } else {
    List.appendChild(PlaceHolder);
  }
}

function itemDragEnd(element)
{
  if(PlaceHolder.SourceI != null)
  {
    PlaceHolder.SourceI = null;  
    List.replaceChild(element, PlaceHolder);
  }

  element.className = 'list';
  element.style.top = '0px';
  element.style.left = '0px';
  //setTimeout(setNrOrder(),1000);
  document.getElementById('filebuttons').style.display = 'block';
  document.getElementById('deletebuttons').style.display = 'block';
  ReWriteBucketNumbers();
  
}
function setNrOrder() {
	var allspans = document.getElementById('list').getElementsByTagName('span');
	var j = 0;
	for (var i=0;i<allspans.length;i++) {
		if (allspans[i].id.match('rownr_')) {
			j = j+1;
			allspans[i].innerHTML = j;
		}
	}
}

function disableSelection(target){
if (typeof target.onselectstart!="undefined") //IE route
	target.onselectstart=function(){return false}
else if (typeof target.style.MozUserSelect!="undefined") //Firefox route
	target.style.MozUserSelect="none"
else //All other route (ie: Opera)
	target.onmousedown=function(){return false}
target.style.cursor = "default"
}


function thisWritten(field, helpfield, gray) {
	if (field.value.length > 0) {
		field.style.border = 'none';	
		field.style.background = 'none';	
		document.getElementById(helpfield).style.display = 'none';
	} else {
		if (gray == true) {
			field.style.border = 'dashed 1px #d2d2d2';
			field.style.background = '#f8f8f8';	
		} else {
			field.style.border = 'dashed 1px #ffffff';	
		}
		document.getElementById(helpfield).style.display = 'block';
	}
}
function deleteListRow(row, container) {
	if(confirm('Vill du verkligen ta bort denna fil från din lista?')) {
		var d = document.getElementById(container);
		var olddiv = document.getElementById(row);
		d.removeChild(olddiv);
	} else { }

}

function showmenu(object) {
	var menu = document.getElementById(object);
	menu.style.display = 'block';
}
function hidemenu(object) {
	var menu = document.getElementById(object);
	menu.style.display = 'none';
}
