var start = [0,0];

$(function(){
	
	var gridWidth = 90;
	var active = false;
	
	function getOrder()
	{
		var grid = new Array(11);
		$('.grid.draggable').each(function(){
			if(grid[(parseFloat($(this).css('top').replace('px',''))/gridWidth)-1] instanceof Array) {} else {
				grid[(parseFloat($(this).css('top').replace('px',''))/gridWidth)-1] = new Array(11);
			}
			grid[(parseFloat($(this).css('top').replace('px',''))/gridWidth)-1][(parseFloat($(this).css('left').replace('px',''))/gridWidth)+1] = $(this).attr("id");
		});
		
		var getString = "?";
		for(i = 1; i < grid.length; i++)
		{
			for(r = 1; r < grid.length; r++)
			{
				if(grid[i])
				{
					getString += "grid[" + i + "][" + r + "]=" + grid[i][r] + "&";
				}
			}
		}
		
		$.get('/setorder' + getString);
	}
	
	$('.grid.draggable').draggable({
		zIndex: 300,
		opacity: 0.7,
		addClasses: false,
		revert: 'invalid',
		start: function(event, ui) {
			if($('.intradrop').length==1) { $('#intradrop').fadeIn(); $('#intranettabs').hide(); }
			else { $('#dropbuttons').fadeIn(); }
			start[0] = 	ui.helper.css('top');
			start[1] = 	ui.helper.css('left');
		},
		stop: function(event, ui) {
			if($('.intradrop').length==1) { $('#intradrop').hide(); $('#intranettabs').fadeIn(); }
			else { $('#dropbuttons').hide(); }
			
			return false;
		}
	}).disableSelection();
	
	$('.dropit').droppable({
		drop: function(event, ui)
		{
			var dropped = $(this).attr('id');
			
			if(dropped=='verwijder')
			{
				ui.helper.remove();
				var empt2 = $('.empty:first').clone();
				empt2.css('left', start[1]).css('top', start[0]).attr('id', 'empty_' + Math.ceil(Math.random()*9999)).appendTo('#containment');
				
				bindDroppable();
				getOrder();
				bindEmpty();
			}
			
			return false;
		}
	});
	
	$('.item').disableSelection();
	
	var bindInsideClick = function() {
		$('a.inside').click(function(event){
			var topPX = ($('#intranet_header').length==1)?300:200;
			$.get($(this).attr('href'), function(data){
				$('#overlay').html(data).animate({
					width: "852px",
					height: "310px",
					top: topPX+"px",
					left: "0px",
					opacity: 1
				}, 1000);
			});
			
			event.preventDefault();
		});
	}; bindInsideClick();
	
	var bindDroppable = function() {
		$('.grid').droppable({
			accept:'.grid.draggable',
			hoverClass: 'drophover',
			drop: function(event, ui) {
				var dropped = $(this).attr('id');
				if(dropped)
				{
					ui.helper.css('top', $('#'+dropped).css('top'));
					ui.helper.css('left', $('#'+dropped).css('left'));
					
					$('#'+dropped).css({'top' : start[0]});
					$('#'+dropped).css({'left' : start[1]});
					
					getOrder();
				}
				
				return false;
			}
		});
	}; bindDroppable();

	var bindEmpty = function() {
		$('div.grid > div.item.empty').click(function(){
			
			var row = Math.round((parseFloat($(this).parent().css('top').replace('px',''))/90)-1);
			var col = Math.round((parseFloat($(this).parent().css('left').replace('px',''))/90)+1);
			
			var url = 'http://www.uwincasso.nl/voegtoe/' + row + '/' + col;
			
			$.get(url, function(data){
				var topPX = ($('#intranet_header').length==1)?300:200;
				$('#overlay').html(data).animate({
					width: "852px",
					height: "310px",
					top: topPX + "px",
					left: "0px",
					opacity: 1
				}, 1000);
				return false;
			});
			
			return false;
		});
	}; bindEmpty();
});

var herstelPagina = function() {
	$("#dialog").dialog({
		bgiframe: true,
		resizable: false,
		height:140,
		modal: true,
		closeOnEscape: false,
		overlay: {
			backgroundColor: '#000',
			opacity: 0.5
		},
		buttons: {
			'Herstel': function() {
				window.location.href="/herstel";
			},
			'Annuleer': function() {
				window.location.reload();
			}
		}
	});
};
