
Ext.onReady(function(){
    Ext.QuickTips.init();
 
  //Ext.Msg.alert('Warning!', 'Authentication server is unreachable : ' );
 
	// Create a variable to hold our EXT Form Panel. 
	// Assign various config options as seen.	 
    var login = new Ext.FormPanel({ 
        labelWidth: 100,
        url:'/login',
        frame:true, 
        
        defaultType:'textfield',
		monitorValid:true,
		clientValidation: true,
		
	// Specific attributes for the text fields for username / password. 
	// The "name" attribute defines the name of variables sent to the server.
        items:[
	        { 
                fieldLabel:'Username', 
                name:'signin[username]', 
                allowBlank:false 
            },{ 
                fieldLabel:'Password', 
                name:'signin[password]', 
                inputType:'password', 
                allowBlank:false 
            },{ 
                fieldLabel:'Remember me?', 
                name:'signin[remember]', 
                inputType:'checkbox'
            }
            
            ],
 
	// All the magic happens after the user clicks the button     
        buttons:[{ 
                text:'Login',
                formBind: true,	 
                // Function that fires when user clicks the button 
                handler:function(){ 
                    login.getForm().submit({ 
                        method:'POST', 
                        waitTitle:'Connecting', 
                        waitMsg:'Sending data...',
 
			// Functions that fire (success or failure) when the server responds. 
			// The one that executes is determined by the 
			// response that comes from login.asp as seen below. The server would 
			// actually respond with valid JSON, 
			// something like: response.write "{ success: true}" or 
			// response.write "{ success: false, errors: { reason: 'Login failed. Try again.' }}" 
			// depending on the logic contained within your server script.
			// If a success occurs, the user is notified with an alert messagebox, 
			// and when they click "OK", they are redirected to whatever page
			// you define as redirect. 
 
                        success: function(form, action){
                          if(action && action.result){
					          win.hide();
					          var res =  action.result;
					           
					           var redirect = res.redirect;
					           var referer = res.referer;
					           
					           //FIXXME referer ze strony ostatnio ogladanej
					           //  
					           var redirect = '/portal/profile';
					            //alert(referer);
					                        //
					                        window.location = redirect;
					        }
                        
                         
                        	
                        },
 
			// Failure function, see comment above re: success and failure. 
			// You can see here, if login fails, it throws a messagebox
			// at the user telling him / her as much.  
 
                        failure: function(form, action){ 
                            if(action.failureType == 'server'){ 
                                obj = Ext.util.JSON.decode(action.response.responseText); 
                                Ext.Msg.alert('Login Failed!', obj.errors.reason); 
                            }else{ 
                                Ext.Msg.alert('Warning!', 'Authentication server is unreachable : ' + action.response.responseText); 
                            } 
                            
                            //login.getForm().reset(); 
                        } 
                    }); 
                } 
            }] 
    });
 
 
	// This just creates a window to wrap the login form. 
	// The login object is passed to the items collection.       
    var win = new Ext.Window({
        layout:'fit',
        width:320,
        height:160,
        closable: true,
        resizable: false,
        title:'Login', 
        plain: true,
        iconCls: Ext.ux.TDGi.iconMgr.getIcon('key'),
        
        border: false
        ,closeAction: 'hide'
        ,items: [login]
	});
	//win.show();
	Ext.get('Login').on('click', function(e,t){
	
		win.show()
	});
});

-->