// JavaScript Document
var dragsort = ToolMan.dragsort()
var coordinates = ToolMan.coordinates();
var drag = ToolMan.drag();
var junkdrawer = ToolMan.junkdrawer();
var group;
var last_sort_ord = '';

function kt_order_list(elem){
	var group = elem.toolManDragGroup;
	var list = group.element.parentNode;
	var id = list.getAttribute("id");
	if (id == null) return;	
	//alert(id);
	var trig_func = function() {
		//alert('ToolMan.cookies: '+junkdrawer.serializeList(list));
		last_sort_ord = ToolMan.cookies().get("list-" + id);
		ToolMan.cookies().set("list-" + id, junkdrawer.serializeList(list), 365);		
		//alert('last_sort_ord: '+last_sort_ord);
		//save_list(id);
	};
	group.register('dragend', trig_func);
}

// Init Drag script
function kt_init_drag(ident){
	var listDrag = document.getElementById(ident);
	var list = listDrag.parentNode;
	//alert('elem: '+kt_order_list);
	dragsort.makeListSortable(listDrag, kt_list_verticalOnly, kt_order_list);
	//last_sort_ord = junkdrawer.serializeList(list);
	ToolMan.cookies().set("list-" + ident, last_sort_ord, 365);
	//junkdrawer.restoreListOrder(ident+'_list');
}

function kt_close_drag(ident){
	//alert('Close: '+ident);
}

function kt_save_list(id){	
	// save to DB
	var elem  = document.getElementById(id);
	var order = ToolMan.cookies().get("list-" + id);
	if ( elem && ((last_sort_ord != order) || (last_sort_ord == '')) ){
		//alert('('+last_sort_ord+' != '+order+') || ('+last_sort_ord+' == "")');
		var loading_lbl = document.getElementById('kt_pme_loading_label');
		if (loading_lbl){
			loading_lbl.innerHTML = 'Updating order...';
		}
		var table 	= elem.getAttribute("tb_name");
		var key 	= elem.getAttribute("tb_key");
		var ord 	= elem.getAttribute("tb_ord");
		var url 	= 'modules/phpMyEdit/extensions/explorer/ajax/order.update.php?tb='+table+'&key='+key+'&ord_fld='+ord;
		var IDs 	= order.split('|');
		for (var i = 0, n = IDs.length; i < n; i++) {
			var itemID = IDs[i]
			url += '&'+itemID+'='+i;
		}
		
		var main_ctrls 	= document.getElementById('kt_pme_main_ctrls');
		var loading_box = document.getElementById('kt_pme_loading');
		if (main_ctrls && loading_box){
			main_ctrls.style.display = 'none';
			loading_box.style.display = 'block';
		}
		
		var date = new Date();
		url += '&ts='+date.getTime();
		kt_ajax_req(url,kt_order_update_reply);
	}
	last_sort_ord = order;
}

function kt_order_update_reply(val){
	alert('kt_order_update_reply: '+val);
	return;
	
	var main_ctrls 	= document.getElementById('kt_pme_main_ctrls');
	var loading_box = document.getElementById('kt_pme_loading');
	if (main_ctrls && loading_box){
		var loading_lbl = document.getElementById('kt_pme_loading_label');
		if (loading_lbl){
			loading_lbl.innerHTML = 'Order updated...';
		}
		
		/*
		new Effect.Appear('kt_pme_loading', {
			duration: 0.7,
			from: 1.0,
			to: 0.0,
			afterFinish: function (){
				oder_update_after();
			}
		});		
		*/
		kt_oder_update_after();
	}
}

function kt_oder_update_after(){
	var main_ctrls 	= document.getElementById('kt_pme_main_ctrls');
	var loading_box = document.getElementById('kt_pme_loading');
	if (main_ctrls && loading_box){
		loading_box.style.display = 'none';
		main_ctrls.style.display = 'block';
	}
}

function kt_restore_list(ident){
	junkdrawer.restoreListOrder(ident+'_list');
}

function kt_list_verticalOnly(itm) {
	//alert(itm.toolManDragGroup.verticalOnly);
	itm.toolManDragGroup.verticalOnly();
}

/*
if (window.onload){
	window.onload = function () {
		window.onload;
		init_drag();
	}
} else {
	window.onload = init_drag;
}
*/