Thursday, April 7, 2016

Add a Sitecore user programmatically


using System;
using System.Web.Security;
using Sitecore.StringExtensions;

namespace MyNamespace
{
    public partial class AddUser : System.Web.UI.Page
    {
        /// <summary>
        /// The user name
        /// </summary>
        private const string UserName = "olga";

        /// <summary>
        /// The password
        /// </summary>
        private const string Password = "b";

        /// <summary>
        /// The email
        /// </summary>
        private const string Email = "okogan@hhogdev.com";

        /// <summary>
        /// The domain
        /// </summary>
        private const string Domain = "sitecore";

        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_OnClick(object sender, EventArgs e)
        {
            var userName = "{0}\\{1}".FormatWith(Domain, UserName);

            if (Sitecore.Security.Accounts.User.Exists(userName))
            {
                MembershipUser membershipUser = Membership.GetUser(userName);
                if (membershipUser != null)
                {
                    membershipUser.IsApproved = true;
                    membershipUser.UnlockUser();
                    membershipUser.IsApproved = true;
                    Membership.UpdateUser(membershipUser);
                }

                return;
            }

            Membership.CreateUser(userName, Password, Email);

            // Edit the profile information
            var user = Sitecore.Security.Accounts.User.FromName(userName, true);
            var userProfile = user.Profile;
            userProfile.FullName = string.Format(UserName);
            user.Profile.IsAdministrator = true;
            userProfile.Save();
        }
    }
}

No comments:

Post a Comment