public void SendPasswordToServer(PersonalPasscodeEvent e, ClientSessionRegularNode clientSession, [JoinAll] SingleNode <EntranceScreenComponent> entranceScreen)
 {
     if (e.Passcode.Length == 0)
     {
         base.Log.Error("Invalid passcode for user: " + entranceScreen.component.Login);
     }
     else
     {
         string password   = entranceScreen.component.Password;
         bool   rememberMe = entranceScreen.component.RememberMe;
         LoginByPasswordEvent eventInstance = new LoginByPasswordEvent {
             RememberMe          = rememberMe,
             PasswordEncipher    = PasswordSecurityUtils.SaltPassword(e.Passcode, password),
             HardwareFingerprint = HardwareFingerprintUtils.HardwareFingerprint
         };
         base.ScheduleEvent(eventInstance, clientSession);
         if (rememberMe)
         {
             this.AddAwaitingTokenComponent(password, clientSession.Entity);
         }
     }
 }
        public void IntroduceUserToServer(ButtonClickEvent e, SingleNode <LoginButtonComponent> loginButton, [JoinByScreen] SingleNode <EntranceScreenComponent> entranceScreen, [JoinAll] ClientSessionRegularNode clientSession)
        {
            entranceScreen.component.SetWaitIndicator(true);
            entranceScreen.component.LockScreen(true);
            string login = entranceScreen.component.Login;

            if (login.Contains("@"))
            {
                IntroduceUserByEmailEvent eventInstance = new IntroduceUserByEmailEvent {
                    Email = login
                };
                base.ScheduleEvent(eventInstance, clientSession);
            }
            else
            {
                IntroduceUserByUidEvent eventInstance = new IntroduceUserByUidEvent {
                    Uid = login
                };
                base.ScheduleEvent(eventInstance, clientSession);
            }
        }