var login_callback = { 
	ajax_login: function(result) { 
		$('login_Username').update(); 
		$('login_Password').update();
		$('FEEDBACK_login').update(result[1]); 
		if (result[2]) { 
			window.setTimeout("window.reloadPage();", 0); 
		} else { 
			$('FORM_login').show();
			if ($F('login_Username') == '') {
				$('login_Username').focus(); 
			} else {
				$('login_Password').focus(); 	
			}
		} 
	},
	ajax_resetpassword: function(result) {
		$('FORM_resetpassword').show();
		$('FEEDBACK_resetpassword').update(result[0]);
	},
	ajax_lookup_postcode: function(result) {
		$('STATUS_text').update('Lookup completed. Results shown below.');
		$('STATUS_text').update(result[0]);
		
		if (result[2]) {
			$('SELECT_suburb').update(result[2]);
			$('SELECT_suburb').up('tr').show();
			
			if (result[2].length == 2) {
				$('SELECT_suburb').selectedIndex = 1;
				login_remote.ajax_lookup_location_information($$F('SELECT_suburb'));
			}
			
		} else {
			$('SELECT_suburb').up('tr').hide();
		}
	},
	ajax_lookup_location_information: function(result) {
	
		if (result[0]) {
			$('STATUS_text').update('Result shown below:');
			$('LOCATION_district_name').up('tr').show();
			$('LOCATION_district_name').update(result[2]['LOCATION']['DISTRICT']['Name']);
			$('LOCATION_district_staff').up('tr').show();
			$('LOCATION_district_staff').update(result[2]['LOCATION']['DISTRICT']['Staff']);
		} else {
			$('STATUS_text').update('No data available for this location.');
			$('DATA_result').hide();
		}
	}
};

var login_remote = new mysuchaplainpublicajax(login_callback); 

var login_behaviour = {
	'#ACTION_login': function(el) {
		el.onclick = function() {
			$('FORM_login').hide();
			$('FEEDBACK_login').show(); 
			$('FEEDBACK_login').update('Verifying username and password...'); 
			login_remote.ajax_login($F('login_Username'), $F('login_Password'), false); 
			return false;
		}
	},
	'#ACTION_resetpassword': function(el) {
		el.onclick = function() {
			el.blur();
			$('FEEDBACK_resetpassword').show(); 
			if ($$F('reset_Username') != '') {
				$('FORM_resetpassword').hide();
				$('FEEDBACK_resetpassword').update('Reseting password...'); 
				login_remote.ajax_resetpassword($$F('reset_Username')); 
				$('reset_Username').update();
			} else {
				$('FEEDBACK_resetpassword').update('You need to enter a username/email address<br /> to be able to reset your password.'); 
			}
		}
	},
	'#FORM_lookup_postcode': function(el) {
		el.onsubmit = function() {
			$('SELECT_suburb').up('tr').hide();
			$('LOCATION_district_name').up('tr').hide();
			$('LOCATION_district_staff').up('tr').hide();
			if ($$F('LOOKUP_postcodesuburb') != '') {
				$('STATUS_text').update('Lookup in progress...');
				login_remote.ajax_lookup_postcode($$F('LOOKUP_postcodesuburb'));
			} else {
				$('STATUS_text').update('No postcode or suburb entered for lookup.');
			}
			return false;
		}
	},
	'#SELECT_suburb': function(el) {
		el.onchange = function() {
			if ($$F('SELECT_suburb') != 0) {
				$('STATUS_text').update('Loading...');
				login_remote.ajax_lookup_location_information($$F('SELECT_suburb'));
			} else {
				$('STATUS_text').update('Please choose a suburb from the pulldown.');
				$('DATA_result').hide();
			}
		}
	}
};