// JavaScript Document

var registrationForm = Class.create({
	initialize: function(){
		//attributes
		this.interface			= new Interface("/code/classes/ajax/reader/registrationForm.asp"); //interface object to communicate with webserver.		
		
	},
	
	/*
		Load and display the selected hospitals address
	*/	
	loadHospitalAddress: function(){
		
		var obj = new Object();
		
		obj["action"] = "get_hospital_address";
		obj["hospitalid"] = $("fldHospitalId").value;
		
		Effect.Appear("addressRow");
		
		$("hospitalAddress").innerHTML = "Loading Address...";
		
		this.interface.ajaxPost(obj, {onSuccess:oReg.renderHospitalAddress, onFailure:oReg.displayHospitalAddressFailure});	
	},
	
	renderHospitalAddress: function(objResponse){
		
		var obj = objResponse.responseText.evalJSON(true);
		
		if (obj["output"] != ""){
			$("hospitalAddress").innerHTML = obj["output"];	
		}
		
	},

	
	/*
		Load hospitals for the specific trust that has been selected
		Server side code generates html for dropdown list - on success write this html to the page.
		If ajax failes for any reason display 'loading failed' message to user.
	*/
	loadHospitals: function(){
		//load hospitals from server
		var obj = new Object()
		
		obj["action"] = "get_hospitals_in_trust";
		obj["trustid"] = $("fldTrustId").value;
		
		$("hospital_status").innerHTML = "Loading Hospitals...";
		
		this.interface.ajaxPost(obj, {onSuccess:oReg.renderHospitalDropDown, onFailure:oReg.displayHospitalLoadFailure});	
		
	},
	
	renderHospitalDropDown: function(objResponse){
		
		obj = objResponse.responseText.evalJSON(true)
		
		if (obj["output"] != ""){
			$("hospitalDropDown").innerHTML = obj["output"];	
			$("hospitalAddress").innerHTML = "No Hospital Selected";
		}				
	
	},
	
	displayHospitalLoadFailure: function(objResponse){
		
		$("hospital_status").innerHTML = "Loading Failed";
		
	},
	
	
	/*
		Add your own trust form box 	
	*/
	openAddTrustWizard: function(){
		
		$("fldTrustId").value = "-1";
		Effect.Fade("standardTrustForm", { queue: {position:'front', scope:'trust'}});
		Effect.Appear("addTrustForm", {queue: {position:'end', scope:'trust'}});
					
	},
	
	closeAddTrustWizard: function(){
		

		Effect.Fade("addTrustForm", {queue: {position:'front', scope:'trust'}});
		Effect.Appear("standardTrustForm", { queue: {position:'end', scope:'trust'}});
		
	},
	
	/*
		Add your own hospital form box
	*/
	openAddHospitalWizard: function(){
		$("fldHospitalId").value = "-1";
		
		Effect.Fade("standardHospitalForm", { queue: {position:'front', scope:'hospital'}});
		Effect.Fade("addressRow", {queue:{position:'front', scope:'hospital'}});
		Effect.Appear("addHospitalForm", {queue: {position:'end', scope:'hospital'}});	
	},
	
	closeAddHospitalWizard: function(){

		Effect.Fade("addHospitalForm", {queue: {position:'front', scope:'hospital'}});
		Effect.Appear("standardHospitalForm", { queue: {position:'end', scope:'hospital'}});
		
	}	
	
	
});

