/// <summary>
 /// delete a sharepoint item
 /// </summary>
 /// <param name="item">the item to delete</param>
 public void DeleteItem(SPListItem item)
 {
     if (item == null)
     {
         return;
     }
     try
     {
         item.Delete();
     }
     catch (Exception ex)
     {
         var log = new AppEventLog(AppException.ExceptionMessage(ex, "DeleteItem", "ClsHelper"));
         log.WriteToLog();
     }
 }
Beispiel #2
0
        public SPListItemCollection GetItemCollection(string query)
        {
            if (string.IsNullOrEmpty(query))
            {
                return(null);
            }

            SPListItemCollection items = null;

            try
            {
                SPList sharepointList = GetList();

                if (sharepointList == null)
                {
                    return(null);
                }

                /*bool enabledThrottling = sharepointList.EnableThrottling;
                 *
                 * if (enabledThrottling)
                 * {
                 *  sharepointList.EnableThrottling = false;
                 * }*/

                var sharepointQuery = new SPQuery
                {
                    Query = query,
                    // QueryThrottleMode = SPQueryThrottleOption.Override
                };

                items = sharepointList.GetItems(sharepointQuery);

                /*if (enabledThrottling)
                 * {
                 *  sharepointList.EnableThrottling = true;
                 * }*/
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "GetItemCollection", "ClsHelperParent"));
                log.WriteToLog();
            }

            return(items);
        }
 /// <summary>
 /// delete all the items in a shrepoint list (don't forget to declare the constructor)
 /// </summary>
 public void DeleteAllItemsInList()
 {
     try
     {
         SPListItemCollection itemCollection = GetItemCollection();
         if (itemCollection == null)
         {
             return;
         }
         DeleteItems(itemCollection);
     }
     catch (Exception ex)
     {
         var log = new AppEventLog(AppException.ExceptionMessage(ex, "DeleteAllItemsInList", "ClsHelper"));
         log.WriteToLog();
     }
 }
 public void DeleteGroup(string groupName)
 {
     try
     {
         using (SPWeb website = GetWebSite())
         {
             SPGroupCollection sharepointGroups = website.SiteGroups;
             sharepointGroups.Remove(groupName);
             website.Update();
         }
     }
     catch (Exception ex)
     {
         var log = new AppEventLog(AppException.ExceptionMessage(ex, "aGroupName", "ClsHelper"));
         log.WriteToLog();
     }
 }
        public bool IsViewExist(string view)
        {
            try
            {
                SPList list = GetList();

                if (list.Views.Cast <SPView>().Any(listView => listView.ToString() == view))
                {
                    return(true);
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "IsViewExist", "ClsHelper"));
                log.WriteToLog();
            }

            return(false);
        }
        public void AddGroup(string groupName, string owner, string defaultUser, string description,
                             UserObject.RoleDefinition role)
        {
            if (string.IsNullOrEmpty(groupName))
            {
                return;
            }
            if (string.IsNullOrEmpty(owner))
            {
                return;
            }
            if (string.IsNullOrEmpty(defaultUser))
            {
                return;
            }
            try
            {
                using (SPWeb website = GetWebSite())
                {
                    SPUser sharepointOwner = GetUserObject(owner);
                    if (sharepointOwner == null)
                    {
                        return;
                    }
                    SPUser sharepointDefaultUser = GetUserObject(defaultUser);
                    if (sharepointDefaultUser == null)
                    {
                        return;
                    }
                    SPGroupCollection sharepointGroups = website.SiteGroups;
                    sharepointGroups.Add(groupName, sharepointOwner, sharepointDefaultUser, description);
                    AssignPermission(role, groupName, string.Empty);

                    website.Update();
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "AddGroup", "ClsHelper"));
                log.WriteToLog();
            }
        }
 public void DeleteFarmUser(string userAccount)
 {
     if (string.IsNullOrEmpty(userAccount))
     {
         return;
     }
     try
     {
         UserProfileManager profileManager = GetProfileManager();
         if (profileManager.UserExists(userAccount))
         {
             profileManager.RemoveUserProfile(userAccount);
         }
     }
     catch (Exception ex)
     {
         var log = new AppEventLog(AppException.ExceptionMessage(ex, "DeleteUser", "ClsHelper"));
         log.WriteToLog();
     }
 }
        public long GetFarmUsersCount()
        {
            long count = 0;

            try
            {
                UserProfileManager profileManager = GetProfileManager();
                if (profileManager != null)
                {
                    count = profileManager.Count;
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "GetUsersCount", "ClsHelper"));
                log.WriteToLog();
            }

            return(count);
        }
        public void UploadFileToLibrary(string destinationLibraryUrl, string filePathOnDisk)
        {
            if (string.IsNullOrEmpty(destinationLibraryUrl))
            {
                return;
            }

            if (string.IsNullOrEmpty(filePathOnDisk))
            {
                return;
            }

            FileStream stream  = null;
            SPWeb      website = null;

            try
            {
                stream = File.OpenRead(filePathOnDisk);
                var contents = new byte[stream.Length];
                stream.Read(contents, 0, (int)stream.Length);
                website = GetWebSite();
                website.Files.Add(destinationLibraryUrl, contents);
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "UploadFileToLibrary", "ClsHelper"));
                log.WriteToLog();
            }
            finally
            {
                if (stream != null)
                {
                    stream.Close();
                }
                if (website != null)
                {
                    website.Dispose();
                }
            }
        }
 public void UpdateUser(UserObject user)
 {
     if (user == null)
     {
         return;
     }
     if (string.IsNullOrEmpty(user.UserName))
     {
         return;
     }
     try
     {
         SPUser sharepointUser = GetUserObject(user.UserName);
         if (sharepointUser == null)
         {
             return;
         }
         if (user.Email != string.Empty)
         {
             sharepointUser.Email = user.Email;
         }
         if (user.Name != string.Empty)
         {
             sharepointUser.Name = user.Name;
         }
         if (user.Notes != string.Empty)
         {
             sharepointUser.Notes = user.Notes;
         }
         sharepointUser.Update();
     }
     catch (Exception ex)
     {
         var log = new AppEventLog(AppException.ExceptionMessage(ex, "UpdateUser", "ClsHelper"));
         log.WriteToLog();
     }
 }
        public void RemoveUserFromGroup(UserObject user)
        {
            if (user == null)
            {
                return;
            }
            if (string.IsNullOrEmpty(user.UserName))
            {
                return;
            }
            if (string.IsNullOrEmpty(user.GroupName))
            {
                return;
            }
            try
            {
                SPUser sharepointUser = GetUserObject(user.UserName);
                if (sharepointUser == null)
                {
                    return;
                }
                SPGroup sharepointGroup = GetGroupObject(user.GroupName);
                if (sharepointGroup == null)
                {
                    return;
                }

                sharepointGroup.RemoveUser(sharepointUser);
                sharepointGroup.Update();
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "RemoveUserFromGroup", "ClsHelper"));
                log.WriteToLog();
            }
        }
        public SPUser GetUserObject(string userName)
        {
            if (string.IsNullOrEmpty(userName))
            {
                return(null);
            }

            SPUser user = null;

            try
            {
                using (SPWeb website = GetWebSite())
                {
                    user = website.AllUsers[userName];
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "GetUserObject", "ClsHelper"));
                log.WriteToLog();
            }

            return(user);
        }
        public SPGroup GetGroupObject(string groupName)
        {
            if (string.IsNullOrEmpty(groupName))
            {
                return(null);
            }

            SPGroup sharepointGroup = null;

            try
            {
                using (SPWeb website = GetWebSite())
                {
                    sharepointGroup = website.SiteGroups[groupName];
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "GetGroupObject", "ClsHelper"));
                log.WriteToLog();
            }

            return(sharepointGroup);
        }
        // in this case we're not using the spweb in the base class in fact we're passing it as a parameter
        public void AddFields(Hashtable fields, SPWeb currentWebSite)
        {
            if (!IsHashtableValid(fields))
            {
                return;
            }
            FieldObject field;

            try
            {
                SPList            list            = GetList();
                SPFieldCollection fieldCollection = list.Fields;
                ICollection       keys            = fields.Keys;

                foreach (object key in keys)
                {
                    field = (FieldObject)fields[key];
                    switch (field.ValueType)
                    {
                    case FieldObject.Types.AllDayEvent:
                        fieldCollection.Add(key.ToString(), SPFieldType.AllDayEvent, field.IsRequired);
                        break;

                    case FieldObject.Types.Attachments:
                        fieldCollection.Add(key.ToString(), SPFieldType.Attachments, field.IsRequired);
                        break;

                    case FieldObject.Types.Boolean:
                        fieldCollection.Add(key.ToString(), SPFieldType.Boolean, field.IsRequired);
                        break;

                    case FieldObject.Types.Calculated:
                        fieldCollection.Add(key.ToString(), SPFieldType.Calculated, field.IsRequired);
                        break;

                    case FieldObject.Types.Choice:
                        fieldCollection.Add(key.ToString(), SPFieldType.Choice, field.IsRequired);
                        break;

                    case FieldObject.Types.Computed:
                        fieldCollection.Add(key.ToString(), SPFieldType.Computed, field.IsRequired);
                        break;

                    case FieldObject.Types.ContentTypeId:
                        fieldCollection.Add(key.ToString(), SPFieldType.ContentTypeId, field.IsRequired);
                        break;

                    case FieldObject.Types.Counter:
                        fieldCollection.Add(key.ToString(), SPFieldType.Counter, field.IsRequired);
                        break;

                    case FieldObject.Types.CrossProjectLink:
                        fieldCollection.Add(key.ToString(), SPFieldType.CrossProjectLink, field.IsRequired);
                        break;

                    case FieldObject.Types.Currency:
                        fieldCollection.Add(key.ToString(), SPFieldType.Currency, field.IsRequired);
                        break;

                    case FieldObject.Types.DateTime:
                        fieldCollection.Add(key.ToString(), SPFieldType.DateTime, field.IsRequired);
                        break;

                    case FieldObject.Types.Error:
                        fieldCollection.Add(key.ToString(), SPFieldType.Error, field.IsRequired);
                        break;

                    case FieldObject.Types.File:
                        fieldCollection.Add(key.ToString(), SPFieldType.File, field.IsRequired);
                        break;

                    case FieldObject.Types.GridChoice:
                        fieldCollection.Add(key.ToString(), SPFieldType.GridChoice, field.IsRequired);
                        break;

                    case FieldObject.Types.Guid:
                        fieldCollection.Add(key.ToString(), SPFieldType.Guid, field.IsRequired);
                        break;

                    case FieldObject.Types.Integer:
                        fieldCollection.Add(key.ToString(), SPFieldType.Integer, field.IsRequired);
                        break;

                    case FieldObject.Types.Invalid:
                        fieldCollection.Add(key.ToString(), SPFieldType.Invalid, field.IsRequired);
                        break;

                    case FieldObject.Types.Lookup:
                        fieldCollection.Add(key.ToString(), SPFieldType.Lookup, field.IsRequired);
                        break;

                    case FieldObject.Types.MaxItems:
                        fieldCollection.Add(key.ToString(), SPFieldType.MaxItems, field.IsRequired);
                        break;

                    case FieldObject.Types.ModStat:
                        fieldCollection.Add(key.ToString(), SPFieldType.ModStat, field.IsRequired);
                        break;

                    case FieldObject.Types.MultiChoice:
                        fieldCollection.Add(key.ToString(), SPFieldType.MultiChoice, field.IsRequired);
                        break;

                    case FieldObject.Types.Note:
                        fieldCollection.Add(key.ToString(), SPFieldType.Note, field.IsRequired);
                        break;

                    case FieldObject.Types.Number:
                        fieldCollection.Add(key.ToString(), SPFieldType.Number, field.IsRequired);
                        break;

                    case FieldObject.Types.PageSeparator:
                        fieldCollection.Add(key.ToString(), SPFieldType.PageSeparator, field.IsRequired);
                        break;

                    case FieldObject.Types.Recurrence:
                        fieldCollection.Add(key.ToString(), SPFieldType.Recurrence, field.IsRequired);
                        break;

                    case FieldObject.Types.Text:
                        fieldCollection.Add(key.ToString(), SPFieldType.Text, field.IsRequired);
                        break;

                    case FieldObject.Types.ThreadIndex:
                        fieldCollection.Add(key.ToString(), SPFieldType.ThreadIndex, field.IsRequired);
                        break;

                    case FieldObject.Types.Threading:
                        fieldCollection.Add(key.ToString(), SPFieldType.Threading, field.IsRequired);
                        break;

                    case FieldObject.Types.Url:
                        fieldCollection.Add(key.ToString(), SPFieldType.URL, field.IsRequired);
                        break;

                    case FieldObject.Types.User:
                        fieldCollection.Add(key.ToString(), SPFieldType.User, field.IsRequired);
                        break;

                    case FieldObject.Types.WorkflowEventType:
                        fieldCollection.Add(key.ToString(), SPFieldType.WorkflowEventType, field.IsRequired);
                        break;

                    case FieldObject.Types.WorkflowStatus:
                        fieldCollection.Add(key.ToString(), SPFieldType.WorkflowStatus, field.IsRequired);
                        break;

                    default:
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "AddFields", "ClsHelper"));
                log.WriteToLog();
            }
        }
        private void AssignPermission(UserObject.RoleDefinition role, string groupName, string userName)
        {
            try
            {
                using (SPWeb website = GetWebSite())
                {
                    SPRoleAssignment roleAssignment = null;

                    if (string.IsNullOrEmpty(groupName))
                    {
                        roleAssignment = new SPRoleAssignment(website.SiteUsers[userName]);
                    }
                    if (string.IsNullOrEmpty(userName))
                    {
                        roleAssignment = new SPRoleAssignment(website.SiteGroups[groupName]);
                    }

                    SPRoleDefinition roleDefinition = null;
                    switch (role)
                    {
                    case UserObject.RoleDefinition.FullControl:
                        roleDefinition = website.RoleDefinitions["Full Control"];
                        break;

                    case UserObject.RoleDefinition.Design:
                        roleDefinition = website.RoleDefinitions["Design"];
                        break;

                    case UserObject.RoleDefinition.ManageHierarchy:
                        roleDefinition = website.RoleDefinitions["Manage Hierarchy"];
                        break;

                    case UserObject.RoleDefinition.Approve:
                        roleDefinition = website.RoleDefinitions["Approve"];
                        break;

                    case UserObject.RoleDefinition.Contribute:
                        roleDefinition = website.RoleDefinitions["Contribute"];
                        break;

                    case UserObject.RoleDefinition.Read:
                        roleDefinition = website.RoleDefinitions["Read"];
                        break;

                    case UserObject.RoleDefinition.RestrictedRead:
                        roleDefinition = website.RoleDefinitions["Restricted Read"];
                        break;

                    case UserObject.RoleDefinition.LimitedAccess:
                        roleDefinition = website.RoleDefinitions["Limited Access"];
                        break;

                    case UserObject.RoleDefinition.ViewOnly:
                        roleDefinition = website.RoleDefinitions["View Only"];
                        break;

                    case UserObject.RoleDefinition.RecordsCenterSubmissionCompletion:
                        roleDefinition = website.RoleDefinitions["Records Center Submission Completion"];
                        break;

                    default:
                        break;
                    }

                    if (roleAssignment != null)
                    {
                        roleAssignment.RoleDefinitionBindings.Add(roleDefinition);
                        website.RoleAssignments.Add(roleAssignment);
                        website.Update();
                    }
                }
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "AssignPermission", "ClsHelper"));
                log.WriteToLog();
            }
        }