Exemple #1
0
        public async Task <object> GetLists(object input) // TODO:: Does this need to be excecuted async ?
        {
            SPListCollection lists = await Task.Run(() =>
            {
                var web = input as SPWeb;
                // TODO Add check if web exists
                return(web.Lists);
            });

            if (lists == null)
            {
                return(null);               // TODO: Remove
            }
            var results = from list in lists
                          select new
            {
                Title = list.Title,
                //Fields = (from field in list.Fields  // TODO: asynch? deferred?
                //          select new
                //          {
                //              Title = field.Title
                //          }).ToArray(),
                //Items = (from item in list.Items  // TODO: asynch? deferred?
                //         select new
                //         {
                //             Title = item.Title
                //         }).ToArray()
            };


            return(results.ToArray());
        }
        /// <summary>
        /// Process find&replace operation on SPWeb Lists
        /// </summary>
        /// <param name="web"></param>
        protected void FindReplaceLists(SPWeb web)
        {
            if (web != null)
            {
                SPListCollection Lists = web.Lists;
                foreach (SPList List in Lists)
                {
                    if (m_IsCanceling)
                    {
                        m_IsCanceled = true;
                        break;
                    }

                    if (ListInFilteredList(List))
                    {
                        OnTrace(@"Start search list " + List.Title, "");

                        foreach (SPListItem Item in List.Items)
                        {
                            FindReplaceFields(Item);
                        }

                        OnTrace(@"Finish search list " + List.Title, "");
                    }
                }
            }
        }
        public void DeleteList()
        {
            SPWeb website = null;

            try
            {
                website = GetWebSite();
                SPListCollection lists    = website.Lists;
                SPList           list     = lists[ListName];
                Guid             listGuid = list.ID;
                lists.Delete(listGuid);
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "DeleteList", "ClsHelper"));
                log.WriteToLog();
            }
            finally
            {
                if (website != null)
                {
                    website.Dispose();
                }
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                SPFolderCollection sfc = SPContext.Current.Web.Folders;
                ddl_Destination.Items.Add("---Make a selection---");
                foreach (SPFolder f in sfc.Cast <SPFolder>().OrderBy(t => t.Name))
                {
                    if (f.DocumentLibrary != null)
                    {
                        ddl_Destination.Items.Add(new ListItem(f.Name, f.Url));
                    }
                }

                SPListCollection lic = SPContext.Current.Web.Lists;
                ddl_Lists.Items.Add("---Make a selection---");
                foreach (SPList l in lic.Cast <SPList>().OrderBy(t => t.Title))
                {
                    //if(l.BaseType == SPBaseType.f
                    ddl_Lists.Items.Add(new ListItem(l.Title, l.ID.ToString()));
                }

                SPDocumentLibrary tempDocs = (SPDocumentLibrary)SPContext.Current.Web.Lists["Merge Templates"];
                //lb_Templates.Items.Add(new ListItem("---Make a selection---","-1",true);
                foreach (SPListItem i in tempDocs.Items.Cast <SPListItem>().OrderBy(t => t.Name))
                {
                    lb_Templates.Items.Add(new ListItem(i.Name, i.UniqueId.ToString()));
                }
                lb_Templates.DataBind();
            }
        }
Exemple #5
0
 public void createList()
 {
     try
     {
         using (SPSite site = new SPSite(ConfigurationManager.AppSettings["siteUrl"]))
         {
             using (SPWeb web = site.OpenWeb())
             {
                 SPListCollection lists = web.Lists;
                 // create new Generic list called "My List"
                 lists.Add(ConfigurationManager.AppSettings["listName"], "Task responses", SPListTemplateType.GenericList);
                 SPList newList = web.Lists["Incoming Mail List"];
                 // create Text type new column called "My Column"
                 newList.Fields.Add("Body", SPFieldType.Text, true);
                 newList.Fields.Add("Sender", SPFieldType.Text, true);
                 // make new column visible in default view
                 SPView view = newList.DefaultView;
                 view.ViewFields.Add("Body");
                 view.ViewFields.Add("Sender");
                 view.Update();
             }
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #6
0
        private void PopulateParentList()
        {
            ddlParentList.Items.Clear();

            using (SPWeb web = SPContext.Current.Site.OpenWeb())
            {
                SPListCollection lists = web.Lists;

                foreach (SPList list in lists)
                {
                    if (list.BaseType != SPBaseType.GenericList)
                    {
                        continue;
                    }

                    ListItem item = new ListItem();
                    item.Text  = list.Title;
                    item.Value = list.ID.ToString("B");
                    if (!String.IsNullOrEmpty(CascadeList) && item.Value == CascadeList)
                    {
                        item.Selected = true;
                    }

                    ddlParentList.Items.Add(item);
                }
            }
        }
Exemple #7
0
        private void tbxSharePointSiteName_Leave(object sender, EventArgs e)
        {
            if (cbxLists.Items.Count > 0)
            {
                cbxLists.Items.Clear();
            }

            try
            {
                WindowsImpersonationContext wic = Utility.CreateIdentity(tbxUserName.Text.Trim(), tbxDomainName.Text.Trim(), tbxPassword.Text.Trim()).Impersonate();

                SPSite           site  = new SPSite("http://" + tbxSharePointSiteName.Text.Trim());
                SPWeb            web   = site.OpenWeb();
                SPListCollection lists = web.Lists;
                foreach (SPList list in lists)
                {
                    if (list.BaseType == SPBaseType.GenericList || list.BaseType == SPBaseType.DiscussionBoard)
                    {
                        cbxLists.Items.Add(list.ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error: " + ex.Message, "Error");
                return;
            }
        }
        public SandboxWebPart()
        {
            try
            {
                //string siteUrl = "http://localhost"; //SPContext.Current.Site// Page.Request.QueryString["site"];

                //SPContext.Current.Site.RootWeb
                //using (SPSite siteCollection = new SPSite(siteUrl))
                {
                    using (SPWeb site = SPContext.Current.Site.RootWeb) // siteCollection.OpenWEb()
                    {
                        SPListCollection lists = site.Lists;
                        foreach (SPList list in lists)
                        {
                            myListsBox.Items.Add(list.Title);
                            myLists += list.Title + Environment.NewLine;
                        }
                    }
                }


                FullTrustProxyArgs proxyArgs = new FullTrustProxyArgs(myLists);
                SPUtility.ExecuteRegisteredProxyOperation(
                    proxyArgs.FullTrustProxyOpsAssemblyName,
                    proxyArgs.FullTrustProxyOpsTypeName,
                    proxyArgs);
            }
            catch (Exception ex)
            {
                result.Text = ex.Message;
            }
        }
        // in this case we're not using the spweb in the base class in fact we're passing it as a parameter
        public void CreateList(SPWeb currentWebSite)
        {
            SPWeb website = null;

            try
            {
                website = currentWebSite ?? GetWebSite();

                website.AllowUnsafeUpdates = true;

                SPListCollection lists  = website.Lists;
                Guid             idList = lists.Add(ListName, string.Empty, SPListTemplateType.GenericList);

                SPList list = lists.GetList(idList, false);
                list.NoCrawl = true;
                list.Update();

                website.AllowUnsafeUpdates = false;
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "CreateList", "ClsHelper"));
                log.WriteToLog();
            }
            finally
            {
                if (website != null)
                {
                    website.Dispose();
                }
            }
        }
        /// <summary>
        /// Returns SPDocumentLibrary object by library name
        /// </summary>
        /// <param name="documentLibraryName">document library name</param>
        /// <param name="documentLibWeb">web site to query for the library</param>
        /// <returns>SPDocumentLibrary</returns>
        public SPDocumentLibrary GetDocumentLibrary(string documentLibraryName, SPWeb documentLibWeb)
        {
            SPListCollection  lists      = documentLibWeb.Lists;
            SPDocumentLibrary docLibrary = (SPDocumentLibrary)lists[documentLibraryName];

            return(docLibrary);
        }
Exemple #11
0
        protected void Page_Load(object sender, EventArgs e)
        {
            SPWeb web = SPContext.Current.Web;

            Table tabelaLista = new Table();

            divtabelaListas.Controls.Add(tabelaLista);

            tabelaLista.CssClass = "table table-striped w-75 p-3 mb-2 border";

            TableCell cellHeader = new TableCell();

            cellHeader.CssClass = "w-50";
            cellHeader.Controls.Add(new LiteralControl($"<span>Nome da Lista</span>"));

            TableCell cellHeader2 = new TableCell();

            cellHeader2.CssClass = "w-50";
            cellHeader2.Controls.Add(new LiteralControl($"<span>Numero de Itens</span>"));

            TableRow row = new TableRow();

            row.Cells.Add(cellHeader);
            row.Cells.Add(cellHeader2);
            tabelaLista.Rows.Add(row);


            SPListCollection listCollection = web.Lists;

            foreach (SPList list in listCollection)
            {
                MostraListas(list, tabelaLista);
            }
        }
Exemple #12
0
        public void getRecords(string siteUrl, Guid listGuid, int itemId)
        {
            using (SPSite spsite = new SPSite(siteUrl))
            {
                using (SPWeb spweb = spsite.OpenWeb(siteUrl))
                {
                    SPListCollection colllists       = spweb.Lists;
                    SPList           parentlist      = colllists.GetList(listGuid, true);
                    string           parentlistTitle = parentlist.Title.ToString(); //父列表标题
                    string           childlistTitle  = parentlistTitle + "业绩";      //子列表标题
                    SPList           childlist       = colllists.TryGetList(childlistTitle);

                    if (childlist != null)
                    {
                        SPQuery qry = new SPQuery();
                        qry.Query = "<Where><Eq><FieldRef Name='Dept' LookupId='True' /><Value Type='Lookup'>" + itemId + "</Value></Eq></Where>";
                        SPListItemCollection listItems = childlist.GetItems(qry);
                        if (listItems.Count > 0)
                        {
                            DataTable dt = listItems.GetDataTable();
                        }
                    }
                }
            }
        }
Exemple #13
0
 public static SPList TryGetListByInternalName(this SPListCollection lists, string internalName)
 {
     // RootFolder == internal listname
     return((from SPList l in lists
             where l.RootFolder.Name.Equals(internalName, StringComparison.InvariantCulture)
             select l).SingleOrDefault());
 }
Exemple #14
0
        /// <summary>
        /// 读取创意列表生成创意DataTable数据源
        /// </summary>
        /// <param name="lstName"></param>
        /// <returns></returns>
        private DataTable getDataBySPList(string lstName)
        {
            DataTable dt = new DataTable("创意表");

            using (SPSite site = SPContext.Current.Site)
            {
                using (SPWeb web = site.OpenWeb(SPContext.Current.Web.ID))
                {
                    SPListCollection lstColl = web.Lists;
                    SPList           lst     = lstColl.TryGetList(lstName);
                    if (lst != null)
                    {
                        SPQuery qry = new SPQuery();
                        qry.Query = @"<Where><Eq><FieldRef Name='Flag0' /><Value Type='Number'>1</Value></Eq></Where>";
                        SPListItemCollection lstItems = lst.GetItems(qry);
                        if (lst.ItemCount > 0)
                        {
                            dt = lstItems.GetDataTable();
                        }
                        else
                        {
                            dt = null;
                        }
                    }
                }
            }
            return(dt);
        }
        public void CreateListView(string viewName, string query, StringCollection collViewFields, uint rowLimit,
                                   bool paged, bool makeViewDefault, SPViewCollection.SPViewType viewType, bool personalView)
        {
            SPWeb website = null;

            try
            {
                website = GetWebSite();
                SPListCollection lists = website.Lists;
                SPList           list  = lists[ListName];

                list.Views.Add(viewName, collViewFields, query, rowLimit, paged, makeViewDefault, viewType, personalView);

                SPView view = list.Views[viewName];

                view.Update();
            }
            catch (Exception ex)
            {
                var log = new AppEventLog(AppException.ExceptionMessage(ex, "CreateListView", "ClsHelper"));
                log.WriteToLog();
            }
            finally
            {
                if (website != null)
                {
                    website.Dispose();
                }
            }
        }
Exemple #16
0
 internal SPList TryGetList(SPListCollection lists, Guid id)
 {
     try {
         return(lists [id]);
     } catch {
     }
     return(null);
 }
 public virtual void AddListTo(SPListCollection listCollection)
 {
     Guid guid = listCollection.Add(InitialName, Description, ListTemplateType);
     SPList list = listCollection[guid];
     list.Title = Title;
     list.ContentTypesEnabled = ContentTypesEnabled;
     list.EnableVersioning = EnableVersioning;
     list.Update();
 }
Exemple #18
0
        public static Tuple <string, string> EnsureActivitiesList()
        {
            string currentSiteUrl         = SPContext.Current.Site.Url;
            Tuple <string, string> result = null;

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                try
                {
                    using (SPSite site = new SPSite(currentSiteUrl))
                        using (SPWeb rootWeb = site.OpenWeb())
                        {
                            rootWeb.AllowUnsafeUpdates = true;

                            SPList extistingList = rootWeb.Lists.TryGetList(ActivityLoggerListTitle);
                            if (extistingList != null)
                            {
                                result = Tuple.Create(extistingList.ID.ToString(), extistingList.DefaultView.ID.ToString());
                                return;
                            }

                            SPListCollection lists = rootWeb.Lists;
                            lists.Add(ActivityLoggerListInternalName, "UPSBrowser logged activities", SPListTemplateType.GenericList);
                            SPList list = rootWeb.Lists[ActivityLoggerListInternalName];

                            list.Title = ActivityLoggerListTitle;
                            list.Fields.Add("RegisteredDate", SPFieldType.DateTime, true);
                            list.Fields.Add("Initiator", SPFieldType.Text, true);
                            list.Fields.Add("User", SPFieldType.Text, true);
                            list.Fields.Add("Action", SPFieldType.Text, true);
                            list.Fields.Add("Result", SPFieldType.Text, true);
                            list.Fields.Add("AdditionalInfo", SPFieldType.Text, false);
                            list.Update();

                            SPView view = list.DefaultView;
                            view.ViewFields.Add("RegisteredDate");
                            view.ViewFields.Add("Initiator");
                            view.ViewFields.Add("User");
                            view.ViewFields.Add("Action");
                            view.ViewFields.Add("Result");
                            view.ViewFields.Add("AdditionalInfo");
                            view.Update();

                            rootWeb.AllowUnsafeUpdates = false;

                            result = Tuple.Create(list.ID.ToString(), list.DefaultView.ID.ToString());
                        };
                }
                catch (Exception e)
                {
                    UPSBrowserLogger.LogError(loggingCategory, $"Error creating list '{ActivityLoggerListTitle}' in the root web at {currentSiteUrl}. Exception: {e.Message}");
                    return;
                };
            });

            return(result);
        }
Exemple #19
0
        public static TFacade Use <TFacade>(this SPListCollection lists) where TFacade : BaseFacade
        {
            if (lists == null)
            {
                throw new ArgumentNullException("lists");
            }

            return((TFacade)Activator.CreateInstance(typeof(TFacade), new object[] { null, lists }));
        }
Exemple #20
0
        public static SPListCollectionFacade <BaseFacade> Use(this SPListCollection lists)
        {
            if (lists == null)
            {
                throw new ArgumentNullException("lists");
            }

            return(new SPListCollectionFacade <BaseFacade>(null, lists));
        }
Exemple #21
0
        public virtual void AddListTo(SPListCollection listCollection)
        {
            Guid   guid = listCollection.Add(InitialName, Description, ListTemplateType);
            SPList list = listCollection[guid];

            list.Title = Title;
            list.ContentTypesEnabled = ContentTypesEnabled;
            list.EnableVersioning    = EnableVersioning;
            list.Update();
        }
        public SPListCollectionInstance(ObjectInstance prototype, SPListCollection listCollection)
            : this(prototype)
        {
            if (listCollection == null)
            {
                throw new ArgumentNullException("listCollection");
            }

            m_listCollection = listCollection;
        }
Exemple #23
0
        protected void buttonCreateType_Click(object sender, EventArgs e)
        {
            //Here we will create a new content type and list
            //Start by getting the current web
            SPWeb web = SPContext.Current.Web;
            //Get the web's collection of content types
            SPContentTypeCollection contentTypes = web.ContentTypes;
            //Create a new content type
            SPContentType newType = new SPContentType(contentTypes[SPBuiltInContentTypeId.Announcement], contentTypes, "Contoso Announcements");

            //Add it to the web
            try
            {
                contentTypes.Add(newType);
            }
            catch (SPException ex)
            {
                //This is probably because the content type already exists
                labelCreateTypeResult.Text = ex.Message;
            }
            //Now get the web's field collection and add a new field to it
            SPFieldCollection siteFields = web.Fields;

            try
            {
                siteFields.Add("Product", SPFieldType.Text, false);
                web.Update();
            }
            catch (SPException ex)
            {
                //This is probably because the field already exists
                labelCreateTypeResult.Text = ex.Message;
            }
            //Add the field to the new content type
            newType.FieldLinks.Add(new SPFieldLink(siteFields["Product"]));
            newType.Update();
            //Get the web's list collection
            SPListCollection lists = web.Lists;

            try
            {
                Guid   newListGuid = lists.Add("Product Announcements", "Announcements about Contoso Products", SPListTemplateType.Announcements);
                SPList newList     = lists[newListGuid];
                newList.ContentTypes.Add(newType);
                newList.Update();
            }
            catch (SPException ex)
            {
                //This is probably because the field already exists
                labelCreateTypeResult.Text = ex.Message;
            }
            labelCreateTypeResult.Text = "Contoso Announcement content type and Product Announcements list created successfully";
        }
        private void SetTargetList(string selectedWebId, bool setTargetColumn)
        {
            listTargetList.Items.Clear();
            if (!string.IsNullOrEmpty(selectedWebId))
            {
                //using (SPSite _site = SPControl.GetContextSite(this.Context)) {
                //  using (SPWeb _web = _site.OpenWeb(new Guid(selectedWebId))) {
                SPSite _site = SPControl.GetContextSite(this.Context);
                using (SPWeb _web = _site.OpenWeb(new Guid(selectedWebId)))
                {
                    List <ListItem>  str             = new List <ListItem>();
                    SPListCollection _listCollection = _web.Lists;
                    foreach (SPList list in _listCollection)
                    {
                        if (!list.Hidden)
                        {
                            str.Add(new ListItem(list.Title, list.ID.ToString()));
                        }
                    }
                    if (str.Count > 0)
                    {
                        str.Sort(delegate(ListItem item1, ListItem item2)
                        {
                            return(item1.Text.CompareTo(item2.Text));
                        });

                        listTargetList.Items.AddRange(str.ToArray());

                        ListItem bitem = null;
                        if (!string.IsNullOrEmpty(TargetListId))
                        {
                            bitem = listTargetList.Items.FindByValue(TargetListId);
                        }
                        if (bitem != null)
                        {
                            listTargetList.SelectedIndex = listTargetList.Items.IndexOf(bitem);
                        }
                        else
                        {
                            listTargetList.SelectedIndex = 0;
                        }

                        if (setTargetColumn)
                        {
                            SetTargetColumn(selectedWebId, listTargetList.SelectedItem.Value);
                        }

                        SetTargetListView(selectedWebId, listTargetList.SelectedItem.Value);
                    }
                }
            }
        }
        /// <summary>
        /// Scans for custom organizer rules.
        /// </summary>
        /// <param name="spListCollection">The sp list collection.</param>
        /// <returns>SPListCollection of custom organizer rules.</returns>
        private SPListItemCollection ScanForCustomOrganizerRules(SPListCollection spListCollection)
        {
            foreach (SPList spList in spListCollection)
            {
                if ((!(spList is SPDocumentLibrary) && !(spList is SPPictureLibrary)) &&
                    spList.Title.Contains(ContentOrganizerRulesTitle))
                {
                    return(spList.Items);
                }
            }

            return(null);
        }
        private SPList ConfigureStyleDocumentLibrary(SPFeatureReceiverProperties properties)
        {
            SPSite site    = properties.Feature.Parent as SPSite;
            SPWeb  rootWeb = site.RootWeb;

            SPList list = null;

            try
            {
                SPListCollection lists = rootWeb.Lists;

                bool updateRequired = false;
                bool newListCreated = false;

                list = AddList(lists, "Style Library", "Style Library", "$Resources:cmscore,ListDescriptionRootStyles;", new Guid("00BFEA71-E717-4E80-AA17-D0C71B360101"), null, SPListTemplateType.DocumentLibrary, out newListCreated);
                //list = lists["Style Library"];

                if (list != null)
                {
                    EnableFolderCreationOnList(list, ref updateRequired);
                    if (list.AllowDeletion)
                    {
                        list.AllowDeletion = false;
                        updateRequired     = true;
                    }
                    if (updateRequired)
                    {
                        list.Update();
                    }
                    //EnableStandardVersioningOnList(list, ref updateRequired);
                    EnableAllowEveryoneViewItems(list);
                    DisableCrawlOnList(list);

                    list.Update();
                    SPView defaultView = list.DefaultView;
                    if (defaultView != null)
                    {
                        SPViewFieldCollection viewFields = defaultView.ViewFields;
                        AddFieldToView(list, SPBuiltInFieldId.CheckoutUser, viewFields);
                        defaultView.Update();
                    }

                    //AddFolder(list.RootFolder, "XSL Style Sheets");
                }
            }
            catch (Exception ex)
            {
                SPDiagnosticsService.Local.WriteTrace(0, new SPDiagnosticsCategory(ex.Source, TraceSeverity.High, EventSeverity.Error), TraceSeverity.High, ex.Message, ex.Data);
            }
            return(list);
        }
Exemple #27
0
        internal static PRList[] CreateLists
            (SPListCollection listsCollection, Dictionary <Guid, PRList> listsDictionary, Action <ProgressChangedEventArgs> progress, Func <string, bool, bool> selected)
        {
            List <PRList> _lists = new List <PRList>();
            int           _count = 0;

            foreach (SPList _lix in listsCollection)
            {
                progress(new ProgressChangedEventArgs(_count * 100 / listsCollection.Count, _lix.Title));
                _count++;
                _lists.Add(PRList.Create(_lix, listsDictionary, x => { }, selected));
            }
            return(_lists.ToArray <PRList>());
        }
Exemple #28
0
        public void InitializeWithField(Microsoft.SharePoint.SPField field)
        {
            parentField = field as AutoCompleteFieldType;

            if (parentField != null)
            {
                searchListGuid = parentField.SearchListGuid;
                searchListName = parentField.SearchListName;
                chkAllowMultipleDLF.Checked = parentField.AllowMultiple;
                searchDisplayName           = parentField.DisplayColumn;
                //searchKeyName = parentField.KeyColumn;

                string columnGuids = parentField.SearchColumnGuids;

                if (!string.IsNullOrEmpty(columnGuids))
                {
                    searchColumnGuids = columnGuids.Split(',').ToList();
                }
            }

            ddlSearchList.SelectedIndexChanged += ddlSearchList_SelectedIndexChanged;

            if (!Page.IsPostBack)
            {
                using (SPWeb web = SPContext.Current.Web)
                {
                    SPListCollection lists = web.Lists;

                    foreach (SPList list in lists)
                    {
                        if (list.BaseType != SPBaseType.GenericList)
                        {
                            continue;
                        }

                        ListItem item = new ListItem();
                        item.Text  = list.Title;
                        item.Value = list.ID.ToString();
                        if (!String.IsNullOrEmpty(searchListGuid) && item.Value == searchListGuid)
                        {
                            item.Selected = true;
                        }

                        ddlSearchList.Items.Add(item);
                    }

                    PopulateFieldList();
                }
            }
        }
Exemple #29
0
        /// <summary>
        /// Publish Reusable Workflow
        /// </summary>
        /// <param name="mapping"></param>
        public void PublishReusableWorkflow(NWFMappingEntry mapping)
        {
            SPContentType ct           = web.ContentTypes[mapping.BindingName];
            string        workflowName = mapping.WorkflowName;
            string        pathToNWF    = Path.Combine(properties.Definition.RootDirectory, mapping.WorkflowFileName);

            byte[] workflowData = File.ReadAllBytes(pathToNWF);
            string workflowFile = Utility.ConvertByteArrayToString(workflowData);


            while ((int)workflowFile[0] != (int)char.ConvertFromUtf32(60)[0])
            {
                workflowFile = workflowFile.Remove(0, 1);
            }


            ExportedWorkflowWithListMetdata workflowWithListMetdata = ExportedWorkflowWithListMetdata.Deserialize(workflowFile);
            string                    xmlMessage = workflowWithListMetdata.ExportedWorkflowSeralized;
            SPListCollection          lists      = web.Lists;
            Dictionary <string, Guid> dictionary = new Dictionary <string, Guid>(lists.Count);

            foreach (SPList spList in lists)
            {
                if (!dictionary.ContainsKey(spList.Title.ToUpper()))
                {
                    dictionary.Add(spList.Title.ToUpper(), spList.ID);
                }
            }
            foreach (var listReference in workflowWithListMetdata.ListReferences)
            {
                string key = listReference.ListName.ToUpper();
                if (dictionary.ContainsKey(key) && !dictionary.ContainsValue(listReference.ListId))
                {
                    xmlMessage = xmlMessage.Replace(Utility.FormatGuid(listReference.ListId), Utility.FormatGuid(dictionary[key]));
                }
            }
            var exportedWorkflow = WorkflowPart.Deserialize <ExportedWorkflow>(xmlMessage);

            foreach (var config in exportedWorkflow.Configurations.ActionConfigs)
            {
                WorkflowRenderer.ProcessActionConfig(config);
            }


            Guid    listId           = Guid.Empty;
            bool    validateWorkflow = true;
            Publish publish          = new Publish(web);

            publish.PublishAWorkflow(workflowName, exportedWorkflow.Configurations, listId, web, (ImportContext)null, validateWorkflow, ct.Id, string.Empty);
        }
Exemple #30
0
        private void SiteSelected(object sender, EventArgs e)
        {
            Web = (SPWeb)lbWebs.SelectedItem;

            lbDocLib.Items.Clear();

            // we only want lists that are document library because we want to export files
            SPListCollection doclibs = Web.GetListsOfType(SPBaseType.DocumentLibrary);

            foreach (SPList list in doclibs)
            {
                lbDocLib.Items.Add(list);
            }
        }
        private void FillData()
        {
            string reportingListIDs = string.Empty;
            Guid   siteId           = SPContext.Current.Site.ID;
            SPWeb  spweb            = null;
            var    rd         = new ReportData(siteId);
            var    daoEPMData = new EPMData(siteId);

            LoadLists(rd.GetListMappings());
            using (var spSite = new SPSite(siteId))
            {
                if (reportingV2Enabled)
                {
                    spweb = SPContext.Current.Web;
                }
                else
                {
                    spweb = spSite.OpenWeb();
                }
            }

            string defaultLists  = daoEPMData.DefaultLists(spweb);
            string _DefaultLists = CoreFunctions.getConfigSetting(spweb, "EPMLiveFixLists").Replace("\r\n", ",");

            var dtReportData = new DataTable();

            using (var spSite = new SPSite(siteId))
            {
                SPListCollection lists = spweb.Lists;
                foreach (SPList list in lists)
                {
                    if ((!list.Hidden && IsReportingList(list.Title)) || defaultLists.Contains(list.Title) ||
                        _DefaultLists.Contains(list.Title))
                    {
                        reportingListIDs += "'" + list.ID + "',";
                    }
                }

                if (!string.IsNullOrEmpty(reportingListIDs))
                {
                    reportingListIDs = reportingListIDs.Substring(0, reportingListIDs.Length - 1);
                }

                DataView mappings = rd.GetListMappings(reportingListIDs).DefaultView;
                GridView1.DataSource = mappings;
                GridView1.DataBind();
                rd.Dispose();
            }
        }
        /// <summary>
        /// Adds a list to the specified list collection.
        /// </summary>
        /// <param name="lists">The lists collection to add the list to.</param>
        /// <param name="urlName">Name of the list to use in the URL.</param>
        /// <param name="title">The title of the list.</param>
        /// <param name="description">The description.</param>
        /// <param name="featureId">The feature id that the list template is associated with.</param>
        /// <param name="templateType">Type of the template.</param>
        /// <param name="docTemplateType">Type of the doc template.</param>
        /// <returns></returns>
        public static SPList Add(
            SPListCollection lists,
            string urlName,
            string title,
            string description,
            Guid featureId,
            int templateType,
            string docTemplateType)
        {
            if (docTemplateType == "")
                docTemplateType = null;

            Guid guid = lists.Add(title, description, urlName, featureId.ToString("D"), templateType, docTemplateType);
            return lists[guid];
        }
 internal abstract void Unprovision(SPListCollection listCollection);
        //========================================================= CreationDesListDuWebPart() ===========================================================
        public void CreationDesListDuWebPart(SPListCollection lists)
        {
            champSPlist champ;
            //===============creation de la liste 1======================
            try
            {
                champ = new champSPlist(champ1);
                listSP = new SharePointList(list1, "", SPListTemplateType.GenericList); // creation de l'objet

                champ.addCollInfo("Antenne Judiciaire Antibes");
                champ.addCollInfo("Centre Technique Vallauris");
                champ.addCollInfo("Envibus (St-Bernard)");
                champ.addCollInfo("Gare routiere Antibes");
                champ.addCollInfo("Gare routiere Vallauris");
                champ.addCollInfo("Gare routiere Valbonne");
                champ.addCollInfo("Les Genets");
                champ.addCollInfo("Logements (Liberation)");
                champ.addCollInfo("Mediatheque Antibes");
                champ.addCollInfo("Mediatheque Semboules");
                champ.addCollInfo("Mediatheque Valbonne");
                champ.addCollInfo("Mediatheque Roquefort");
                champ.addCollInfo("Parenthese");
                champ.addCollInfo("Prevention Antibes");
                champ.addCollInfo("Prevention Vallauris");
                champ.addCollInfo("Prevention Valbonne");
                champ.addCollInfo("Prevention Haut Pays");
                champ.addCollInfo("Trait d union");
                champ.addCollInfo("indeterminée");

                listSP.addCollChamps(champ); // remplissage de la collection de champs a creer

                listSP.creerListInSharePoint(lists);
            }
            catch { }
            //===============creation de la liste 2======================
            try
            {
                champ = new champSPlist(champ2);
                listSP = new SharePointList(list2, "", SPListTemplateType.GenericList);
                champ.addCollInfo("Stagiaire");
                champ.addCollInfo("Contrat");
                champ.addCollInfo("Titulaire");
                champ.addCollInfo("indeterminée");
                listSP.addCollChamps(champ);
                listSP.creerListInSharePoint(lists);
            }
            catch { }
            //===============creation de la liste 3======================
            try
            {
                champ = new champSPlist(champ3);
                listSP = new SharePointList(list3, "", SPListTemplateType.GenericList);
                champ.addCollInfo("Lundi");
                champ.addCollInfo("Mardi");
                champ.addCollInfo("Mercredi");
                champ.addCollInfo("Jeudi");
                champ.addCollInfo("Vendredi");
                champ.addCollInfo("Samedi");
                champ.addCollInfo("Dimanche");
                listSP.addCollChamps(champ);
                listSP.creerListInSharePoint(lists);
            }
            catch { }
            //===============creation de la liste 4======================
            try
            {
                champ = new champSPlist(champ4);
                listSP = new SharePointList(list4, "", SPListTemplateType.GenericList);
                champ.addCollInfo("Fixes CASA uniquement");
                champ.addCollInfo("Fixes et portables CASA uniquement");
                champ.addCollInfo("Libre");
                listSP.addCollChamps(champ);
                listSP.creerListInSharePoint(lists);
            }
            catch { }
            //===============creation de la liste 5======================
            try
            {
                champ = new champSPlist(champ5);
                listSP = new SharePointList(list5, "", SPListTemplateType.GenericList);
                champ.addCollInfo("(aucun)");
                champ.addCollInfo("Poste fixe");
                champ.addCollInfo("Ordinateur Portable");
                champ.addCollInfo("Station Graphique");
                listSP.addCollChamps(champ);
                listSP.creerListInSharePoint(lists);
            }
            catch { }
            //===============creation de la liste 6======================
            try
            {
                listSP = new SharePointList("Demande Nouvel Arrivant", "", SPListTemplateType.GenericList);

                champ = new champSPlist("Nom bénéficiaire");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Prénom bénéficiaire");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Login");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Matricule");
                listSP.addCollChamps(champ);
                champ = new champSPlist(SPEncode.HtmlEncode("date d'entrée"));
                listSP.addCollChamps(champ);
                champ = new champSPlist("date de sortie");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Statut");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Service");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Fonction");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Lieu de travail");
                listSP.addCollChamps(champ);
                champ = new champSPlist("N° bureau");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Remplacement");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Agent Remplacé");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Téléphone fixe");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Téléphone portable");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Justification téléphone portable");
                listSP.addCollChamps(champ);
                champ = new champSPlist(SPEncode.HtmlEncode("Jour d'utilisation"));
                listSP.addCollChamps(champ);
                champ = new champSPlist(SPEncode.HtmlEncode("Portée d'utilisation"));
                listSP.addCollChamps(champ);
                champ = new champSPlist("Poste de travail");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Justification du poste de travail");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Accés Internet");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Accés Mail");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Accés à Post-Office");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Accés à Actes-Office");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Accés au logiciel Finance");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Accés à la saisie information DRH");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Besoins spécifiques");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Demandeur");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Fonction du demandeur");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Service du demandeur");
                listSP.addCollChamps(champ);
                champ = new champSPlist("Date_demande");
                listSP.addCollChamps(champ);

                listSP.creerListInSharePoint(lists);
            }
            catch { }
        }
        /// <summary>
        /// Checks through a collection of SharePoint lists to find broken links within the list content
        /// </summary>
        /// <param name="ListsToCheck">The collection of lists to check for broken links</param>
        /// <param name="BaseUri">The base url of the site collection that the lists are found in</param>
        public void CheckListLinks(SPListCollection ListsToCheck, Uri BaseUri)
        {
            foreach (SPList list in ListsToCheck)
            {

                SPListItemCollection items = list.Items;
                switch (list.BaseTemplate.ToString())
                {
                    case "850": // Pages library

                        foreach (SPListItem page in items)
                        {

                            Uri PageUri = new Uri(BaseUri, page.File.ServerRelativeUrl);

                            ScanListFields(page, PageUri);
                            ScanWebParts(page.File, PageUri);
                        }
                        break;

                    default:
                        foreach (SPListItem item in items)
                        {
                            Uri PageUri = new Uri(BaseUri, item.Url);
                            ScanListFields(item, PageUri);
                        }
                        break;
                }
            }
        }