Save() public method

public Save ( NodeSaveSettings settings ) : void
settings SenseNet.ContentRepository.Storage.NodeSaveSettings
return void
Example #1
0
        public static User RegisterUser(string fullUserName)
        {
            if (string.IsNullOrEmpty(fullUserName))
            {
                return(null);
            }

            var slashIndex = fullUserName.IndexOf('\\');
            var domain     = fullUserName.Substring(0, slashIndex);
            var username   = fullUserName.Substring(slashIndex + 1);

            var user = User.Load(domain, username);

            if (user != null)
            {
                return(user);
            }

            try
            {
                AccessProvider.Current.SetCurrentUser(User.Administrator);

                var dom = Node.Load <Domain>(RepositoryPath.Combine(RepositoryStructure.ImsFolderPath, domain));

                if (dom == null)
                {
                    // create domain
                    dom = new Domain(Repository.ImsFolder)
                    {
                        Name = domain
                    };
                    dom.Save();
                }

                // create user
                user = new User(dom)
                {
                    Name = username, Enabled = true, FullName = username
                };
                user.Save();

                Group.Administrators.AddMember(user);
            }
            finally
            {
                if (user != null)
                {
                    AccessProvider.Current.SetCurrentUser(user);
                }
            }

            return(user);
        }
Example #2
0
        /* ==================================================================================== Helper methods */
        public static void SyncInitialUserProperties(User user)
        {
            var adPath = "WinNT://" + user.Domain + "/" + user.Name + ",user";

            try
            {
                using (var entry = ConnectToADSimple(adPath))
                {
                    if (entry != null)
                    {
                        var fn = entry.Properties["FullName"].Value.ToString();

                        user.FullName = string.IsNullOrEmpty(fn) ? user.Name : fn;
                        user.Save();
                    }
                }
            }
            catch(COMException ex)
            {
                SenseNet.Diagnostics.Logger.WriteException(ex);
            }
        }
Example #3
0
        public static User RegisterUser(string fullUserName)
        {
            if (string.IsNullOrEmpty(fullUserName))
                return null;

            var slashIndex = fullUserName.IndexOf('\\');
            var domain = fullUserName.Substring(0, slashIndex);
            var username = fullUserName.Substring(slashIndex + 1);

            var user = User.Load(domain, username);

            if (user != null)
                return user;

            try
            {
                AccessProvider.Current.SetCurrentUser(User.Administrator);

                var dom = Node.Load<Domain>(RepositoryPath.Combine(Repository.ImsFolderPath, domain));

                if (dom == null)
                {
                    //create domain
                    dom = new Domain(Repository.ImsFolder) { Name = domain };
                    dom.Save();
                }

                //create user
                user = new User(dom) { Name = username, Enabled = true, FullName = username };
                user.Save();

                Group.Administrators.AddMember(user);
            }
            finally
            {
                if (user != null)
                    AccessProvider.Current.SetCurrentUser(user);
            }

            return user;
        }