Exemplo n.º 1
0
        /// <summary>
        /// Gets the first visible text field as title field
        /// </summary>
        /// <returns></returns>
        public ContentField GetDefaultTitleField()
        {
            ContentField firstField = null;
            var          tt         = (int)ContentFieldTypes.Text;

            if (this.FieldRefs.Count == 0)
            {
                firstField = Parent.Fields.FirstOrDefault(f => f.FieldType == tt && !f.IsHidden);
            }
            else
            {
                var vf = FieldRefs.FirstOrDefault(f => f.FieldType == tt && !f.IsHidden);
                if (vf != null)
                {
                    return(Parent.Fields[vf.Name]);
                }
            }
            return(firstField);
        }
Exemplo n.º 2
0
        protected override void SaveTo(XElement element)
        {
            XNamespace ns = ContentList.DefaultNamespace;

            element.Add(new XAttribute("type", "Computed"));
            if (this.DefaultValue != null)
            {
                element.Add(new XAttribute(DEFAULT, this.DefaultValue.ToString()));
            }

            if (FieldRefs != null && FieldRefs.Count() > 0)
            {
                foreach (var field in FieldRefs)
                {
                    element.Add(new XElement(ns + FIELDREF, new XAttribute(NAME, field)));
                }
            }

            if (!string.IsNullOrEmpty(DispPattern))
            {
                element.Add(XElement.Parse(DispPattern));
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Set ordered view fields.
        /// </summary>
        /// <param name="fields">The ordered field names.</param>
        public void SetViewFields(params string[] fields)
        {
            var tmpFields = FieldRefs.ToList();

            this.FieldRefs.Clear();

            foreach (var field in fields)
            {
                var fieldRef = tmpFields.FirstOrDefault(e => e.Name.Equals(field));
                if (fieldRef == null)
                {
                    fieldRef = new ContentFieldRef(this, this.Parent.Fields[field]);
                }
                this.FieldRefs.Add(fieldRef);
            }

            this.Model.FieldRefsXml = FieldRefs.Element().OuterXml();
            this.FieldRefsXml       = this.Model.FieldRefsXml;

            Context.SaveChanges();

            this.Refresh();
        }