
	/*#############################################################
	#
	#	constructor
	#
	#############################################################*/

function file(){
	this.request_page = request_url + "file/request.php";
	this.tgt_form = "file_form";

	this.upload_file = file_upload_file;
	this.begin_upload = file_begin_upload;
	this.update_progress = file_update_progress;
	this.show_progress = file_show_progress;
	this.prepare_file = file_prepare_file;
}

	/*#############################################################
	#
	#	file_upload_file
	#
	#############################################################*/

function file_upload_file(file_source, file_form){

	/*******************************************
	*
	*	arguments[0] = "file_source"
	*	arguments[1] = "file_form"
	*	arguments[2] = "tgt_form"
	*
	*******************************************/

	if(document.getElementById(file_source).value != ""){

		original_file_name = document.getElementById(file_source).value;
		progress = 0;
		target_progress = 0;
		new_image = false;
		upload_form = file_form;
		tgt_form = file_form;

		if(arguments[2]){
			this.tgt_form = arguments[2];
		}

		document.getElementById("file_1_progress").style.width = "0%";
		document.getElementById("file_data_percent").innerHTML = "0%";
		document.getElementById("file_data_name").innerHTML = original_file_name;

		data = "action=get_file_upload_id&original_file_name=" + original_file_name;
		//alert_test(data);
		remote_data.send_data(this.request_page, data);

		document.getElementById(upload_form).style.display = "none";
		document.getElementById("wysiwyg_upload").style.display = "block";
	}else{
		alert("You need to select a file to upload");
	}
}

	/*#############################################################
	#
	#	file_begin_upload
	#
	#############################################################*/

file_upload_id = false;
tgt_form = false;

function file_begin_upload(id){
	//alert_test("new id = " + id);

	//alert_test(document.file_form);

	file_upload_id = id;

	var action = $("#"+this.tgt_form).attr("action");

	sid_loc = action.indexOf("&sid=");

	if(sid_loc == -1){
		action = action + "&sid=" + id;
		$("#"+this.tgt_form).attr("action", action);
	}else{
		action = action.slice(0, sid_loc + 5) + id;
		$("#"+this.tgt_form).attr("action", action);
	}

	document.getElementById(this.tgt_form).submit();

	//document.getElementById("table_content_editor").style.display = "none";
	//document.getElementById("wysiwyg_upload").style.display = "block";
	//document.getElementById("file_data_name").innerHTML = original_file_name;
	this.update_progress(0);
}

	/*#############################################################
	#
	#	file_update_progress
	#
	#############################################################*/

progress = 0;
target_progress = 0;

function file_update_progress(percent){
	//alert_test("percent = " + percent);
	if(percent > 100){
		percent = 100;
	}
	if(target_progress < percent){
		target_progress = percent;
		this.show_progress();
	}
	if(percent < 100){
		data = "action=get_progress&file_upload_id=" + file_upload_id;
		remote_data.send_data(this.request_page, data);
	}
}

/*
progress = 0;
target_progress = 0;
uploading = false;

function update_progress(percent){
	//alert_test("percent = " + percent);
	if(percent > 100){
		percent = 100;
	}
	if(target_progress < percent){
		target_progress = percent;
		if(!uploading){
			show_progress();
		}
	}
	if(percent < 100){
		data = "action=get_progress&file_upload_id=" + file_upload_id;
		remote_data.send_data(request_page, data);
	}
}
*/
	/*#############################################################
	#
	#	file_show_progress
	#
	#############################################################*/

target_file = false;

function file_show_progress(){
	if(progress < target_progress){
		document.getElementById("file_1_progress").style.width = ++progress + "%";
		document.getElementById("file_data_percent").innerHTML = progress + "%";

		if(progress < 100 || !target_file){
			setTimeout("file.show_progress()", 50);
		}else{
			//alert_test("moving on");
			setTimeout("file.prepare_file()", 500);
		}
	}else{
		if(progress > 100){
			progress = 100;
		}
		if(progress > 98){
			//alert_test("progress = " + progress + " and target_file = " + target_file);
		}
		if(progress == 100 && target_file){
			setTimeout("file.prepare_file()", 500);
		}else{
			setTimeout("file.show_progress()", 50);
		}

	}
}

	/*#############################################################
	#
	#	file_prepare_file
	#
	#############################################################*/

//function content_prepare_image(target_file){
preparing_fle = false;

function file_prepare_file(){
	if(!preparing_fle){
		var data = "" +
			"action=prepare_file" +
			"&file_upload_id=" + file_upload_id +
			"&TGTPAGE=" + TGTPAGE +
			"&folder=" + folder +
			"&target_file=" + download;

		//alert_test(data);
		remote_data.send_data(this.request_page, data);
		preparing_fle = true;
	}
}

