Beispiel #1
0
        public static void UploadListItem()
        {
            using (SPSite spSite = new SPSite("http://leumtstspapp1/sites/staff/HR/"))
            {
                SPWeb      spWeb    = spSite.OpenWeb();
                SPList     spList   = spWeb.Lists["testWf"];
                SPListItem spItm    = spList.Items[0];
                string[]   arrApp   = new string[] { "*****@*****.**" };
                SPView     listView = spList.Views["MAT_ADOBE_SIGN_VIEW"];
                if (listView == null)
                {
                    throw new ApplicationException("The list does not contain the view by name  MAT_ADOBE_SIGN_VIEW");
                }

                SPViewFieldCollection viewfieldCollection = listView.ViewFields;
                StringBuilder         buff = new StringBuilder(16);
                buff.Append("Column Name : Column Value");
                foreach (string viewFieldName in viewfieldCollection)
                {
                    var val = spItm[viewFieldName];
                    buff.Append(string.Format("{0}:{1}", viewFieldName, val));
                    buff.Append(Environment.NewLine);
                    buff.Append(Environment.NewLine);
                }
                string miscInfo = "WEbUrl=" + spWeb.Url + "&listTitle=" + spList.Title + "&ItemId=" + spItm.ID;
                // now send it to signature
                AdobeOperations.SendDocumentByBytesForSigninig(Encoding.ASCII.GetBytes(buff.ToString()), null, spItm["ID"].ToString(), arrApp, null, miscInfo);
            }
        }
Beispiel #2
0
        private void CreateItemforForm()
        {
            FormWebPart wp = (FormWebPart)this.WebPart;

            List <BaseFieldControl> fields = new List <BaseFieldControl>();

            List <DesignDataSource> sources = new List <DesignDataSource>();

            if (!string.IsNullOrEmpty(wp.DataSourcesData))
            {
                sources = Utilities.DeserializeObject <List <DesignDataSource> >(wp.DataSourcesData);
            }

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                SPSite site = SPContext.Current.Site;

                site.AllowUnsafeUpdates = true;
                foreach (DesignDataSource source in sources)
                {
                    fields    = new List <BaseFieldControl>();
                    SPWeb web = site.OpenWeb(new Guid(source.WebId));
                    web.AllowUnsafeUpdates           = true;
                    SPList list                      = web.Lists[new Guid(source.ListId)];
                    SPView view                      = list.GetView(new Guid(source.ViewId));
                    SPViewFieldCollection viewfields = view.ViewFields;

                    foreach (var viewfield in viewfields)
                    {
                        BaseFieldControl formField = (BaseFieldControl)FindControl(viewfield.ToString());
                        if (formField == null)
                        {
                            continue;
                        }

                        fields.Add(formField);
                    }

                    SPListItem item = list.Items.Add();

                    foreach (BaseFieldControl Fld in fields)
                    {
                        try
                        {
                            item[Fld.FieldName] = Fld.Value;
                        }
                        catch { };
                    }
                    UpdateUserInfo(item);

                    item.Update();

                    web.AllowUnsafeUpdates = false;
                }
                site.AllowUnsafeUpdates = false;
            });
        }
Beispiel #3
0
        protected override void Render(HtmlTextWriter writer)
        {
            base.Render(writer);

            try
            {
                if (this.ListToDisplay != null)
                {
                    SPList selectedList = SPContext.Current.Web.Lists[new Guid(this._listToDisplay)];
                    SPView defaultView  = selectedList.DefaultView;
                    if (this.IsExternalList)
                    {
                        SPViewFieldCollection fields = defaultView.ViewFields;
                        System.Collections.Specialized.StringCollection stringCol = fields.ToStringCollection();
                        // Nik20121105 - Write the table headers;
                        System.Text.StringBuilder sb = new System.Text.StringBuilder();
                        sb.AppendLine("<table class=\"wet-boew-zebra\">");
                        sb.Append("<tr>");
                        foreach (string field in stringCol)
                        {
                            sb.Append("<th>" + field + "</th>");
                        }
                        sb.Append("</tr>");

                        foreach (SPListItem item in selectedList.Items)
                        {
                            sb.AppendLine("<tr>");
                            bool firstCol = true;
                            foreach (string field in stringCol)
                            {
                                if (firstCol)
                                {
                                    firstCol = false;
                                    sb.AppendLine("<td><a href=\"" + SPContext.Current.Web.Url + "/_layouts/listform.aspx?PageType=4&ListId={" + this._listToDisplay + "}&ID=" + item["BdcIdentity"].ToString() + "\">" + item[field].ToString() + "</a></td>");
                                }
                                else
                                {
                                    sb.AppendLine("<td>" + item[field].ToString() + "</td>");
                                }
                            }
                            sb.AppendLine("</tr>");
                        }

                        sb.AppendLine("</table>");
                        writer.Write(sb.ToString());
                    }
                    else
                    {
                        writer.Write(defaultView.RenderAsHtml());
                    }
                }
            }
            catch (Exception ex)
            {
                writer.Write(ex.ToString());
            }
        }
        private void loadTemplate()
        {
            StringBuilder sb = new StringBuilder(Properties.Resources.TextFile1.Replace("\r\n", "\\r\\n").Replace("\"", "`").Replace("#nonworkingdays#", "65"));

            StringBuilder images = new StringBuilder();

            images.Append("HTMLPicture(`red.gif`) = `gBHJJGHA5MIQAEIcx0ACSFQfehzOr3TSbVBVJbTORvcxkMi5LhVXBSJb+fj8fCeUDRLJWeC/Xr0NJsaJMJTiRCEeyhUTTJZJdSORz0NxwayBPz4UakeRoNa3IxAdxxONTOT7d7vcpcLq2Hg1dSVSr0aDPbhvNbxYbBb5zN7zPR8fLlcj8ej0eRtNztWaxapqNDsNBoebMZT1aLQejOZjhQR+d6FQriPp6bRWKTwMZkeSNRzNMJbebHYzvW61ahoMz2TadbhgLjzOx4eKcTbgPJ2ezabLeOhweRfMTsVCme7cbbgOhxcB2ObcLZXbxyNr5czlahkMT1Uajbx1OLvLxgeJ0OrpUahejPZr3UqmauVeCKRTgNxrcByNz0T6feZHEeb4/Dyd6hHGQxBm8NY0GmMQwHmMozm4MownoSBJKwdxzEiRxvDiNpzEmR53l0XBvjgNp5keSBvvAexrmsb8PnqSRKRONhvLcfh5nmkx9noRhHNeLp1E+Tp5mWZJ2joOhzk2S5ujWM5bDkNRZDUMRPiKHR/y7LwATBMMxTHMkyzGEJ8gIAMwIYFkxIQhAAAOZZADoQRBDgOQADkOBBkUQQ4gMJgOAeCICAOOJFjoAYJhwKAKASAQshYGgBkUOIJikNwHCmAQYByLYfisSpBAMIoHBEHQViaMwPi0Lo2gsQgYiWIwSjQDoqBmOYlCAJAFESOQOAoGoPCSDIhjOBYvguAICjkhgHk6MA3h8OYRhaDAAgkCoADoOQIgEKIuC8BAxAyNgyhOBgNG4OACDIHYFjmKBGCyQYQEKSYLgaCRohySATCYA4KhAGBUHSEJxmSSIGkGcRMGAERSCUGwJCCNhcEAAAlmgAARBCNxQDGOBCgOAgokWcQsCgKBQEEQwDA2JQtBUOgkFCUpPh+Ac1h2gIA=`\\r\\n");
            images.Append("HTMLPicture(`green.gif`) = `gBHJJGHA5MIQAEIcxsAB6ZCPJy2NZ9ZKSFBhD53YyMN7EQxKWpoObFRJHWZlNjBQSAZSUKaAJZCQxFGJ/G5kVBvfD7fBFVJdNi4PhsYSDLChMZ5YyNMKlNRxXSCHaWJY6S5LJKJJbyfDzKqdLxNWpqKaBJj1fL2TbEUDleDmbzsb6sZ6wKCZLKvaCyNyUM5fTRhKCWKxSUJfLq8O5kXx8IiaKZeRZYKS3NxeUBkcDtcTzfD0ZziaOYMadYqhN64PzfdjgKSyNTJcDMKS1NpSTZaKydL6vZ6yL6hlC3PhUThdQi2RKaYaeMaoNhYWpwMq4PA5QQ+LagMRiTZkbLpbZiURoYjcY5cT5iJiqMa5ay8JqzNJ4V59LaRLLK2ZrYBBFqahcrWT44FWOw3luPosE4MA1lQOJDlwRg0FsPApFALztjIdJ5HUSxgk3EBNDaVY6iaTwtjeYZCnsfR7DOUrblkNYyFuO5IF8Sw5FaPI4EsNQ0kgMQhjoHR/yRJIASXJkmydJ8oSjKUpyWEJ8gIAMloYFkmoQhAAAOX5ADYQRBDQNQBjUNBBkUQQ0gyCoLAoCIJgYNJFjYBYHAUAQAAIA4CgkLQOkUNJMk2TpPiGMYjBYQYMk0ThPASJQfiSG4nkICpTFiFwvC4NYjhMEo2DUCwABoHowgSGQPg8B4pDOE41DYAYKCqKYgB4MosA0GAui2GwOAGYYIiCEIHh2KgYjEMwfBwAIIGkNAJiyGYajWF4NBIDYWgCAwLkSNgMCIIJxAIZQNAgL5kHoIZoDAKANAoFRWC4MIRBEY4hAYSoDBaABJiERBHBEEYGBAYBYGAKQNBEFZLBoQI4FCIIjCWNgFA6AQEFmcxRCAAAdoCA`\\r\\n");
            images.Append("HTMLPicture(`checkmark.gif`) = `gBHJJGHA5MIPAAMADmIwAcbpcqKYxAdDrdKUZI9Si9JRkVhkRizRzJarNZbTZjveLwSy2SK7Zi+KK0JChWqfYbVY50WJXQauSCDYhBNq+IiSWUSazJVzCV73fL4bLhba2agzXTKXbPcLXQC2Ja1Zq5OK3IiUY5VWbDWrteDtbTpWS8baQV7FV6UXZLVbKWysaZwcjqcyMXJ3Ki5I5oXpFYLSYaUWx8TC5QyIYpAYrcPCmZ5FVDCSJsWZTX7PYDodjpYbTVRgVxLSbIHqLWSEOa0Kj83iNY4+fD6fKsYo5Vi6VC4aalVbBVKxYqOcTnciMWKOUy1TiMXo/f/fAHh8Xj8nl83n9Hp9Xr9nt93v+HxEL5AgB8MNFnjhEKAAHMRACMQRBkGHgRgaHwgAWQhGAUEQQh+FYLEYQYKg8EwUA0ShBgAB4AhkA5GA+BBBiGCQGBKRgABqIIBCMC4bBSCBGBAGIXhgFgdAMFQCgSRgThaIoXAigoOgoTYjA4DYBh2G4JmSQQHAIDASCEaJBBmHoiGwQYMhoZJAgAHaAg==`\\r\\n");
            images.Append("HTMLPicture(`yellow.gif`) = `gBHJJGHA5MIQAEIcxbADzZqKcCPHDxYJvbJzA7yYp4erVTj4cC1eC+Mz5c7FezZUr0aKTdqyJrvXReeTJQL6dbMfDkXr3bqtdy2KrtV5FciZITqVJDd7FR7gRAadi4OTsWBScSQFruYKHcqiKjmTQufToZboUZEdSsLDuWpUdayMjlTAqdisITtWxZejWU7qU46ejXVTvXpody5McyMjxYBtu5FebMST0aCSeLCO7qUo1zkTYR1dapH7uWhTdivJk1QV9T7tWpZebOSLrVRBdq0Kz8eThfz8fOAHL+fLzdy4ME4aMgXOwLDsVZGdSmG+2H71bCldqxJbwXhmerTTj0aSZf7+frtWZT3JReTIQL3cS6dKjGLww/THEsTr8eZxpYShukIExyE6KKvi0f8FwYAEHQfCEIwlCcKQrC0LwxDMNQeEJ8gIAMHIYFkIIQhAAAOYRAC2QRBCyK4BiuLJBkUQQsA2DQShuFoLgmLBFi2AIKgcI4ZhSGoZAKEIAkULBMgQFAhC0HgWAUAAPkqQQNgcBAHh0H4tB6GIAAaAgMkIDRZgMHYOi0KojF2AQPESK4TgeAwICeF4tCUIYCAEA4MCuLYBigZwEisIgmCAKRrAYEABi2K4qAgBIChcGAcCKFYDgYCIKGyLILnYBQbCaKITCcegLDgJBaDKIQAisEhLDQBIZBKYQBASCwDDCBJQhWRJFAcHIjB4Ch4iUKBAAeao0HwDBAiIQQECiRZYDIeBAACAgCgcCwdC0FQ6EQUBSk2G4BxAHaAg`\\r\\n");

            sb = sb.Replace("#Images#", images.ToString());

            SPViewFieldCollection vfc     = view.ViewFields;
            StringBuilder         columns = new StringBuilder();

            foreach (string field in vfc)
            {
                SPField spfield = list.Fields.GetFieldByInternalName(field);
                switch (spfield.Type)
                {
                case SPFieldType.Number:
                case SPFieldType.Currency:
                case SPFieldType.DateTime:
                case SPFieldType.Counter:
                    columns.Append("Columns(`" + spfield.Title + "`).Alignment = 2\\r\\n");
                    break;

                case SPFieldType.Calculated:
                    if (spfield.Description == "Indicator")
                    {
                        columns.Append("Columns(`" + spfield.Title + "`).Alignment = 1\\r\\n");
                    }
                    else
                    {
                        columns.Append("Columns(`" + spfield.Title + "`).Alignment = 2\\r\\n");
                    }
                    break;

                default:
                    columns.Append("Columns(`" + spfield.Title + "`).Alignment = 0\\r\\n");
                    break;
                }
                if (spfield.InternalName == "StartDate")
                {
                    columns.Append("Columns(`" + spfield.Title + "`).Def(18) = 1\\r\\n");
                }
                if (spfield.InternalName == "DueDate")
                {
                    columns.Append("Columns(`" + spfield.Title + "`).Def(18) = 2\\r\\n");
                }
            }

            sb = sb.Replace("#Columns#", columns.ToString());

            strTemplate = sb.ToString();
        }
Beispiel #5
0
        protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
        {
            ActivityActivationReference.IsAllowed(this, __Context.Web);
            // Get the workflow context for the workflow activity.
            NWWorkflowContext ctx = NWWorkflowContext.GetContext(__Context, new Guid(__ListId), __ListItem.Id, WorkflowInstanceId, this);

            base.LogProgressStart(ctx);

            string approverNames = ctx.AddContextDataToString(this.Approvers);
            string qryUrl        = ctx.AddContextDataToString(this.UrlMiscInfo);

            string[] approvers = Akki.AdobeSign.Common.Utilities.GetUserEmails(approverNames, ctx.Web.Url).ToArray();

            try
            {
                SPList     spList         = this.__Context.Web.Lists[new Guid(this.__ListId)];
                SPListItem spItm          = spList.GetItemById(this.__ListItem.Id);
                var        agreeementName = string.Format(Constants.MsgListItemAgreementName, spItm.ID, spList.Title);
                SPView     listView       = spList.Views[Constants.AkkiItemViewTypeAdobe];
                if (listView == null)
                {
                    throw new ApplicationException(Constants.ErrNoViewFound);
                }

                SPViewFieldCollection viewfieldCollection = listView.ViewFields;
                StringBuilder         buff = new StringBuilder(16);
                buff.Append(Constants.HeaderTextInfo);
                foreach (string viewFieldName in viewfieldCollection)
                {
                    buff.Append(Environment.NewLine);
                    buff.Append(Environment.NewLine);
                    var val = spItm[viewFieldName];
                    buff.Append(string.Format("{0}:{1}", viewFieldName, val));
                    buff.Append(Environment.NewLine);
                    buff.Append(Environment.NewLine);
                }

                var agreementId = AdobeOperations.SendDocumentByBytesForSigninig(Encoding.ASCII.GetBytes(buff.ToString()), null, agreeementName, approvers, null, qryUrl).agreementId;
                this.OutAdobeAgreementID = agreementId;

                // if no problem
                try
                {
                    Utilities.SetDefaultColValues(spItm, agreementId, AgreementStatus.OUT_FOR_SIGNATURE);
                }
                catch { }
            }
            catch (Exception ex)
            {
                //log.Error("[Execute]", ex);
                throw;
            }

            base.LogProgressEnd(ctx, executionContext);
            return(ActivityExecutionStatus.Closed);
        }
Beispiel #6
0
 /// <summary>
 /// Ensure the field in the view
 /// </summary>
 /// <param name="fieldCollection">the collection of fields</param>
 /// <param name="fieldInternalName">the current field internal name</param>
 public void EnsureFieldInView(SPViewFieldCollection fieldCollection, string fieldInternalName)
 {
     if (!string.IsNullOrEmpty(fieldInternalName))
     {
         if (!fieldCollection.Exists(fieldInternalName))
         {
             fieldCollection.Add(fieldInternalName);
         }
     }
 }
        private List <string> GetVisibleColumns(SPViewFieldCollection sfc)
        {
            List <string> visFields = new List <string>();

            foreach (string field in sfc)
            {
                visFields.Add(field);
            }
            visFields.Add("Today's Date");
            return(visFields);
        }
        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);
        }
        private static SPList GetOASList(SPWeb web)
        {
            SPListTemplateType genericList = new SPListTemplateType();

            genericList = SPListTemplateType.GenericList;

            //Check if the list exist
            SPList oaslist = web.Lists.TryGetList(OAS_LIST);

            if (oaslist == null)
            {
                //Create a custom list
                web.AllowUnsafeUpdates = true;
                Guid listGuid = web.Lists.Add(OAS_LIST, "", genericList);
                oaslist        = web.Lists[listGuid];
                oaslist.Hidden = true;

                //Add columns
                SPFieldCollection collFields = oaslist.Fields;

                string  field1  = collFields.Add("FileId", SPFieldType.Text, false);
                SPField column1 = collFields.GetFieldByInternalName(field1);

                string  field4  = collFields.Add("JobId", SPFieldType.Text, false);
                SPField column4 = collFields.GetFieldByInternalName(field4);

                string  field2  = collFields.Add("Started", SPFieldType.DateTime, false);
                SPField column2 = collFields.GetFieldByInternalName(field2);

                string  field3  = collFields.Add("Finished", SPFieldType.DateTime, false);
                SPField column3 = collFields.GetFieldByInternalName(field3);

                string  field5  = collFields.Add("Type", SPFieldType.Integer, false);
                SPField column5 = collFields.GetFieldByInternalName(field5);

                SPView view = oaslist.DefaultView;

                SPViewFieldCollection collViewFields = view.ViewFields;

                collViewFields.Add(column1);
                collViewFields.Add(column2);
                collViewFields.Add(column3);
                collViewFields.Add(column4);
                collViewFields.Add(column5);

                view.Update();
            }

            return(oaslist);
        }
        internal static bool AddFieldToView(SPList list, Guid fieldId, SPViewFieldCollection viewfields)
        {
            bool flag = false;

            try
            {
                SPField field = list.Fields[fieldId];
                if ((field != null) && !viewfields.Exists(field.InternalName))
                {
                    viewfields.Add(field);
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                SPDiagnosticsService.Local.WriteTrace(0, new SPDiagnosticsCategory(ex.Source, TraceSeverity.High, EventSeverity.Error), TraceSeverity.High, ex.Message, ex.Data);
            }
            return(flag);
        }
Beispiel #11
0
        internal List <BaseFieldControl> FieldList(WebPart webpart)
        {
            FormWebPart wp = (FormWebPart)webpart;

            List <BaseFieldControl> fields = new List <BaseFieldControl>();

            List <DesignDataSource> sources = new List <DesignDataSource>();

            if (!string.IsNullOrEmpty(wp.DataSourcesData))
            {
                sources = Utilities.DeserializeObject <List <DesignDataSource> >(wp.DataSourcesData);
            }

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                SPSite site = SPContext.Current.Site;

                foreach (DesignDataSource source in sources)
                {
                    SPWeb web   = site.OpenWeb(new Guid(source.WebId));
                    SPList list = web.Lists[new Guid(source.ListId)];
                    SPView view = list.GetView(new Guid(source.ViewId));
                    SPViewFieldCollection viewfields = view.ViewFields;

                    foreach (var viewfield in viewfields)
                    {
                        BaseFieldControl formField = (BaseFieldControl)FindControl(viewfield.ToString());
                        //formField.ControlMode = Microsoft.SharePoint.WebControls.SPControlMode.Display;
                        if (formField == null)
                        {
                            continue;
                        }

                        fields.Add(formField);
                    }
                }
            });

            return(fields);
        }
        private void PopulateAndSync()
        {
            SPSite          site = SPContext.Current.Site;
            SPWeb           web  = site.RootWeb;
            SPWebCollection webs = site.AllWebs;
            SPList          list = null;
            //SPListCollection lists = null;
            List <SPList>    lists = new List <SPList>();
            SPView           view  = null;
            SPViewCollection views = null;
            //SPFieldCollection fields = null;
            SPViewFieldCollection viewfields = null;

            if (!string.IsNullOrEmpty(source.Title))
            {
                tbx_name.Text = source.Title;
            }
            #region Webs

            ddl_webs.DataSource     = webs;
            ddl_webs.DataTextField  = "Title";
            ddl_webs.DataValueField = "ID";

            if (!string.IsNullOrEmpty(source.WebId))
            {
                try
                {
                    Guid WebId = new Guid(source.WebId);
                    web = site.OpenWeb(WebId);
                    ddl_webs.SelectedValue = web.ID.ToString();
                }
                catch (Exception)
                {
                    web = site.RootWeb;
                }
            }

            //lists = web.Lists;

            foreach (SPList _list in web.Lists)
            {
                if (!_list.Hidden)
                {
                    if (_list.BaseType == SPBaseType.DocumentLibrary)
                    {
                        if (!((SPDocumentLibrary)_list).IsCatalog)
                        {
                            lists.Add(_list);
                        }
                    }
                    else
                    {
                        lists.Add(_list);
                    }
                }
            }

            ddl_webs.DataBind();

            #endregion

            #region Lists

            ddl_lists.DataSource     = lists;
            ddl_lists.DataTextField  = "Title";
            ddl_lists.DataValueField = "ID";

            if (!string.IsNullOrEmpty(source.ListId))
            {
                try
                {
                    Guid ListId = new Guid(source.ListId);
                    list  = web.Lists.GetList(ListId, true);
                    views = list.Views;
                    ddl_lists.SelectedValue = list.ID.ToString();
                }
                catch (Exception)
                {
                    list = lists[0];
                    ddl_lists.SelectedValue = list.ID.ToString();
                    views = lists[0].Views;
                }
            }

            if (list == null)
            {
                list = lists[0];
            }
            if (views == null)
            {
                views = list.Views;
            }
            ddl_lists.DataBind();
            ddl_lists.SelectedValue = list.ID.ToString();

            #endregion

            #region Views

            ddl_views.DataSource     = views;
            ddl_views.DataTextField  = "Title";
            ddl_views.DataValueField = "ID";

            if (!string.IsNullOrEmpty(source.ViewId) && list != null)
            {
                try
                {
                    Guid ViewId = new Guid(source.ViewId);
                    view       = list.Views[ViewId];
                    viewfields = view.ViewFields;
                    ddl_views.SelectedValue = view.ID.ToString();
                }
                catch (Exception)
                {
                    view = list.Views[0];
                }
            }

            if (view == null)
            {
                view = list.Views[0];
            }

            if (viewfields == null)
            {
                viewfields = view.ViewFields;
            }

            ddl_views.DataBind();
            ddl_views.SelectedValue = view.ID.ToString();

            #endregion

            #region Fields

            cbl_fields.DataSource = viewfields;

            if (!string.IsNullOrEmpty(source.ViewFields) && view != null)
            {
                string[] _fields = source.ViewFields.Split(new char[1] {
                    ';'
                });
            }

            cbl_fields.DataBind();

            #endregion

            #region CAML

            if (!string.IsNullOrEmpty(source.Query) && view != null)
            {
                tbx_caml.Text = view.Query;
            }
            else
            {
                if (view != null)
                {
                    tbx_caml.Text = view.Query;
                }
            }

            #endregion
        }
 private List<string> GetVisibleColumns(SPViewFieldCollection sfc)
 {
     List<string> visFields = new List<string>();
     foreach (string field in sfc)
     {
         visFields.Add(field);
     }
     visFields.Add("Today's Date");
     return visFields;
 }
Beispiel #14
0
        private void GetListItems(out string xml)
        {
            xml = string.Empty;
            SPSite                  site    = SPContext.Current.Site;
            XmlDocument             doc     = new XmlDocument();
            List <DesignDataSource> sources = new List <DesignDataSource>();

            if (!string.IsNullOrEmpty(DataSourcesData))
            {
                sources = Utilities.DeserializeObject <List <DesignDataSource> >(DataSourcesData);
            }

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                //bool first = true;

                foreach (DesignDataSource source in sources)
                {
                    SPWeb web   = site.OpenWeb(new Guid(source.WebId));
                    SPList list = web.Lists[new Guid(source.ListId)];
                    SPView view = list.GetView(new Guid(source.ViewId));
                    //view.RowLimit = 0;
                    //SPQuery query = new SPQuery(view);
                    //query.ViewFieldsOnly = true;

                    //string sxml = list.GetItems(query).Xml;
                    SPViewFieldCollection viewfields = view.ViewFields;
                    List <string> used = new List <string>();

                    foreach (var viewfield in viewfields)
                    {
                        used.Add(viewfield.ToString());
                    }

                    string dataschema = list.SchemaXml;

                    //Cleanup document
                    doc.LoadXml(dataschema);
                    XmlNode listnode     = doc.SelectSingleNode("//List", NameSpaceManager(doc.NameTable));
                    XmlNode targetfields = listnode.SelectSingleNode("//Fields", NameSpaceManager(doc.NameTable));
                    targetfields.RemoveAll();
                    XmlNode RegionalSettings = doc.SelectSingleNode("//RegionalSettings", NameSpaceManager(doc.NameTable));
                    listnode.RemoveChild(RegionalSettings);
                    XmlNode ServerSettings = doc.SelectSingleNode("//ServerSettings", NameSpaceManager(doc.NameTable));
                    listnode.RemoveChild(ServerSettings);

                    //Get All Node again
                    XmlDocument schemadoc = new XmlDocument();
                    schemadoc.LoadXml(dataschema);

                    listnode               = schemadoc.SelectSingleNode("//List", NameSpaceManager(schemadoc.NameTable));
                    XmlNode fields         = listnode.SelectSingleNode("//Fields", NameSpaceManager(schemadoc.NameTable));
                    XmlNodeList fieldnodes = fields.SelectNodes("//Field", NameSpaceManager(schemadoc.NameTable));

                    foreach (XmlNode field in fieldnodes)
                    {
                        XmlNode namenode        = field.Attributes["Name"];
                        XmlNode displaynamenode = field.Attributes["DisplayName"];
                        XmlNode staticnamenode  = field.Attributes["StaticName"];
                        XmlNode hiddennode      = field.Attributes["Hidden"];

                        string name = string.Empty;
                        if (namenode != null)
                        {
                            name = namenode.Value;
                        }

                        string staticname = string.Empty;
                        if (staticnamenode != null)
                        {
                            staticname = staticnamenode.Value;
                        }

                        string displayname = string.Empty;
                        if (displaynamenode != null)
                        {
                            displayname = displaynamenode.Value;
                        }

                        bool hidden = false;
                        if (hiddennode != null)
                        {
                            hidden = Boolean.Parse(hiddennode.Value);
                        }

                        if (used.Contains(name) || used.Contains(displayname) || used.Contains(staticname))
                        {
                            try
                            {
                                if (field.ParentNode == fields)
                                {
                                    XmlNode importNode = doc.ImportNode(field, true);
                                    targetfields.AppendChild(importNode);

                                    if (importNode.ParentNode == targetfields)
                                    {
                                        if (hiddennode == null)
                                        {
                                            XmlAttribute hiddenAttribute = importNode.OwnerDocument.CreateAttribute("Hidden");
                                            hiddenAttribute.Value        = Boolean.FalseString;
                                            importNode.Attributes.Append(hiddenAttribute);
                                        }

                                        XmlNode requirednode = importNode.Attributes["Required"];

                                        if (requirednode == null && importNode.ParentNode == targetfields)
                                        {
                                            XmlAttribute requiredAttribute = importNode.OwnerDocument.CreateAttribute("Required");
                                            requiredAttribute.Value        = Boolean.FalseString;
                                            importNode.Attributes.Append(requiredAttribute);
                                        }

                                        XmlNode groupnode = importNode.Attributes["Group"];

                                        if (groupnode == null && importNode.ParentNode == targetfields)
                                        {
                                            XmlAttribute groupAttribute = importNode.OwnerDocument.CreateAttribute("Group");
                                            groupAttribute.Value        = string.Empty;
                                            importNode.Attributes.Append(groupAttribute);
                                        }
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                ex.ToString();
                            }
                        }
                    }
                }
            });
            xml = doc.InnerXml;
        }
Beispiel #15
0
        private void SetListFormFields(Control canvas)
        {
            List <DesignDataSource> sources = new List <DesignDataSource>();

            if (!string.IsNullOrEmpty(DataSourcesData))
            {
                sources = Utilities.DeserializeObject <List <DesignDataSource> >(DataSourcesData);
            }

            if (inEditMode)
            {
            }
            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                SPSite site = SPContext.Current.Site;

                foreach (DesignDataSource source in sources)
                {
                    SPWeb web   = site.OpenWeb(new Guid(source.WebId));
                    SPList list = web.Lists[new Guid(source.ListId)];
                    SPView view = list.GetView(new Guid(source.ViewId));
                    SPViewFieldCollection viewfields = view.ViewFields;

                    foreach (var viewfield in viewfields)
                    {
                        if (list.Fields.ContainsField(viewfield.ToString()))
                        {
                            try
                            {
                                string fieldname = viewfield.ToString().Replace("_x0020_", " ");
                                SPField field    = list.Fields.GetField(fieldname);
                                FormField fld    = new FormField();

                                if (inEditMode && Page.IsPostBack)
                                //if (DesignMode)// && Page.IsPostBack)
                                {
                                    fld.ControlMode = SPControlMode.Display;
                                }
                                else
                                {
                                    fld.ControlMode = SPControlMode.New;
                                }

                                //fld.ControlMode = SPControlMode.New;

                                fld.ListId    = list.ID;
                                fld.FieldName = field.InternalName;
                                fld.ID        = field.InternalName;
                                fld.DisableInputFieldLabel = true;

                                fld.InDesign = inEditMode;
                                fld.IsValid  = inEditMode;

                                try
                                {
                                    if (!string.IsNullOrEmpty(field.DefaultValue))
                                    {
                                        if (field.FieldValueType == typeof(Boolean))
                                        {
                                            bool isbool         = false;
                                            fld.Value           = (Boolean.TryParse(field.DefaultValue, out isbool));
                                            fld.InputFieldLabel = string.Empty;
                                        }
                                        else
                                        {
                                            fld.Value = field.DefaultValue;
                                        }
                                    }
                                }
                                catch (Exception)
                                {
                                }

                                canvas.Controls.Add(fld);

                                if (field.Required)
                                {
                                    InputFormRequiredFieldValidator required = new InputFormRequiredFieldValidator();
                                    required.ID = "required_" + fld.ClientID;
                                    required.ControlToValidate = fld.ClientID;
                                    required.ValidationGroup   = fld.ClientID;
                                    required.ErrorMessage      = field.ValidationMessage;
                                    //required.EnableClientScript = true;
                                    required.BreakAfter  = true;
                                    required.BreakBefore = false;
                                    required.Display     = System.Web.UI.WebControls.ValidatorDisplay.Dynamic;
                                    canvas.Controls.Add(required);
                                }

                                if (field.Type == SPFieldType.Number)
                                {
                                    SPFieldNumber Number = (SPFieldNumber)field;
                                    if (Number.MinimumValue != Double.MinValue && Number.MaximumValue != Double.MaxValue)
                                    {
                                        InputFormRangeValidator range = new InputFormRangeValidator();
                                        range.ID = "range_" + fld.ClientID;
                                        range.ControlToValidate = fld.ClientID;
                                        range.ValidationGroup   = fld.ClientID;
                                        range.ErrorMessage      = field.ValidationMessage;
                                        //range.EnableClientScript = true;
                                        range.BreakAfter   = true;
                                        range.BreakBefore  = false;
                                        range.Display      = System.Web.UI.WebControls.ValidatorDisplay.Dynamic;
                                        range.MaximumValue = Number.MaximumValue.ToString();
                                        range.MinimumValue = Number.MinimumValue.ToString();
                                        range.Type         = System.Web.UI.WebControls.ValidationDataType.Double;
                                        canvas.Controls.Add(range);
                                    }
                                }

                                if (field.Type == SPFieldType.Currency)
                                {
                                    SPFieldCurrency Currency = (SPFieldCurrency)field;
                                    if (Currency.MaximumValue != Double.MaxValue && Currency.MinimumValue != Double.MinValue)
                                    {
                                        InputFormRangeValidator range = new InputFormRangeValidator();
                                        range.ID = "range_" + fld.ClientID;
                                        range.ControlToValidate = fld.ClientID;
                                        range.ValidationGroup   = fld.ClientID;
                                        range.ErrorMessage      = field.ValidationMessage;
                                        //range.EnableClientScript = true;
                                        range.BreakAfter   = true;
                                        range.BreakBefore  = false;
                                        range.Display      = System.Web.UI.WebControls.ValidatorDisplay.Dynamic;
                                        range.MaximumValue = Currency.MaximumValue.ToString();
                                        range.MinimumValue = Currency.MinimumValue.ToString();
                                        range.Type         = System.Web.UI.WebControls.ValidationDataType.Currency;
                                        canvas.Controls.Add(range);
                                    }
                                }

                                if (!string.IsNullOrEmpty(field.ValidationFormula))
                                {
                                    InputFormRegularExpressionValidator regex = new InputFormRegularExpressionValidator();
                                    regex.ControlToValidate = fld.ClientID;
                                    regex.ValidationGroup   = fld.ClientID;
                                    regex.ErrorMessage      = fld.ErrorMessage;
                                    regex.ErrorMessage      = field.ValidationMessage;
                                    //regex.EnableClientScript = true;
                                    regex.BreakAfter           = true;
                                    regex.BreakBefore          = false;
                                    regex.Display              = System.Web.UI.WebControls.ValidatorDisplay.Dynamic;
                                    regex.ValidationExpression = field.ValidationFormula;
                                    canvas.Controls.Add(regex);
                                }

                                /*
                                 * if (field.Type == SPFieldType.MultiChoice)
                                 * {
                                 *  InputFormCheckBoxListValidator checkboxes = new InputFormCheckBoxListValidator();
                                 *  //SPFieldMultiChoice choice = (SPFieldMultiChoice)field;
                                 *  checkboxes.ControlToValidate = fld.ClientID;
                                 *  checkboxes.ValidationGroup = fld.ClientID;
                                 *  checkboxes.ErrorMessage = fld.ErrorMessage;
                                 *  checkboxes.EnableClientScript = true;
                                 *  //checkboxes.BreakAfter = true;
                                 *  checkboxes.Display = System.Web.UI.WebControls.ValidatorDisplay.Dynamic;
                                 *  canvas.Controls.Add(checkboxes);
                                 *
                                 * }
                                 */
                            }
                            catch (Exception ex)
                            {
                                ex.Message.ToString();
                            }
                        }
                    }
                }
            });
        }
Beispiel #16
0
        protected new void BtnSaveAdvancedSettings_Click(object sender, EventArgs e)
        {
            bool flag = false;

            if (base.List.AllowContentTypes)
            {
                base.List.ContentTypesEnabled = RadEnableContentTypesYes.Checked;
            }
            if (ItemLevelSecurityPanel.Visible)
            {
                int num = 1;
                if (RadReadSecurityOwn.Checked)
                {
                    num = 2;
                }
                if (num == 2 && CheckIfListHasUniqueFields(base.List))
                {
                    throw new SPException(base.GetResourceString("advsetng_CannotSetItemLevelPermissionsOnListWithUniqueColumns"));
                }
                int writeSecurity = 1;
                if (RadWriteSecurityOwn.Checked)
                {
                    writeSecurity = 2;
                }
                else if (RadWriteSecurityNone.Checked)
                {
                    writeSecurity = 4;
                }
                base.List.ReadSecurity  = num;
                base.List.WriteSecurity = writeSecurity;
            }
            //SendToSection.UseFieldset = true;
            if (SendToSection.Visible)
            {
                base.List.SendToLocationName = TxtSendToLocationName.Text;
                base.List.SendToLocationUrl  = TxtSendToLocationUrl.Text;
            }
            if (TasksIssuesEmailSettingsSection.Visible)
            {
                base.List.EnableAssignToEmail = RadEnableAssigntoEmailYes.Checked;
            }
            if (RadDefaultItemOpenPreferClient.Checked)
            {
                base.List.DefaultItemOpen = DefaultItemOpen.PreferClient;
            }
            else if (RadDefaultItemOpenBrowser.Checked)
            {
                base.List.DefaultItemOpen = DefaultItemOpen.Browser;
            }
            else if (RadDefaultItemOpenServerSetting.Checked)
            {
                base.List.DefaultItemOpen = DefaultItemOpen.PreferClient;
                base.List.DefaultItemOpenUseListSetting = false;
            }
            if (FolderCreationSection.Visible)
            {
                base.List.EnableFolderCreation = RadEnableFoldersYes.Checked;
            }
            if (AllowCrawlSection.Visible)
            {
                base.List.NoCrawl = !RadAllowCrawlYes.Checked;
            }
            if (SPUtility.IsCompatibilityLevel15Up && AllowNonDefaultCrawlViewSection.Visible)
            {
                base.List.CrawlNonDefaultViews = RadAllowNonDefaultCrawlViewYes.Checked;
            }
            //if (AllowSyncSection.Visible && !base.Web.SiteSubscriptionSettingsCache.ExcludeOfflineClient && RadAllowSyncYes.Enabled)
            //{
            //    base.List.ExcludeFromOfflineClient = !RadAllowSyncYes.Checked;
            //}
            if (AllowGridEditingSection.Visible)
            {
                base.List.DisableGridEditing = !RadAllowGridYes.Checked;
            }
            if (DocumentTemplateSection.Visible)
            {
                SPDocumentLibrary sPDocumentLibrary = (SPDocumentLibrary)base.List;
                sPDocumentLibrary.DocumentTemplateUrl = TxtListDocumentTemplate.Text;
            }
            if (PanelAttachments.Visible)
            {
                bool enableAttachments = base.List.EnableAttachments;
                base.List.EnableAttachments = RadAttachmentsEnabled.Checked;
                if (!enableAttachments && RadAttachmentsEnabled.Checked)
                {
                    flag = ChkAttachmentsAddToDefaultView.Checked;
                }
            }
            if (PanelGlobalMettingsDataList.Visible)
            {
                base.List.MultipleDataList = !RadGlobalMtgDataListYes.Checked;
            }
            if (AttachmentLibrarySection.Visible)
            {
                base.List.IsSiteAssetsLibrary = RadAttachmentLibraryYes.Checked;
            }
            if (DialogForFormsPagesSection.Visible)
            {
                base.List.NavigateForFormsPages = RadDialogForFormsPagesNo.Checked;
            }
            if (SPUtility.IsCompatibilityLevel15Up && ManagedIndexesSection.Visible)
            {
                base.List.EnableManagedIndexes = RadManagedIndexesYes.Checked;
            }
            if (EventHandlerSection.Visible && base.Web.EventHandlersEnabled)
            {
                base.List.EventSinkAssembly = TxtEventHandlerAssemblyName.Text.Trim();
                base.List.EventSinkClass    = TxtEventHandlerClassName.Text.Trim();
                base.List.EventSinkData     = TxtEventHandlerProperties.Text.Trim();
            }
            base.List.Update();
            if (flag)
            {
                SPView defaultView = base.List.DefaultView;
                SPViewFieldCollection viewFields = defaultView.ViewFields;
                if (!viewFields.Exists("Attachments"))
                {
                    viewFields.Add("Attachments");
                    defaultView.Update();
                }
            }

            SPUtility.Redirect(base.List.DefaultViewUrl, SPRedirectFlags.UseSource | SPRedirectFlags.Trusted, HttpContext.Current);
        }
Beispiel #17
0
        public string Write(Guid listGuid)
        {
            string csv = string.Empty;

            UseWeb(spWeb => {
                SPList list = spWeb.Lists.GetList(listGuid, true);

                SPView view = list.DefaultView;

                SPViewFieldCollection fields = view.ViewFields;


                SPField geomField = list.GetGeoField();

                //create header
                for (int i = 0; i < view.ViewFields.Count; i++)
                {
                    string field = view.ViewFields[i];
                    if (geomField.InternalName != field)
                    {
                        csv += view.ViewFields[i];
                    }
                    else
                    {
                        csv += "Longitude, Latitude";
                    }

                    if ((i + 1) < view.ViewFields.Count)
                    {
                        csv += ",";
                    }
                    else
                    {
                        csv += "\r\n";
                    }
                }

                //create CSV rows
                foreach (SPListItem listItem in list.Items)
                {
                    for (int i = 0; i < view.ViewFields.Count; i++)
                    {
                        string field = view.ViewFields[i];
                        if (geomField.InternalName != field)
                        {
                            csv += listItem[view.ViewFields[i]].ToString();
                        }
                        else
                        {
                            OpenSMIL.Server.SimpleFeature.GeomtryTypes.Point point = GetPoint(listItem[field] as string);
                            csv += point.Lon + ",";
                            csv += point.Lat;
                        }

                        if ((i + 1) < view.ViewFields.Count)
                        {
                            csv += ",";
                        }
                        else
                        {
                            csv += "\r\n";
                        }
                    }
                }
            });
            return(csv);
        }
Beispiel #18
0
        protected override void Render(HtmlTextWriter writer)
        {
            base.Render(writer);
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            string CAMLQuery             = null;


            try
            {
                if (this._listId != null && this._viewName != null)
                {
                    using (SPSite site = new SPSite(SPContext.Current.Site.Url))
                    {
                        using (SPWeb web = site.OpenWeb(this.ListWebId))
                        {
                            SPList selectedList        = web.Lists[this._listId];
                            SPListItemCollection items = selectedList.Items;
                            SPView defaultView         = selectedList.Views[this._viewName];
                            uint   itemsPerPage        = defaultView.RowLimit;

                            SPViewFieldCollection fields = defaultView.ViewFields;
                            System.Collections.Specialized.StringCollection stringCol = fields.ToStringCollection();

                            if (Page.Request.QueryString != null && Page.Request.QueryString.Count > 0)
                            {
                                FilterEngine filterEngine = new FilterEngine(Page.Request.QueryString, selectedList);
                                CAMLQuery = filterEngine.CAMLQuery;
                            }

                            // Nik20121105 - Write the table headers;
                            sb.AppendLine("<table class=\"wet-boew-zebra\">");
                            sb.Append("<tr>");
                            foreach (string field in stringCol)
                            {
                                sb.Append("<th>" + selectedList.Fields.GetFieldByInternalName(field).Title + "</th>");
                            }
                            sb.Append("</tr>");

                            if (CAMLQuery == null)
                            {
                                CAMLQuery = "";
                            }

                            SPQuery query = new SPQuery();
                            query.Query    = CAMLQuery;
                            query.RowLimit = itemsPerPage;
                            items          = selectedList.GetItems(query);

                            if (Page.Request.QueryString["p_ID"] != null)
                            {
                                string prev = "";
                                if (Page.Request.QueryString["PagedPrev"] == "TRUE")
                                {
                                    prev = "&PagedPrev=TRUE";
                                }
                                SPListItemCollectionPosition position = new SPListItemCollectionPosition("Paged=TRUE&p_ID=" + Page.Request.QueryString["p_ID"] + prev);
                                query.ListItemCollectionPosition = position;
                            }

                            string lastId = "";
                            foreach (SPListItem item in items)
                            {
                                sb.AppendLine("<tr>");
                                bool firstCol = true;
                                foreach (string field in stringCol)
                                {
                                    if (firstCol)
                                    {
                                        firstCol = false;

                                        string  itemUrl = string.Empty;
                                        SPField test    = item.Fields.TryGetFieldByStaticName("BdcIdentity");

                                        if (test != null)
                                        {
                                            itemUrl = HttpUtility.UrlEncode(this._listWeb + "/_layouts/listform.aspx?PageType=4&ListId={" + this._listId.ToString() + "}&ID=" + item["BdcIdentity"].ToString());
                                        }
                                        else
                                        {
                                            itemUrl = HttpUtility.UrlEncode(this._listWeb + "/_layouts/listform.aspx?PageType=4&ListId={" + this._listId.ToString() + "}&ID=" + item.ID.ToString());
                                        }

                                        string renderedField = string.Empty;
                                        if (item[field] != null)
                                        {
                                            renderedField = item[field].ToString();
                                        }

                                        sb.AppendLine("<td><a href=\"" + this.ItemViewerUrl + "?ItemUrl=" + itemUrl + "\">" + renderedField.Replace("string;#", "").Replace("datetime;#", "").Replace("number;#", "") + "</a></td>");
                                    }
                                    else
                                    {
                                        string renderedField = string.Empty;
                                        if (item[field] != null)
                                        {
                                            renderedField = FieldRenderer.RenderField(item[field].ToString(), item.Fields.GetFieldByInternalName(field));
                                        }
                                        sb.AppendLine("<td>" + renderedField + "</td>");
                                    }
                                }
                                sb.AppendLine("</tr>");
                                lastId = item.ID.ToString();
                            }

                            sb.AppendLine("</table>");

                            string curUrl     = Page.Request.Url.OriginalString;
                            string forwardUrl = curUrl.Replace("p_ID=" + Page.Request.QueryString["p_ID"], "p_ID=" + lastId).Replace("&PagedPrev=TRUE", "");
                            string prevUrl    = curUrl.Replace("p_ID=" + Page.Request.QueryString["p_ID"], "p_ID=" + items[0].ID.ToString());

                            if (forwardUrl.IndexOf("p_ID") < 0)
                            {
                                if (!forwardUrl.Contains("?"))
                                {
                                    forwardUrl += "?p_ID=" + lastId;
                                }
                                else
                                {
                                    forwardUrl += "&p_ID=" + lastId;
                                }
                            }

                            if (prevUrl.IndexOf("p_ID") < 0)
                            {
                                if (!prevUrl.Contains("?"))
                                {
                                    prevUrl += "?p_ID=" + items[0].ID.ToString();
                                }
                                else
                                {
                                    prevUrl += "&p_ID=" + items[0].ID.ToString();
                                }
                            }

                            if (!prevUrl.Contains("PagedPrev"))
                            {
                                prevUrl += "&PagedPrev=TRUE";
                            }

                            if (CAMLQuery != null)
                            {
                                SPQuery newQuery = new SPQuery();
                                newQuery.Query = CAMLQuery;
                                if (items[0].ID != selectedList.GetItems(newQuery)[0].ID)
                                {
                                    sb.AppendLine("<a href=\"" + prevUrl + "\">< Previous</a>&nbsp;&nbsp;");
                                }
                            }
                            else if (items[0].ID != selectedList.Items[0].ID)
                            {
                                sb.AppendLine("<a href=\"" + prevUrl + "\">< Previous</a>&nbsp;&nbsp;");
                            }

                            if ((int.Parse(lastId) + itemsPerPage) < selectedList.Items.Count)
                            {
                                sb.AppendLine("<a href=\"" + forwardUrl + "\">Next ></a>");
                            }
                            writer.Write(sb.ToString());
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogEngine.Log(ex, "Accessible Lists");
            }
        }
Beispiel #19
0
        public void BindDropDownLists(string objSelectedList)
        {
            ArrayList objColumnCollection       = new ArrayList();
            ArrayList objLookupColumnCollection = new ArrayList();

            try
            {
                using (SPSite objSPsite = new SPSite(SPContext.Current.Site.Url))
                {
                    using (SPWeb objWeb = objSPsite.OpenWeb())
                    {
                        objSelectedList = ddlListName.SelectedItem.Value;
                        SPList objList = objWeb.Lists[objSelectedList];

                        SPViewFieldCollection objSPViewFieldCollection = objList.DefaultView.ViewFields;

                        string strTest = objList.Views.SchemaXml;


                        SPFieldCollection objFieldCollection = objList.Fields;
                        DataTable         dt = objList.Items.GetDataTable();

                        foreach (SPField objField in objFieldCollection)
                        {
                            if (IsValidField(objField))
                            {
                                if (objField.Type == SPFieldType.Lookup)
                                {
                                    SPFieldLookup lookUpColumn = (SPFieldLookup)objField;
                                    if (!lookUpColumn.AllowMultipleValues)
                                    {
                                        objLookupColumnCollection.Add(objField);
                                    }
                                }
                                else
                                {
                                    objColumnCollection.Add(objField);
                                }
                            }
                        }
                    }
                }

                ddlDisplayName.DataSource = objColumnCollection;
                ddlDisplayName.DataBind();
                ddlParent.DataSource = objLookupColumnCollection;
                ddlParent.DataBind();

                if (!string.IsNullOrEmpty(_ParentLookup))
                {
                    ddlParent.SelectedIndex = ddlParent.Items.IndexOf(((ListItem)ddlParent.Items.FindByText(_ParentLookup)));
                }
                if (!string.IsNullOrEmpty(_ValueColumn))
                {
                    ddlDisplayName.SelectedIndex = ddlDisplayName.Items.IndexOf(((ListItem)ddlDisplayName.Items.FindByText(_ValueColumn)));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #20
0
 /// <summary>
 /// Ensure the field in the view
 /// </summary>
 /// <param name="fieldCollection">the collection of fields</param>
 /// <param name="fieldInternalName">the current field internal name</param>
 public void EnsureFieldInView(SPViewFieldCollection fieldCollection, string fieldInternalName)
 {
     if (!string.IsNullOrEmpty(fieldInternalName))
     {
         if (!fieldCollection.Exists(fieldInternalName))
         {
             fieldCollection.Add(fieldInternalName);
         }
     }
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                curWeb = SPContext.Current.Web;
                curWeb.Site.CatchAccessDeniedException = false;
                //HttpContext.Current.Session["ListGUID"] = Request["List"];
                list = curWeb.Lists[new Guid(Request["List"])];
                //HttpContext.Current.Session["ViewGUID"] = Request["View"];
                view = list.Views[new Guid(Request["View"])];

                string[] tLists = Request["Lists"].Split(';');
                lists = new string[tLists.Length];

                for (int i = 0; i < lists.Length; i++)
                {
                    lists[i] = tLists[i].Split(',')[0];
                }

                SPQuery query = new SPQuery();
                query.Query      = view.Query;
                query.ViewFields = view.ViewFields.SchemaXml;

                dtRollup = new DataTable();
                SPViewFieldCollection vfc = view.ViewFields;

                foreach (string strField in vfc)
                {
                    SPField f = getRealField(list.Fields.GetFieldByInternalName(strField));
                    dtRollup.Columns.Add(f.InternalName);
                    arrFields.Add(f.InternalName);
                }
                XmlDocument xmlQuery = new XmlDocument();
                xmlQuery.LoadXml("<Query>" + view.Query + "</Query>");

                XmlNode ndGroupBy = xmlQuery.SelectSingleNode("//GroupBy");
                if (ndGroupBy != null)
                {
                    foreach (XmlNode nd in ndGroupBy.ChildNodes)
                    {
                        SPField f = getRealField(list.Fields.GetFieldByInternalName(nd.Attributes["Name"].Value));
                        if (!dtRollup.Columns.Contains(f.InternalName))
                        {
                            dtRollup.Columns.Add(f.InternalName);
                            arrFields.Add(f.InternalName);
                        }
                    }

                    xmlQuery.ChildNodes[0].RemoveChild(ndGroupBy);
                }
                string squery = xmlQuery.ChildNodes[0].InnerXml;

                processSite(curWeb, squery);

                foreach (string strField in arrFields)
                {
                    try
                    {
                        SPField f = getRealField(list.Fields.GetFieldByInternalName(strField));
                        dtRollup.Columns[f.InternalName].ColumnName = f.Title;
                    }
                    catch { }
                }
                //foreach (XmlNode nd in ndGroupBy.ChildNodes)
                //{
                //    SPField f = getRealField(list.Fields.GetFieldByInternalName(nd.InnerText));
                //    dtRollup.Columns.Add(f.InternalName);
                //    arrFields.Add(nd.InnerText);
                //}

                listGrid.DataSource = dtRollup;
                listGrid.DataBind();
            }
        }