Ejemplo n.º 1
0
        public DefaultTransform(IContext context, IEnumerable <Field> fields)
            : base(context, null)
        {
            var expanded = fields.ToArray();
            var defaults = Constants.TypeDefaults();

            foreach (var field in expanded)
            {
                var hasDefault   = field.Default != Constants.DefaultSetting;
                var fieldDefault = new FieldDefault(field.Name, field.Alias, field.Index, field.MasterIndex, field.KeyIndex, field.Type)
                {
                    Value             = hasDefault ? field.Convert(field.Default) : defaults[field.Type],
                    StringValue       = hasDefault ? field.Default : string.Empty,
                    DefaultWhiteSpace = field.DefaultWhiteSpace
                };

                if (field.IsCalculated)
                {
                    CalculatedFieldDefaults.Add(fieldDefault);
                }
                else
                {
                    FieldDefaults.Add(fieldDefault);
                }
            }
        }
        public DefaultTransform(IContext context, IEnumerable <Field> fields) : base(context, null)
        {
            var expanded   = fields.ToArray();
            var defaults   = Constants.TypeDefaults();
            var canConvert = Constants.CanConvert();

            foreach (var field in expanded)
            {
                var hasDefault = field.Default != Constants.DefaultSetting;
                var value      = defaults[field.Type];

                if (hasDefault)
                {
                    switch (field.Type)
                    {
                    case "char" when field.Default.Length > 1:
                        field.Default = field.Default[0].ToString();
                        break;

                    case "string" when field.Length != "max" && int.TryParse(field.Length, out var length):
                        field.Default = field.Default.Substring(0, Math.Min(field.Default.Length, length));
                        break;
                    }
                    if (canConvert[field.Type](field.Default))
                    {
                        value = field.Convert(field.Default);
                    }
                    else
                    {
                        Context.Warn($"The default value {field.Default} can not be converted to {field.Type}.  Setting default value to {value} instead.");
                    }
                }

                var fieldDefault = new FieldDefault(field.Name, field.Alias, field.Index, field.MasterIndex, field.KeyIndex, field.Type)
                {
                    Value             = value,
                    StringValue       = hasDefault ? field.Default : string.Empty,
                    DefaultWhiteSpace = field.DefaultWhiteSpace,
                    DefaultEmpty      = field.DefaultEmpty,
                    OnlyDefaultNulls  = !field.DefaultWhiteSpace && !field.DefaultEmpty
                };

                if (field.IsCalculated)
                {
                    CalculatedFieldDefaults.Add(fieldDefault);
                }
                else
                {
                    FieldDefaults.Add(fieldDefault);
                }
            }
        }
Ejemplo n.º 3
0
 public override IRow Transform(IRow row)
 {
     foreach (var field in CalculatedFieldDefaults)
     {
         field.Setter(row);
     }
     foreach (var field in FieldDefaults.Where(f => row[f] == null || f.DefaultWhiteSpace && f.Type == "string" && string.IsNullOrWhiteSpace((string)row[f])))
     {
         field.Setter(row);
     }
     // Increment();
     return(row);
 }
Ejemplo n.º 4
0
 public static void SetDefault(SPField field, FieldDefaults allFieldDefaults)
 {
     if (allFieldDefaults.Count > 0)
     {
         foreach (FieldDefault fd in allFieldDefaults)
         {
             if (fd.OnField.SPName == field.InternalName)
             {
                 if (PrincipalEvaluator.Check(fd.ForSPPrinciples,
                                              fd.BySPPrinciplesOperator))
                 {
                     field.DefaultValue = fd.Value.ToString();
                     break;
                 }
             }
         }
     }
 }
Ejemplo n.º 5
0
 public static void SetDefault(SPField field, FieldDefaults allFieldDefaults)
 {
     if (allFieldDefaults.Count > 0)
     {
         foreach (FieldDefault fd in allFieldDefaults)
         {
             if (fd.OnField.SPName == field.InternalName)
             {
                 if (PrincipalEvaluator.Check(fd.ForSPPrinciples,
                     fd.BySPPrinciplesOperator))
                 {
                     field.DefaultValue = fd.Value.ToString();
                     break;
                 }
             }
         }
     }
 }
Ejemplo n.º 6
0
        public DefaultTransform(IContext context, IEnumerable <Field> fields) : base(context, null)
        {
            var expanded = fields.ToArray();
            var defaults = Constants.TypeDefaults();

            foreach (var field in expanded)
            {
                var hasDefault = field.Default != Constants.DefaultSetting;
                if (hasDefault)
                {
                    switch (field.Type)
                    {
                    case "char" when field.Default.Length > 1:
                        field.Default = field.Default[0].ToString();
                        break;

                    case "string" when field.Length != "max" && int.TryParse(field.Length, out var length):
                        field.Default = field.Default.Substring(0, Math.Min(field.Default.Length, length));
                        break;
                    }
                }
                var fieldDefault = new FieldDefault(field.Name, field.Alias, field.Index, field.MasterIndex, field.KeyIndex, field.Type)
                {
                    Value             = hasDefault ? field.Convert(field.Default) : defaults[field.Type],
                    StringValue       = hasDefault ? field.Default : string.Empty,
                    DefaultWhiteSpace = field.DefaultWhiteSpace,
                    DefaultEmpty      = field.DefaultEmpty
                };

                if (field.IsCalculated)
                {
                    CalculatedFieldDefaults.Add(fieldDefault);
                }
                else
                {
                    FieldDefaults.Add(fieldDefault);
                }
            }
        }
Ejemplo n.º 7
0
        protected override void OnInit(EventArgs e)
        {
            try
            {
                if (SPContext.Current.SiteFeatures[new Guid(Constants.ASPLFeature.FeatureID)] == null)
                {
                    base.OnInit(e); return;
                }

                RendringUtil.RenderResources(this.Page.Header);

                allTabs = Tabs.LoadTabs(GetConfigFile(Constants.ConfigFile.TabSettingFile));
                allFieldPermissions = FieldPermissions.LoadFieldPermissions(GetConfigFile(Constants.ConfigFile.FieldPermissionFile));
                allFieldDefaults = FieldDefaults.LoadFieldDefaults(GetConfigFile(Constants.ConfigFile.FieldDefaultFile));


                #region Testing data
                //allTabs = new Tabs();
                //Tab t1 = new Tab(0, "Tab1", "foo");

                //t1.Fields.Add(new Field("Title"));
                //t1.Fields.Add(new Field("Predecessors"));
                //t1.Fields.Add(new Field("Priority"));
                //t1.Fields.Add(new Field("Status"));
                //t1.Permissions.Add(new TabPermission(false, Enums.PermissionLevel.Write, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));
                //t1.Permissions.Add(new TabPermission(false, Enums.PermissionLevel.Deny, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));



                //t1.IsFirst = true;

                //allTabs.Add(t1);


                //Tab t2 = new Tab(0, "Tab2", "foo");
                //t2.Fields.Add(new Field("PercentComplete"));
                //t2.Fields.Add(new Field("DueDate"));
                //t2.Fields.Add(new Field("Title"));
                //t2.Fields.Add(new Field("Body"));
                //t2.IsSelected = true;
                //t2.Permissions.Add(new TabPermission(false, Enums.PermissionLevel.Deny, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));


                //TabPermission p3 = new TabPermission(false, Enums.PermissionLevel.Write, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None);
                //p3.Conditions.Add(new Condition(new Field("Title"), Enums.Operator.Contains, "Make write"));
                //t2.Permissions.Add(p3);


                //allTabs.Add(t2);


                //Tab t3 = new Tab(0, "Tab3", "foo");
                //t3.Fields.Add(new Field("PercentComplete"));
                //t3.Fields.Add(new Field("DueDate"));
                //t3.Fields.Add(new Field("Predecessors"));
                //t3.IsLast = true;

                //allTabs.Add(t3);

                //allFieldPermissions = new FieldPermissions();
                //allFieldPermissions.Add(new FieldPermission(new Field("Title"), Enums.PermissionLevel.Write, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));
                //allFieldPermissions.Add(new FieldPermission(new Field("Predecessors"), Enums.PermissionLevel.Read, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));


                //allFieldDefaults = new FieldDefaults();
                //allFieldDefaults.Add(new FieldDefault(new Field("Title"), "", Enums.Operator.None, "", "You cant touch me!!"));

                //allTabs = null;
                #endregion

                this.updatePanelIterator = new UpdatePanel();
                this.updatePanelIterator.ID = "updatePanelIterator";
                this.updatePanelIterator.RenderMode = UpdatePanelRenderMode.Inline;
                if (this.RequestResultTabsInfoHidden == null)
                {
                    this.RequestResultTabsInfoHidden = new HiddenField();
                }

                this.RequestResultTabsInfoHidden.ID = "RequestResultTabsInfoHidden";

                this.RequestResultTabsInfoHidden.Value = (allTabs == null ? "null" : allTabs.ToHiddenFldValue());
                this.updatePanelIterator.ContentTemplateContainer.Controls.Add(this.RequestResultTabsInfoHidden);
                Panel panel = new Panel();
                panel.Style.Add(HtmlTextWriterStyle.Position, "absolute");
                panel.Style.Add(HtmlTextWriterStyle.Width, "100%");
                this.Controls.Add(panel);
                panel.Controls.Add(this.updatePanelIterator);
                panel.Controls.Add(UpdateTemplate.GetUpdateProgress(this.updatePanelIterator.ID));
                CreateHelperControls();
                base.OnInit(e);

                // register save handler if not in display mode and form is posted back
                if ((Page.IsPostBack) && (ControlMode != SPControlMode.Display))
                {
                    _formContext.OnSaveHandler += new EventHandler(SaveHandler);
                }
            }
            catch (Exception exp)
            {
                base.OnInit(e);
                Logging.Log(exp);
            }
        }
Ejemplo n.º 8
0
        protected override void OnInit(EventArgs e)
        {
            try
            {
                if (SPContext.Current.SiteFeatures[new Guid(Constants.ASPLFeature.FeatureID)] == null)
                {
                    base.OnInit(e); return;
                }

                RendringUtil.RenderResources(this.Page.Header);

                allTabs             = Tabs.LoadTabs(GetConfigFile(Constants.ConfigFile.TabSettingFile));
                allFieldPermissions = FieldPermissions.LoadFieldPermissions(GetConfigFile(Constants.ConfigFile.FieldPermissionFile));
                allFieldDefaults    = FieldDefaults.LoadFieldDefaults(GetConfigFile(Constants.ConfigFile.FieldDefaultFile));


                #region Testing data
                //allTabs = new Tabs();
                //Tab t1 = new Tab(0, "Tab1", "foo");

                //t1.Fields.Add(new Field("Title"));
                //t1.Fields.Add(new Field("Predecessors"));
                //t1.Fields.Add(new Field("Priority"));
                //t1.Fields.Add(new Field("Status"));
                //t1.Permissions.Add(new TabPermission(false, Enums.PermissionLevel.Write, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));
                //t1.Permissions.Add(new TabPermission(false, Enums.PermissionLevel.Deny, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));



                //t1.IsFirst = true;

                //allTabs.Add(t1);


                //Tab t2 = new Tab(0, "Tab2", "foo");
                //t2.Fields.Add(new Field("PercentComplete"));
                //t2.Fields.Add(new Field("DueDate"));
                //t2.Fields.Add(new Field("Title"));
                //t2.Fields.Add(new Field("Body"));
                //t2.IsSelected = true;
                //t2.Permissions.Add(new TabPermission(false, Enums.PermissionLevel.Deny, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));


                //TabPermission p3 = new TabPermission(false, Enums.PermissionLevel.Write, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None);
                //p3.Conditions.Add(new Condition(new Field("Title"), Enums.Operator.Contains, "Make write"));
                //t2.Permissions.Add(p3);


                //allTabs.Add(t2);


                //Tab t3 = new Tab(0, "Tab3", "foo");
                //t3.Fields.Add(new Field("PercentComplete"));
                //t3.Fields.Add(new Field("DueDate"));
                //t3.Fields.Add(new Field("Predecessors"));
                //t3.IsLast = true;

                //allTabs.Add(t3);

                //allFieldPermissions = new FieldPermissions();
                //allFieldPermissions.Add(new FieldPermission(new Field("Title"), Enums.PermissionLevel.Write, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));
                //allFieldPermissions.Add(new FieldPermission(new Field("Predecessors"), Enums.PermissionLevel.Read, new List<Enums.SPForms>() { Enums.SPForms.New, Enums.SPForms.Edit }, "", Enums.Operator.None));


                //allFieldDefaults = new FieldDefaults();
                //allFieldDefaults.Add(new FieldDefault(new Field("Title"), "", Enums.Operator.None, "", "You cant touch me!!"));

                //allTabs = null;
                #endregion

                this.updatePanelIterator            = new UpdatePanel();
                this.updatePanelIterator.ID         = "updatePanelIterator";
                this.updatePanelIterator.RenderMode = UpdatePanelRenderMode.Inline;
                if (this.RequestResultTabsInfoHidden == null)
                {
                    this.RequestResultTabsInfoHidden = new HiddenField();
                }

                this.RequestResultTabsInfoHidden.ID = "RequestResultTabsInfoHidden";

                this.RequestResultTabsInfoHidden.Value = (allTabs == null ? "null" : allTabs.ToHiddenFldValue());
                this.updatePanelIterator.ContentTemplateContainer.Controls.Add(this.RequestResultTabsInfoHidden);
                Panel panel = new Panel();
                panel.Style.Add(HtmlTextWriterStyle.Position, "absolute");
                panel.Style.Add(HtmlTextWriterStyle.Width, "100%");
                this.Controls.Add(panel);
                panel.Controls.Add(this.updatePanelIterator);
                panel.Controls.Add(UpdateTemplate.GetUpdateProgress(this.updatePanelIterator.ID));
                CreateHelperControls();
                base.OnInit(e);

                // register save handler if not in display mode and form is posted back
                if ((Page.IsPostBack) && (ControlMode != SPControlMode.Display))
                {
                    _formContext.OnSaveHandler += new EventHandler(SaveHandler);
                }
            }
            catch (Exception exp)
            {
                base.OnInit(e);
                Logging.Log(exp);
            }
        }