var CMemberPage = CFormHandler.extend({
	initialize: function()
	{
		this.parent({
			assets: {
				FormSpinner: 'resources/images/form_spinner.gif'
			}
		});
		
		LoginForm.addEvent('onlogin', this.onLoginStateChanged.bind(this, true));
		LoginForm.addEvent('onlogout', this.onLoginStateChanged.bind(this, false));
	},

	onLoginStateChanged: function(LoggedIn)
	{
		new Phpr_Request({
			postBody: {IsLoggedIn: LoggedIn ? 1 : 0},
			handler:'ev{Member_OnUpdateMessageForm}',
			update: 'MessageFormContainer',
			onFailure: this.requestFailure
		});
	},

	showMessageForm: function()
	{
		$('MessageFormContainer').show();
		$('SendMessageBtn').hide();
		this.focusMessageForm();
		
		return false;
	},
	
	focusMessageForm: function()
	{
		if ($('MessageFormElement') && $('MessageFormElement').IsVisible())
			$('Text').focus();
	},
	
	postMessage: function()
	{
		this.ShowSpinner( 'PostSpinner', 'FormContent', 'FormSpinner', {});
		
		new Phpr_Request({
			formId: 'MessageFormElement',
			handler:'ev{Member_OnPostMessage}',
			update: 'MessageFormContainer',
			errorBlockId: 'MessageError',
			onFailure: this.displayFormError.bind(this),
			onBeforeComplete: function() {
				this.HideSpinner('PostSpinner');
			}.bind(this)
		});
		
		return false;
	}
});

var MemberPage = null;

window.addEvent('domready', function() {
	MemberPage = new CMemberPage();
});