• shane buch
  • NEWBIE
  • 0 Points
  • Member since 2020

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
    Questions
  • 1
    Replies
I have to create the login page with User name and password in lightning 

I have created the fields, but I have this error when I enter invalid password or username.

This page has an error. You might just need to refresh it. Error in $A.getCallback() [Cannot read property 'login__c' of null] Callback failed: apex://LoginController/ACTION$getressource Failing descriptor: {markup://c:login}

Can you please help me in this.

Login controller.js
({
    doInit : function(component, event, helper) {
        
    },
    
 
    loginPage : function(component, event, helper) {
         var userid = component.get("v.Empiduser"); 
        var pass= component.get("v.Empidpwd");
        
        var action = component.get("c.getressource");
        
            action.setParams({
              username:userid,
              userpassw:pass
        });
    
         action.setCallback(this,function(response){  
           if($A.util.isEmpty(userid ) || $A.util.isUndefined(userid )){
            alert('Please Enter User Name!');
          return ;
        }   
          if($A.util.isEmpty(pass) || $A.util.isUndefined(pass)){
            alert('Please Enter Password!');
           return;
        } 
        var login= response.getReturnValue().login__c ;
          var password= response.getReturnValue().password__c;
         var role= response.getReturnValue().Role__c;
             
          
             if (login==userid && password==pass &&role=="Scrum Master")
              {
           const myEvent = component.getEvent('firstEvent');
            myEvent.setParams({ username: userid });
            myEvent.fire();
              }
             else if ((login==userid && password==pass &&role=="Developer"))
             {
                 const myEvent = component.getEvent('firstEvent');
            myEvent.setParams({ username: userid });
            myEvent.fire();
             }
             else if ((login==userid && password==pass &&role=="Product Owner"))
             {
                 const myEvent = component.getEvent('firstEvent');
            myEvent.setParams({ username: userid });
            myEvent.fire();
             }
             
             else 
             {
                 
                 alert("echec");
             }
         
          });
         $A.enqueueAction(action);
        
      
    },   
         
    
   
})
class Apex

public class LoginController {
    @auraEnabled
    public static Ressource__c getressource(String username,String userpassw ){
       return ([SELECT login__c,Name,password__c,Role__c,Tel__c FROM Ressource__c where login__c=:username and password__c=: userpassw]);
    }
 
    
}
Regards,
Mariem