/*Global variables for passing between functions*/
var http_request = false;
var replace_this_div = 0;
var replace_loading_div = 0;
var ajax_status = 0;
var ajax_alert = "Please wait for previous instance of AJAX to load.";

/*Ajax initialise*/
function makePOSTRequest(url, parameters) {
	http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			// set type accordingly to anticipated content type
			//http_request.overrideMimeType('text/xml');
			http_request.overrideMimeType('text/html');
		}
	} 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('Cannot create XMLHTTP instance');
		return false;
	}
	http_request.onreadystatechange = alertContents;
	http_request.open('POST', url, true);
	http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http_request.setRequestHeader("Content-length", parameters.length);
	http_request.setRequestHeader("Connection", "close");
	http_request.send(parameters);
}
function alertContents() {
	if (http_request.readyState == 1) {
		document.getElementById(replace_loading_div).innerHTML = "<p class=\"ajax_loading\"><img src=\"/images/ui/ajax-loader.gif\"> Loading... Please wait.</p>";
		ajax_status = 1;
	}
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			//alert(http_request.responseText);
			result = http_request.responseText;
			document.getElementById(replace_this_div).innerHTML = result;
			ajax_status = 0;
		} else {
			ajax_status = 0;
			// alert('There was a problem with the request. http_request.status:' + http_request.status);
		}
	}
}

/*Unique functions that invoke the Ajax refresh*/

/*Gets every record related to a certain series*/
function get_series(ajax_div, loading_div) {
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(document.getElementById('next_offset')){
		var next_offset = document.getElementById('next_offset').value;
		if(next_offset != null){
			var poststr = "next_offset=" + encodeURI( document.getElementById('next_offset').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value );
			makePOSTRequest('/record_series.php', poststr);
		}
	}
}

/*Gets every record related to a certain series AND is a movie*/
function get_movies(ajax_div, loading_div, dancer) {
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(dancer == null){
		var poststr = "mediatype=" + encodeURI( document.getElementById('movietype').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value ) + "&loading_class=" + loading_div;
	} else {
		var poststr = "mediatype=" + encodeURI( document.getElementById('movietype').value ) + "&dancer=" + encodeURI( dancer ) + "&loading_class=" + loading_div;	
	}
	makePOSTRequest('/record_media.php', poststr);
}

/*Gets every record related to a certain series AND is a still image*/
function get_images(ajax_div, loading_div, dancer) {
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(dancer == null){
		var poststr = "mediatype=" + encodeURI( document.getElementById('stilltype').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value ) + "&loading_class=" + loading_div;
	} else {
		var poststr = "mediatype=" + encodeURI( document.getElementById('stilltype').value ) + "&dancer=" + encodeURI( dancer ) + "&loading_class=" + loading_div;	
	}
	makePOSTRequest('/record_media.php', poststr);
}

/*Gets every record related to a certain series AND is audio*/
function get_audio(ajax_div, loading_div, dancer) {
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(dancer == null){
		var poststr = "mediatype=" + encodeURI( document.getElementById('audiotype').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value ) + "&loading_class=" + loading_div;
	} else {
		var poststr = "mediatype=" + encodeURI( document.getElementById('audiotype').value ) + "&dancer=" + encodeURI( dancer ) + "&loading_class=" + loading_div;	
	}
	makePOSTRequest('/record_media.php', poststr);
}

/*Gets every record related to a certain series AND is a object*/
function get_object(ajax_div, loading_div, dancer) {
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(dancer == null){
		var poststr = "mediatype=" + encodeURI( document.getElementById('objecttype').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value ) + "&loading_class=" + loading_div;
	} else {
		var poststr = "mediatype=" + encodeURI( document.getElementById('objecttype').value ) + "&dancer=" + encodeURI( dancer ) + "&loading_class=" + loading_div;	
	}
	makePOSTRequest('/record_media.php', poststr);
}

/*Gets every record related to a certain series AND is text*/
function get_text(ajax_div, loading_div, dancer) {
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(dancer == null){
		var poststr = "mediatype=" + encodeURI( document.getElementById('texttype').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value ) + "&loading_class=" + loading_div;
	} else {	
		var poststr = "mediatype=" + encodeURI( document.getElementById('texttype').value ) + "&dancer=" + encodeURI( dancer ) + "&loading_class=" + loading_div;	
	}
	makePOSTRequest('/record_media.php', poststr);
}

/*Gets every record related to a certain series AND is biography*/
function get_bio(ajax_div, loading_div, dancer) {
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(dancer == null){
		var poststr = "mediatype=" + encodeURI( document.getElementById('biotype').value ) + "&seriestitle=" + encodeURI( document.getElementById('seriestitle').value ) + "&loading_class=" + loading_div;
	} else {
		var poststr = "mediatype=" + encodeURI( document.getElementById('biotype').value ) + "&dancer=" + encodeURI( dancer ) + "&loading_class=" + loading_div;	
	}
	//alert(poststr);
	makePOSTRequest('/record_media.php', poststr);
}

function get_lightbox_many(ajax_div, loading_div, type, record_id) {
	if(ajax_status == 1){
		alert(ajax_alert);
		return;
	}
	replace_this_div = ajax_div;
	replace_loading_div = loading_div;
	if(type == "create"){
		if(document.getElementById('new_lightbox_name_' + record_id).value == null){
			alert("You must enter a scrapbook name.");
			return;	
		}
		var poststr = "loading_class=" + loading_div + "&zoom=" + document.getElementById('zoom_' + record_id).value + "&addtolightbox=" + document.getElementById('record_id_' + record_id).value + "&newlightbox=" + document.getElementById('newlightbox_' + record_id).value + "&newlightboxname=" + document.getElementById('new_lightbox_name_' + record_id).value + "&type=" + type;
	} else {
		var poststr = "loading_class=" + loading_div + "&activelightbox=" + encodeURI( document.getElementById('activelightbox_' + record_id).value ) + "&copytolightbox=" + document.getElementById('record_id_' + record_id).value + "&type=" + type;
	}
	makePOSTRequest('/record_lightbox.php', poststr);
}

/*Show and display elements onclick*/
var state = 'none';
function showhide(layer_ref,type,dancer) {
	
	if (typeof dancer == 'undefined' ) dancer = null;
	if(ajax_status == 0){
		var obj = document.getElementById(layer_ref);
		obj.style.display = "block";
		if(type == "movie"){
			get_movies('post_1474','loading_movies',dancer);
		} else if(type == "images"){
			get_images('post_1475','loading_images',dancer);
		} else if(type == "audio"){
			get_audio('post_1476','loading_audio',dancer);
		} else if(type == "object"){
			get_object('post_1477','loading_object',dancer);
		} else if(type == "text"){
			get_text('post_1478','loading_text',dancer);
		} else if(type == "bio"){
			
			get_bio('post_1479','loading_bio',dancer);
		}
	} else {
		alert(ajax_alert);
		return;	
	}
}


