var Ext = Ext || YAHOO.ext;
var Login = function(){
	return {
		init: function(){
			try{
				if (getEl('userLoginBtn')){
					getEl('userLoginBtn').mon('click',Login.login,Login,true);
					getEl('userLoginBtn').mon('keypress',Login.login,Login,true);
				}
				
				if ( getEl('userLogoutBtn') ){
					getEl('userLogoutBtn').mon('click',Login.logout,Login,true);
					getEl('userLogoutBtn').mon('keypress',Login.logout,Login,true);
				}
				
			} catch(e) {
				//console.error(e);
			}
		},
		login: function(){
			try{
				if ( getEl('userEmail') && getEl('userEmail').dom.value && getEl('userPassword') && getEl('userPassword').dom.value ){
					var form = getEl('userLoginForm');
					var callback = {
						success: Login.processLogin,
						failure: Login.processLogin,
						upload: Login.processLogin
					}
					YAHOO.util.Connect.setForm(form.dom);
					System.showProcessDlg();
					var cObj = YAHOO.util.Connect.asyncRequest('POST', live_site + '/index.php', callback);
				} else {
					getEl('loginMessage').update("Hiányzó mező(k)!");
				}
			} catch(e) {
				//console.error(e);
			}
		},
		processLogin: function(response){
			System.hideProcessDlg();
			var result = Ext.util.JSON.decode(response.responseText);
			if ( result['message'] ){
				getEl('loginMessage').update( result['message'] );
			}
			if (result['logged_in']){
				window.location.href = window.location;
				System.showProcessDlg();
			}
		},
		logout: function(){
			try{
				var form = getEl('userLogoutForm');
				var callback = {
					success: Login.processLogout,
					failure: Login.processLogout,
					upload: Login.processLogout
				}
				YAHOO.util.Connect.setForm(form.dom);
				System.showProcessDlg();
				var cObj = YAHOO.util.Connect.asyncRequest('POST', live_site + '/index.php', callback);
			} catch(e) {
				//console.error(e);
			}
		},
		processLogout: function(response){
			System.hideProcessDlg();
			var result = Ext.util.JSON.decode(response.responseText);
			if ( result['message'] ){
				getEl('loginMessage').update( result['message'] );
			}
			window.location.href = window.location;
			System.showProcessDlg();
		}
	}
}();
Ext.EventManager.onDocumentReady(Login.init, Login, true);