/// <summary>
        /// Gets the current user.
        /// </summary>
        /// <param name="userIsOnline">if set to <c>true</c> [user is online].</param>
        /// <returns></returns>
        public static UserLogin GetCurrentUser(bool userIsOnline)
        {
            string userName = UserLogin.GetCurrentUserName();

            if (userName != string.Empty)
            {
                if (userName.StartsWith("rckipid="))
                {
                    Rock.Model.PersonService personService      = new Model.PersonService();
                    Rock.Model.Person        impersonatedPerson = personService.GetByEncryptedKey(userName.Substring(8));
                    if (impersonatedPerson != null)
                    {
                        return(impersonatedPerson.ImpersonatedUser);
                    }
                }
                else
                {
                    UserService userService = new UserService();
                    UserLogin   user        = userService.GetByUserName(userName);

                    if (user != null && userIsOnline)
                    {
                        // Save last activity date
                        var transaction = new Rock.Transactions.UserLastActivityTransaction();
                        transaction.UserId           = user.Id;
                        transaction.LastActivityDate = DateTime.Now;
                        Rock.Transactions.RockQueue.TransactionQueue.Enqueue(transaction);
                    }

                    return(user);
                }
            }

            return(null);
        }
示例#2
0
        protected void btnUserInfoNext_Click(object sender, EventArgs e)
        {
            Password        = tbPassword.Text;
            PasswordConfirm = tbPasswordConfirm.Text;

            if (Page.IsValid)
            {
                Rock.Model.UserService userService = new Rock.Model.UserService();
                Rock.Model.UserLogin   user        = userService.GetByUserName(tbUserName.Text);
                if (user == null)
                {
                    DisplayDuplicates(Direction.Forward);
                }
                else
                {
                    ShowErrorMessage("Username already exists");
                }
            }
        }
示例#3
0
        protected void btnUserInfoNext_Click( object sender, EventArgs e )
        {
            Password = tbPassword.Text;
            PasswordConfirm = tbPasswordConfirm.Text;

            if ( Page.IsValid )
            {
                Rock.Model.UserService userService = new Rock.Model.UserService();
                Rock.Model.UserLogin user = userService.GetByUserName( tbUserName.Text );
                if ( user == null )
                    DisplayDuplicates( Direction.Forward );
                else
                    ShowErrorMessage( "Username already exists" );
            }
        }