Exemple #1
0
        /// <summary>
        /// Fills the specification keys.
        /// </summary>
        /// <param name="template">The template.</param>
        /// <param name="spec">The spec.</param>
        private void FillSpecificationKeys([NotNull] TemplateItem template, [NotNull] ref Collection <string> spec)
        {
            Assert.ArgumentNotNull(template, "template");
            Assert.ArgumentNotNull(spec, "spec");

            TemplateSectionItem section = template.GetSection("Specification");

            if (section == null)
            {
                return;
            }

            foreach (TemplateFieldItem field in section.GetFields())
            {
                if (!spec.Contains(field.Name))
                {
                    spec.Add(field.Name);
                }
            }

            foreach (TemplateItem baseTemplate in template.BaseTemplates)
            {
                this.FillSpecificationKeys(baseTemplate, ref spec);
            }
        }
 /// <summary>
 /// Scans the section for Shared and Unversioned changes.
 /// </summary>
 /// <param name="templateItem">The template item.</param>
 /// <param name="section">The section.</param>
 /// <param name="result">The result.</param>
 private static void ScanSection(TemplateItem templateItem,
                                 SectionDefinition section, List<ScanResult> result)
 {
     Assert.ArgumentNotNull((object)templateItem, "templateItem");
     Assert.ArgumentNotNull((object)section, "section");
     Assert.ArgumentNotNull((object)result, "result");
     if (!(section.Deleted != "1") || string.IsNullOrEmpty(section.SectionID))
         return;
     TemplateSectionItem section1 = templateItem.GetSection(ID.Parse(section.SectionID));
     if (section1 == null)
         return;
     foreach (
         FieldDefinition field in
             section.Fields)
         TemplateBuilderForm.ScanField(section1, field, result);
 }
        /// <summary>
        /// Saves the section.
        /// </summary>
        /// <param name="templateItem">The template item.</param>
        /// <param name="section">The section.</param>
        private static void SaveSection(TemplateItem templateItem,
                                        SectionDefinition section)
        {
            Assert.ArgumentNotNull((object)templateItem, "templateItem");
            Assert.ArgumentNotNull((object)section, "section");
            TemplateSectionItem sectionItem = (TemplateSectionItem)null;
            if (!string.IsNullOrEmpty(section.SectionID))
                sectionItem = templateItem.GetSection(ID.Parse(section.SectionID), false);
            if (section.Deleted == "1")
            {
                if (sectionItem == null)
                    return;
                sectionItem.InnerItem.Recycle();
            }
            else
            {
                if (sectionItem == null)
                {
                    sectionItem = templateItem.AddSection(section.Name, false);
                    section.SectionID = sectionItem.ID.ToString();
                }

                sectionItem.InnerItem.Editing.BeginEdit();
                sectionItem.InnerItem.Name = StringUtil.GetString(new[]
                    {
                        section.Name
                    });
                sectionItem.InnerItem.Appearance.Sortorder = MainUtil.GetInt(section.Sortorder, 0);
                sectionItem.InnerItem.Editing.EndEdit();
                foreach (
                    FieldDefinition field in
                        section.Fields)
                    TemplateBuilderForm.SaveField(sectionItem, field);
            }
        }
Exemple #4
0
 public virtual TemplateSectionItem GetSection(ID sectionID)
 {
     return(_templateItem.GetSection(sectionID));
 }