var loading_dialog = null;
var apply_popup_dialog = null;

function init_loading_dialog() {
	loading_dialog = new YAHOO.widget.Panel("loading_dialog_box",  
				{ width:"240px", 
				  fixedcenter:true, 
				  close:false, 
				  draggable:false, 
				  zindex:4,
				  modal:true,
				  visible:false
				} );
	loading_dialog.render(document.body);
}

function init_apply_popup_dialog() {
	apply_popup_dialog = new YAHOO.widget.Dialog("apply_popup_dialog_box", 
				{ width:"500px",
				  fixedcenter:true,
				  modal:true,
				  visible:false,
				  draggable:false,
				  hideaftersubmit : false
				} );
	YAHOO.util.Dom.addClass(document.body, 'yui-skin-sam'); 
	apply_popup_dialog.render(document.body);
	
	var form_content = document.getElementById("apply_popup_dialog_body");

	function success_handler(o) {
			if (o.responseText.search(/^\s*SUCCESS:\s*(.+)\s*$/)>=0) {
				var message = RegExp.$1;
				form_content.innerHTML = "Thank you. Your submission has been received."
				apply_popup_dialog.hide();
				window.location.reload();
			}
			else {
				form_content.innerHTML = o.responseText;
				var apply_popup_form = document.getElementById("apply_popup_form");
				apply_popup_dialog.show();
			}
			loading_dialog.hide();
	}
	var apply_popup_dialog_callback = {
		success : success_handler,
		upload : success_handler,
		failure : function(o) {
			form_content.innerHTML = "Sorry. Your request could not be processed. Please try again later.";
			apply_popup_dialog.show();
			loading_dialog.hide();
		}
	}
	apply_popup_dialog.callback = apply_popup_dialog_callback;
}


function apply_popup_dialog_submit() {
	loading_dialog.show();
	apply_popup_dialog.submit();
}

function apply_popup_dialog_cancel() {
	apply_popup_dialog.cancel();
}

function load_apply_popup(job_id) {
	loading_dialog.show();			
	var apply_popup_form = document.getElementById("apply_popup_form");
	var apply_popup_body = document.getElementById("apply_popup_dialog_body");
	var callback = {
		success : function(o) {
			apply_popup_body.innerHTML = o.responseText;
			apply_popup_dialog.show();

			var dummy = document.createElement("div");
			document.getElementById("apply_popup_dialog_body").appendChild(dummy);
			dummy.parentNode.removeChild(dummy);

			loading_dialog.hide();
		},
		failure : function(o) {
			form_content.innerHTML = "Sorry. Your request could not be processed. Please try again later.";
			apply_popup_dialog.show();
			loading_dialog.hide();
		}
	}
	
	apply_popup_form.action = "/jobs/apply/" + job_id + "/";
	YAHOO.util.Connect.asyncRequest("GET", "/jobs/apply/" + job_id + "/", callback);
}
