function getRequest(){
	var http_request = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
			http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	} else {
		return http_request;	
	}
}

function request_processLink(id){
	
	var http_request = getRequest();
	
	http_request.onreadystatechange = function(){
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				
				if(http_request.responseText != 0){
					// Success
				} else {
					// Fail
				}
			} else {
				// Fail
			}
		}
	}
	
	http_request.open('POST', 'includes/requests/processLink.php', true);
		
	http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	
	var params = "id="+id;
	http_request.send(params);
	
}

function save_image_order(which) {

	var http_request = getRequest();
	
	var ajax_msg = document.getElementById('ajax_msg');
	
	http_request.onreadystatechange = function(){
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				
				if(http_request.responseText == 'true'){
					ajax_msg.innerHTML = 'Order saved successfully.'
				} else {
					ajax_msg.innerHTML = 'Could not save order.'
				}
				
				init_images(which);
				//init_page();
			}else if (http_request.status == 404) {
				ajax_msg.innerHTML = 'Could not find component.';
				//init_page();
			} else {
				ajax_msg.innerHTML = 'Could not save order.';
			}
		}
	}
	http_request.open('POST', '/admin/events_images.php', true);
	http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	
	var params = "imageorder=";
	var container = document.getElementById(which);
	var images = getElementsByClassName('image', 'div', container);
	for(var i = 0; i < images.length; i++){
		var id = images[i].getAttribute('id');
		var temp = id.split("_"); // id is in the format  image_{image_id}
		params += temp[1]; // just use image_id
		//params += id;
		if(i != (images.length-1)) params += "|";
	}
	http_request.send(params);
	ajax_msg.innerHTML = 'Saving order...';
	
	
}

function init_images(which){
	
	var component = document.getElementById(which);

	Sortable.create(component,
	 {tag:'div',overlap:'vertical',handle:'drag', 
		onChange: function(){
			save_image_order(which);
			//alert("changed");
		}
	})
}