/// <summary>
        /// Copies the current account information to the specified <paramref name="userAccount" />.
        /// </summary>
        /// <param name="userAccount">The user account to populate with information from the current instance.</param>
        /// <exception cref="ArgumentNullException">Thrown when <paramref name="userAccount" /> is null.</exception>
        private void CopyToInstance(UserAccount userAccount)
        {
            if (userAccount == null)
                throw new ArgumentNullException("userAccount");

            userAccount._comment = this.Comment;
            userAccount._creationDate = this.CreationDate;
            userAccount._email = this.Email;
            userAccount._isApproved = this.IsApproved;
            userAccount._isLockedOut = this.IsLockedOut;
            userAccount._isOnline = this.IsOnline;
            userAccount._lastActivityDate = this.LastActivityDate;
            userAccount._lastLockoutDate = this.LastLockoutDate;
            userAccount._lastLoginDate = this.LastLoginDate;
            userAccount._lastPasswordChangedDate = this.LastPasswordChangedDate;
            userAccount._passwordQuestion = this.PasswordQuestion;
            userAccount._providerName = this.ProviderName;
            userAccount._providerUserKey = this.ProviderUserKey;
            userAccount._userName = this.UserName;
        }
        /// <summary>
        /// Verifies the logged on user has permission to add users to the roles defined in <paramref name="roleNames" />.
        /// </summary>
        /// <param name="roleNames">The role names.</param>
        /// <param name="errorMessage">The error message. Populated only when validation fails (return value is <c>false</c>).</param>
        /// <returns>Returns true if logged on user has permission to add users to the roles defined in <paramref name="roleNames" />;
        /// otherwise false.</returns>
        private bool VerifyUserHasPermissionToAddUserToDefaultRolesForSelfRegisteredUser(string[] roleNames, out string errorMessage)
        {
            IUserAccount sampleNewUser = new UserAccount(Guid.NewGuid().ToString());
              try
              {
            UserController.ValidateLoggedOnUserHasPermissionToSaveUser(sampleNewUser, roleNames);
              }
              catch (GallerySecurityException ex)
              {
            errorMessage = ex.Message;
            return false;
              }

              errorMessage = null;
              return true;
        }
 /// <summary>
 /// Verifies the logged on user has permission to add users to the roles defined in the DefaultRolesForSelfRegisteredUser setting.
 /// </summary>
 /// <param name="item">The data binding item.</param>
 /// <returns>Returns true if logged on user has permission to add users to the roles defined in the DefaultRolesForSelfRegisteredUser setting;
 /// otherwise false.</returns>
 private bool VerifyUserHasPermissionToAddUserToDefaultRolesForSelfRegisteredUser(wwDataBindingItem item)
 {
     IUserAccount sampleNewUser = new UserAccount(Guid.NewGuid().ToString());
     try
     {
         UserController.ValidateLoggedOnUserHasPermissionToSaveUser(sampleNewUser, GallerySettingsUpdateable.DefaultRolesForSelfRegisteredUser, null);
     }
     catch (GallerySecurityException ex)
     {
         item.BindingErrorMessage = ex.Message;
         return false;
     }
     return true;
 }