/**
 * Members login js
 * 
 * This file contains all the js code required on members/login page
 * This file mainly draws the login form using extjs
 * @author Abbas Ali <abbas@sanisoft.com>
 * @version 1.0
 * @package kanari
 */
Ext.onReady(function() {
	Ext.get('forgot_password_button').on('click', function(){        
        Ext.get("forgot_pwd_email").set({'value': Ext.get("login_email_input").getValue()});                
		Ext.get('login').addClass('x-hide-display');
		Ext.get('forgot_password').removeClass('x-hide-display');
        
        // For some reason setting the check box checked property to false doesn't really work.
        if (Ext.get("login_remember_me").dom.checked) {
            Ext.get("forgot_pwd_remember_me").set({'checked': true});        
        }
	});
	
	Ext.get('cancel_forgot_password_button').on('click', function(){		
		Ext.get('forgot_password').addClass('x-hide-display');
		Ext.get('login').removeClass('x-hide-display');
	});
		
    Ext.get('forgot_pwd_login_button').on('click', function() {			        
        Ext.get("login_email_input").set({'value': Ext.get("forgot_pwd_email").getValue()});        
        Ext.get("login_password_input").set({'value': Ext.get("forgot_pwd_password").getValue()});        
        Ext.get("login_form").dom.submit();
        
        // For some reason setting the check box checked property to false doesn't really work.
        if (Ext.get("forgot_pwd_remember_me").dom.checked) {
            Ext.get("login_remember_me").set({'checked': true});
        }
	});	
    
    Ext.get('forgot_pwd_send_password').on('click', function() {
        add_message(messages.loading, 'information indicator'); 
        Ext.Ajax.request({
            url: base_url + 'members/forgot_password'
            , params: {'data[Member][email]': Ext.get("forgot_pwd_email").getValue()}            
            , waitMsg:'Sending new password...'
            // If password sent successfully then
            , success: function(response) {                
                var data= decodeJsonCheckErr(response.responseText);
                if (data.success) {                    
                    remove_indicator_messages();
                    add_message(messages.new_pw_success, 'information');
                } else {                    
                    remove_indicator_messages();
                    if ('msg' in data) {
                        add_message(data.msg, 'caution');
                    } else {
                        add_message(messages.new_pw_error, 'error');
                    }
                }                                
            }
            , failure: function(response) {
                remove_indicator_messages();
                var data= decodeJsonCheckErr(response.responseText);
                // If failed then show the error
                if (msg in data) {
                    add_message(messages.msg, 'caution');
                } else {
                    add_message(messages.new_pw_error, 'error');
                }
            }
        });
    });			
});
