Ejemplo n.º 1
0
        public static ContentType CreateSimpleContentType()
        {
            var contentType = new ContentType(-1)
                                  {
                                      Alias = "simple",
                                      Name = "Simple Page",
                                      Description = "ContentType used for simple text pages",
                                      Icon = ".sprTreeDoc3",
                                      Thumbnail = "doc.png",
                                      SortOrder = 1,
                                      CreatorId = 0,
                                      Trashed = false
                                  };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return contentType;
        }
Ejemplo n.º 2
0
        public static ContentType CreateTextpageContentType()
        {
            var contentType = new ContentType(-1)
                                  {
                                      Alias = "textPage",
                                      Name = "Text Page",
                                      Description = "ContentType used for Text pages",
                                      Icon = ".sprTreeDoc3",
                                      Thumbnail = "doc.png",
                                      SortOrder = 1,
                                      CreatorId = 0,
                                      Trashed = false
                                  };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87 });

            var metaCollection = new PropertyTypeCollection();
            metaCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "keywords", Name = "Meta Keywords", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            metaCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "metaDescription", Name = "Meta Description", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -89 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });
            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection) { Name = "Meta", SortOrder = 2 });

            return contentType;
        }
Ejemplo n.º 3
0
        public static ContentType CreateTextpageContentType(string alias = "textPage", string name = "Text Page")
        {
            var contentType = new ContentType(-1)
                                  {
                                      Alias = alias,
                                      Name = name,
                                      Description = "ContentType used for Text pages",
                                      Icon = ".sprTreeDoc3",
                                      Thumbnail = "doc.png",
                                      SortOrder = 1,
                                      CreatorId = 0,
                                      Trashed = false
                                  };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87 });

            var metaCollection = new PropertyTypeCollection();
            metaCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "keywords", Name = "Meta Keywords", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            metaCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "metaDescription", Name = "Meta Description", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -89 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });
            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection) { Name = "Meta", SortOrder = 2 });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return contentType;
        }
Ejemplo n.º 4
0
        public static ContentType CreateMetaContentType()
        {
            var contentType = new ContentType(-1)
                                  {
                                      Alias = "meta",
                                      Name = "Meta",
                                      Description = "ContentType used for Meta tags",
                                      Icon = ".sprTreeDoc3",
                                      Thumbnail = "doc.png",
                                      SortOrder = 1,
                                      CreatorId = 0,
                                      Trashed = false
                                  };

            var metaCollection = new PropertyTypeCollection();
            metaCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "metakeywords", Name = "Meta Keywords", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            metaCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "metadescription", Name = "Meta Description", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -89 });

            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection) { Name = "Meta", SortOrder = 2 });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return contentType;
        }
Ejemplo n.º 5
0
        protected ContentTypeBase(int parentId)
        {
			Mandate.ParameterCondition(parentId != 0, "parentId");

            _parentId = new Lazy<int>(() => parentId);
            _allowedContentTypes = new List<ContentTypeSort>();
            _propertyGroups = new PropertyGroupCollection();
            _propertyTypes = new PropertyTypeCollection();
        }
Ejemplo n.º 6
0
		protected ContentTypeBase(IContentTypeBase parent)
		{
			Mandate.ParameterNotNull(parent, "parent");

			_parentId = new Lazy<int>(() => parent.Id);
			_allowedContentTypes = new List<ContentTypeSort>();
			_propertyGroups = new PropertyGroupCollection();
            _propertyTypes = new PropertyTypeCollection();
		}
        public static ContentType CreateSimpleContentType(string alias, string name, PropertyTypeCollection groupedCollection, PropertyTypeCollection nonGroupedCollection)
        {
            var contentType = CreateSimpleContentType(alias, name, groupedCollection);

            //now add the non-grouped properties
            nonGroupedCollection.ForEach(pt => contentType.AddPropertyType(pt));

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 8
0
    public void GetAvailableCompositeContentTypes_No_Overlap_By_Content_Type_And_Property_Type_Alias()
    {
        void AddPropType(string alias, IContentType ct)
        {
            var contentCollection = new PropertyTypeCollection(true)
            {
                new PropertyType(ShortStringHelper, Constants.PropertyEditors.Aliases.TextBox, ValueStorageType.Ntext)
                {
                    Alias       = alias,
                    Name        = "Title",
                    Description = string.Empty,
                    Mandatory   = false,
                    SortOrder   = 1,
                    DataTypeId  = -88,
                },
            };
            var pg = new PropertyGroup(contentCollection)
            {
                Alias = "test", Name = "test", SortOrder = 1
            };

            ct.PropertyGroups.Add(pg);
        }

        var ct1 = ContentTypeBuilder.CreateBasicContentType("ct1", "CT1");
        var ct2 = ContentTypeBuilder.CreateBasicContentType("ct2", "CT2");

        AddPropType("title", ct2);
        var ct3 = ContentTypeBuilder.CreateBasicContentType("ct3", "CT3");

        AddPropType("title", ct3);
        var ct4 = ContentTypeBuilder.CreateBasicContentType("ct4", "CT4");
        var ct5 = ContentTypeBuilder.CreateBasicContentType("ct5", "CT5");

        AddPropType("blah", ct5);
        ct1.Id = 1;
        ct2.Id = 2;
        ct3.Id = 3;
        ct4.Id = 4;
        ct5.Id = 4;

        var service = new Mock <IContentTypeService>();

        var availableTypes = service.Object.GetAvailableCompositeContentTypes(
            ct1,
            new[] { ct1, ct2, ct3, ct4, ct5 },
            new[] { ct2.Alias },
            new[] { "blah" })
                             .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();

        Assert.AreEqual(1, availableTypes.Count());
        Assert.AreEqual(ct4.Id, availableTypes.ElementAt(0).Id);
    }
        public static ContentType CreateTextPageContentType(string alias = "textPage", string name = "Text Page")
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType used for Text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection(true);

            contentCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeId = Constants.DataTypes.Textbox, LabelOnTop = true
            });
            contentCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = Constants.DataTypes.RichtextEditor, LabelOnTop = false
            });

            var metaCollection = new PropertyTypeCollection(true);

            metaCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "keywords", Name = "Meta Keywords", Description = "", Mandatory = false, SortOrder = 1, DataTypeId = Constants.DataTypes.Textbox
            });
            metaCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "description", Name = "Meta Description", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = Constants.DataTypes.Textarea
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });
            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection)
            {
                Name = "Meta", SortOrder = 2
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            contentType.SetDefaultTemplate(new Template("Textpage", "textpage"));

            return(contentType);
        }
Ejemplo n.º 10
0
        public void Can_Deep_Clone()
        {
            // needs to be within collection to support publishing
            var ptCollection = new PropertyTypeCollection(true, new[] { new PropertyType("TestPropertyEditor", ValueStorageType.Nvarchar, "test")
                                                                        {
                                                                            Id                  = 3,
                                                                            CreateDate          = DateTime.Now,
                                                                            DataTypeId          = 5,
                                                                            PropertyEditorAlias = "propTest",
                                                                            Description         = "testing",
                                                                            Key                 = Guid.NewGuid(),
                                                                            Mandatory           = true,
                                                                            Name                = "Test",
                                                                            PropertyGroupId     = new Lazy <int>(() => 11),
                                                                            SortOrder           = 9,
                                                                            UpdateDate          = DateTime.Now,
                                                                            ValidationRegExp    = "xxxx",
                                                                            ValueStorageType    = ValueStorageType.Nvarchar
                                                                        } });

            var property = new Property(123, ptCollection[0])
            {
                CreateDate = DateTime.Now,
                Id         = 4,
                Key        = Guid.NewGuid(),
                UpdateDate = DateTime.Now
            };

            property.SetValue("hello");
            property.PublishValues();

            var clone = (Property)property.DeepClone();

            Assert.AreNotSame(clone, property);
            Assert.AreNotSame(clone.Values, property.Values);
            Assert.AreNotSame(property.PropertyType, clone.PropertyType);
            for (int i = 0; i < property.Values.Count; i++)
            {
                Assert.AreNotSame(property.Values.ElementAt(i), clone.Values.ElementAt(i));
            }


            //This double verifies by reflection
            var allProps = clone.GetType().GetProperties();

            foreach (var propertyInfo in allProps)
            {
                Assert.AreEqual(propertyInfo.GetValue(clone, null), propertyInfo.GetValue(property, null));
            }
        }
Ejemplo n.º 11
0
        public static ContentType CreateTextpageContentType(string alias = "textPage", string name = "Text Page")
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType used for Text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });

            var metaCollection = new PropertyTypeCollection();

            metaCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext)
            {
                Alias = "keywords", Name = "Meta Keywords", Description = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            metaCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext)
            {
                Alias = "description", Name = "Meta Description", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -89
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });
            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection)
            {
                Name = "Meta", SortOrder = 2
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 12
0
        public void PropertyValuesWithSpecialTypes()
        {
            var provider = TestObjects.GetScopeProvider(Logger);

            using (var scope = provider.CreateScope())
            {
                var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository dataTypeDefinitionRepository);

                var editor = new DecimalPropertyEditor(Logger);
                var dtd    = new DataType(editor)
                {
                    Name = "test", DatabaseType = ValueStorageType.Decimal
                };
                dataTypeDefinitionRepository.Save(dtd);

                const string decimalPropertyAlias  = "decimalProperty";
                const string intPropertyAlias      = "intProperty";
                const string dateTimePropertyAlias = "datetimeProperty";
                var          dateValue             = new DateTime(2016, 1, 6);

                var propertyTypeCollection = new PropertyTypeCollection(true,
                                                                        new List <PropertyType>
                {
                    MockedPropertyTypes.CreateDecimalProperty(decimalPropertyAlias, "Decimal property", dtd.Id),
                    MockedPropertyTypes.CreateIntegerProperty(intPropertyAlias, "Integer property"),
                    MockedPropertyTypes.CreateDateTimeProperty(dateTimePropertyAlias, "DateTime property")
                });
                var contentType = MockedContentTypes.CreateSimpleContentType("umbTextpage1", "Textpage", propertyTypeCollection);
                contentTypeRepository.Save(contentType);

                // int and decimal values are passed in as strings as they would be from the backoffice UI
                var textpage = MockedContent.CreateSimpleContentWithSpecialDatabaseTypes(contentType, "*****@*****.**", -1, "100", "150", dateValue);

                repository.Save(textpage);
                scope.Complete();

                Assert.That(contentType.HasIdentity, Is.True);
                Assert.That(textpage.HasIdentity, Is.True);

                var persistedTextpage = repository.Get(textpage.Id);
                Assert.That(persistedTextpage.Name, Is.EqualTo(textpage.Name));
                Assert.AreEqual(100m, persistedTextpage.GetValue(decimalPropertyAlias));
                Assert.AreEqual(persistedTextpage.GetValue(decimalPropertyAlias), textpage.GetValue(decimalPropertyAlias));
                Assert.AreEqual(150, persistedTextpage.GetValue(intPropertyAlias));
                Assert.AreEqual(persistedTextpage.GetValue(intPropertyAlias), textpage.GetValue(intPropertyAlias));
                Assert.AreEqual(dateValue, persistedTextpage.GetValue(dateTimePropertyAlias));
                Assert.AreEqual(persistedTextpage.GetValue(dateTimePropertyAlias), textpage.GetValue(dateTimePropertyAlias));
            }
        }
Ejemplo n.º 13
0
        public static MediaType CreateImageMediaType(string alias = Constants.Conventions.MediaTypes.Image)
        {
            var mediaType = new MediaType(-1)
            {
                Alias       = alias,
                Name        = "Image",
                Description = "ContentType used for images",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.UploadFieldAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = Constants.Conventions.Media.File, Name = "File", Description = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.NoEditAlias, DataTypeDatabaseType.Integer)
            {
                Alias = Constants.Conventions.Media.Width, Name = "Width", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.NoEditAlias, DataTypeDatabaseType.Integer)
            {
                Alias = Constants.Conventions.Media.Height, Name = "Height", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.NoEditAlias, DataTypeDatabaseType.Integer)
            {
                Alias = Constants.Conventions.Media.Bytes, Name = "Bytes", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.NoEditAlias, DataTypeDatabaseType.Integer)
            {
                Alias = Constants.Conventions.Media.Extension, Name = "File Extension", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });

            mediaType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Media", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            mediaType.ResetDirtyProperties(false);

            return(mediaType);
        }
        public void GetAvailableCompositeContentTypes_No_Overlap_By_Content_Type_And_Property_Type_Alias()
        {
            Action <string, IContentType> addPropType = (alias, ct) =>
            {
                var contentCollection = new PropertyTypeCollection
                {
                    new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext)
                    {
                        Alias = alias, Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
                    }
                };
                var pg = new PropertyGroup(contentCollection)
                {
                    Name = "test", SortOrder = 1
                };
                ct.PropertyGroups.Add(pg);
            };

            var ct1 = MockedContentTypes.CreateBasicContentType("ct1", "CT1", null);
            var ct2 = MockedContentTypes.CreateBasicContentType("ct2", "CT2", null);

            addPropType("title", ct2);
            var ct3 = MockedContentTypes.CreateBasicContentType("ct3", "CT3", null);

            addPropType("title", ct3);
            var ct4 = MockedContentTypes.CreateBasicContentType("ct4", "CT4", null);
            var ct5 = MockedContentTypes.CreateBasicContentType("ct5", "CT5", null);

            addPropType("blah", ct5);
            ct1.Id = 1;
            ct2.Id = 2;
            ct3.Id = 3;
            ct4.Id = 4;
            ct5.Id = 4;

            var service = new Mock <IContentTypeService>();

            var availableTypes = service.Object.GetAvailableCompositeContentTypes(
                ct1,
                new[] { ct1, ct2, ct3, ct4, ct5 },
                new[] { ct2.Alias },
                new[] { "blah" })
                                 .Results.Where(x => x.Allowed).Select(x => x.Composition).ToArray();

            Assert.AreEqual(1, availableTypes.Count());
            Assert.AreEqual(ct4.Id, availableTypes.ElementAt(0).Id);
        }
Ejemplo n.º 15
0
        public static ContentType CreateTextpageContentType()
        {
            var contentType = new ContentType(-1)
            {
                Alias       = "textPage",
                Name        = "Text Page",
                Description = "ContentType used for Text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });

            var metaCollection = new PropertyTypeCollection();

            metaCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "keywords", Name = "Meta Keywords", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            metaCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "metaDescription", Name = "Meta Description", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -89
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });
            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection)
            {
                Name = "Meta", SortOrder = 2
            });

            return(contentType);
        }
        public static MediaType CreateImageMediaTypeWithCrop(string alias = Constants.Conventions.MediaTypes.Image)
        {
            var mediaType = new MediaType(-1)
            {
                Alias       = alias,
                Name        = "Image",
                Description = "ContentType used for images",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection(false);

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.ImageCropper, ValueStorageType.Ntext)
            {
                Alias = Constants.Conventions.Media.File, Name = "File", Description = "", Mandatory = false, SortOrder = 1, DataTypeId = 1043
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Label, ValueStorageType.Integer)
            {
                Alias = Constants.Conventions.Media.Width, Name = "Width", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = Constants.System.DefaultLabelDataTypeId
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Label, ValueStorageType.Integer)
            {
                Alias = Constants.Conventions.Media.Height, Name = "Height", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = Constants.System.DefaultLabelDataTypeId
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Label, ValueStorageType.Integer)
            {
                Alias = Constants.Conventions.Media.Bytes, Name = "Bytes", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = Constants.System.DefaultLabelDataTypeId
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Label, ValueStorageType.Nvarchar)
            {
                Alias = Constants.Conventions.Media.Extension, Name = "File Extension", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = Constants.System.DefaultLabelDataTypeId
            });

            mediaType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Media", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            mediaType.ResetDirtyProperties(false);

            return(mediaType);
        }
Ejemplo n.º 17
0
        public static MediaType CreateImageMediaType()
        {
            var mediaType = new MediaType(-1)
            {
                Alias       = "image",
                Name        = "Image",
                Description = "ContentType used for images",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Nvarchar)
            {
                Alias = "umbracoFile", Name = "File", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer)
            {
                Alias = "umbracoWidth", Name = "Width", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer)
            {
                Alias = "umbracoHeight", Name = "Height", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer)
            {
                Alias = "umbracoBytes", Name = "Bytes", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer)
            {
                Alias = "umbracoExtension", Name = "File Extension", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90
            });

            mediaType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Media", SortOrder = 1
            });

            return(mediaType);
        }
Ejemplo n.º 18
0
        public static ContentType CreateSimpleContentType(string alias, string name, IContentType parent = null, bool randomizeAliases = false, string propertyGroupName = "Content")
        {
            var contentType = parent == null ? new ContentType(-1) : new ContentType(parent, alias);

            contentType.Alias       = alias;
            contentType.Name        = name;
            contentType.Description = "ContentType used for simple text pages";
            contentType.Icon        = ".sprTreeDoc3";
            contentType.Thumbnail   = "doc2.png";
            contentType.SortOrder   = 1;
            contentType.CreatorId   = 0;
            contentType.Trashed     = false;
            contentType.Key         = Guid.NewGuid();

            var contentCollection = new PropertyTypeCollection(true);

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TextBox, ValueStorageType.Ntext)
            {
                Alias = RandomAlias("title", randomizeAliases), Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeId = -88, LabelOnTop = true
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TinyMce, ValueStorageType.Ntext)
            {
                Alias = RandomAlias("bodyText", randomizeAliases), Name = "Body Text", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = -87
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TextBox, ValueStorageType.Ntext)
            {
                Alias = RandomAlias("author", randomizeAliases), Name = "Author", Description = "Name of the author", Mandatory = false, SortOrder = 3, DataTypeId = -88
            });

            var pg = new PropertyGroup(contentCollection)
            {
                Name      = propertyGroupName,
                SortOrder = 1
            };

            contentType.PropertyGroups.Add(pg);

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            contentType.SetDefaultTemplate(new Template("Textpage", "textpage"));

            return(contentType);
        }
Ejemplo n.º 19
0
        public static ContentType CreateSimpleContentType()
        {
            var contentType = new ContentType(-1)
            {
                Alias       = "simple",
                Name        = "Simple Page",
                Description = "ContentType used for simple text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection(true);

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TextBox, ValueStorageType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeId = -88
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TinyMce, ValueStorageType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = -87
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TextBox, ValueStorageType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", Mandatory = false, SortOrder = 3, DataTypeId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name      = "Content",
                Alias     = "content",
                SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 20
0
        public static ContentType CreateSimpleContentType(string alias, string name, PropertyTypeCollection collection)
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType used for simple text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc3.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            contentType.PropertyGroups.Add(new PropertyGroup(collection)
            {
                Name = "Content", SortOrder = 1
            });

            return(contentType);
        }
Ejemplo n.º 21
0
        public static MediaType CreateSimpleMediaType(string alias, string name, IMediaType parent = null, bool randomizeAliases = false, string propertyGroupName = "Content")
        {
            var contentType = parent == null ? new MediaType(-1) : new MediaType(parent, alias);

            contentType.Alias       = alias;
            contentType.Name        = name;
            contentType.Description = "ContentType used for simple text pages";
            contentType.Icon        = ".sprTreeDoc3";
            contentType.Thumbnail   = "doc2.png";
            contentType.SortOrder   = 1;
            contentType.CreatorId   = 0;
            contentType.Trashed     = false;

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = RandomAlias("title", randomizeAliases), Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TinyMCEAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = RandomAlias("bodyText", randomizeAliases), Name = "Body Text", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = RandomAlias("author", randomizeAliases), Name = "Author", Description = "Name of the author", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88
            });

            var pg = new PropertyGroup(contentCollection)
            {
                Name = propertyGroupName, SortOrder = 1
            };

            contentType.PropertyGroups.Add(pg);

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 22
0
        public static MemberType CreateSimpleMemberType()
        {
            var contentType = new MemberType(-1)
            {
                Alias       = "simple",
                Name        = "Simple Page",
                Description = "ContentType used for simple text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 23
0
        public static MemberType CreateSimpleMemberType(string alias = null, string name = null)
        {
            var contentType = new MemberType(-1)
            {
                Alias       = alias ?? "simple",
                Name        = name ?? "Simple Page",
                Description = "Some member type",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
        public static ContentType CreateSimpleContentType(string alias, string name, bool mandatory)
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType used for simple text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc2.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection(true);

            contentCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", Mandatory = mandatory, SortOrder = 1, DataTypeId = -88
            });
            contentCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", Mandatory = mandatory, SortOrder = 2, DataTypeId = -87
            });
            contentCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", Mandatory = mandatory, SortOrder = 3, DataTypeId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 25
0
        public static ContentType CreateSimpleContentType(string alias, string name, IContentType parent = null)
        {
            var contentType = parent == null ? new ContentType(-1) : new ContentType(parent);

            contentType.Alias       = alias;
            contentType.Name        = name;
            contentType.Description = "ContentType used for simple text pages";
            contentType.Icon        = ".sprTreeDoc3";
            contentType.Thumbnail   = "doc2.png";
            contentType.SortOrder   = 1;
            contentType.CreatorId   = 0;
            contentType.Trashed     = false;

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(new Guid("ec15c1e5-9d90-422a-aa52-4f7622c63bea"), DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(new Guid("5E9B75AE-FACE-41c8-B47E-5F4B0FD82F83"), DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(new Guid("ec15c1e5-9d90-422a-aa52-4f7622c63bea"), DataTypeDatabaseType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
        public static ContentType CreateSimpleContentType(string alias, string name, PropertyTypeCollection collection, string propertyGroupName, IContentType parent = null)
        {
            var contentType = parent == null ? new ContentType(-1) : new ContentType(parent, alias);

            contentType.Alias       = alias;
            contentType.Name        = name;
            contentType.Description = "ContentType used for simple text pages";
            contentType.Icon        = ".sprTreeDoc3";
            contentType.Thumbnail   = "doc2.png";
            contentType.SortOrder   = 1;
            contentType.CreatorId   = 0;
            contentType.Trashed     = false;

            contentType.PropertyGroups.Add(new PropertyGroup(collection)
            {
                Name = propertyGroupName, SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 27
0
        private ContentType CreateHomepage(ContentType parent)
        {
            var contentType = new ContentType(parent)
            {
                Alias       = "homepage",
                Name        = "Homepage",
                Description = "ContentType used for the Homepage",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            return(contentType);
        }
Ejemplo n.º 28
0
        public override IProperty Build()
        {
            var      id         = _id ?? 1;
            Guid     key        = _key ?? Guid.NewGuid();
            DateTime createDate = _createDate ?? DateTime.Now;
            DateTime updateDate = _updateDate ?? DateTime.Now;

            if (_propertyTypeBuilder is null && _propertyType is null)
            {
                throw new InvalidOperationException("A property cannot be constructed without providing a property type. Use AddPropertyType() or WithPropertyType().");
            }

            IPropertyType propertyType = _propertyType ?? _propertyTypeBuilder.Build();

            // Needs to be within collection to support publishing.
            var propertyTypeCollection = new PropertyTypeCollection(true, new[] { propertyType });

            return(new Property(id, propertyTypeCollection[0])
            {
                Key = key,
                CreateDate = createDate,
                UpdateDate = updateDate,
            });
        }
Ejemplo n.º 29
0
        public static ContentType CreateSimpleContentType(string alias, string name, bool mandatory)
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType used for simple text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc2.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = mandatory, SortOrder = 1, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = mandatory, SortOrder = 2, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext)
            {
                Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = mandatory, SortOrder = 3, DataTypeDefinitionId = -88
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            return(contentType);
        }
Ejemplo n.º 30
0
        public static ContentType CreateSeoContentType()
        {
            var contentType = new ContentType(-1)
            {
                Alias          = "seo",
                Name           = "Seo",
                Description    = "ContentType used for Seo",
                Icon           = ".sprTreeDoc3",
                Thumbnail      = "doc.png",
                SortOrder      = 1,
                CreatorId      = 0,
                Trashed        = false,
                HistoryCleanup = new HistoryCleanup()
            };

            var metaCollection = new PropertyTypeCollection(true);

            metaCollection.Add(new PropertyType("seotest", ValueStorageType.Ntext)
            {
                Alias = "seokeywords", Name = "Seo Keywords", Description = "", Mandatory = false, SortOrder = 1, DataTypeId = -88
            });
            metaCollection.Add(new PropertyType("seotest", ValueStorageType.Ntext)
            {
                Alias = "seodescription", Name = "Seo Description", Description = "", Mandatory = false, SortOrder = 2, DataTypeId = -89
            });

            contentType.PropertyGroups.Add(new PropertyGroup(metaCollection)
            {
                Name = "Seo", SortOrder = 5
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 31
0
        public static ContentType CreateSimpleContentType(string alias, string name, PropertyTypeCollection collection)
        {
            var contentType = new ContentType(ShortStringHelper, -1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType used for simple text pages",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc3.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            contentType.PropertyGroups.Add(new PropertyGroup(collection)
            {
                Name = "Content", SortOrder = 1
            });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return(contentType);
        }
Ejemplo n.º 32
0
		public static ContentType CreateSimpleContentType(string alias, string name, IContentType parent = null)
		{
			var contentType = parent == null ? new ContentType(-1) : new ContentType(parent);

			contentType.Alias = alias;
			contentType.Name = name;
			contentType.Description = "ContentType used for simple text pages";
			contentType.Icon = ".sprTreeDoc3";
			contentType.Thumbnail = "doc2.png";
			contentType.SortOrder = 1;
			contentType.CreatorId = 0;
			contentType.Trashed = false;
			
			var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TinyMCEAlias, DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87 });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Ntext) { Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88 });

			contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

			return contentType;
		}	    
Ejemplo n.º 33
0
		public static ContentType CreateSimpleContentType(string alias, string name, IContentType parent = null)
		{
			var contentType = parent == null ? new ContentType(-1) : new ContentType(parent);

			contentType.Alias = alias;
			contentType.Name = name;
			contentType.Description = "ContentType used for simple text pages";
			contentType.Icon = ".sprTreeDoc3";
			contentType.Thumbnail = "doc2.png";
			contentType.SortOrder = 1;
			contentType.CreatorId = 0;
			contentType.Trashed = false;
			
			var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid("ec15c1e5-9d90-422a-aa52-4f7622c63bea"), DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(new Guid("5E9B75AE-FACE-41c8-B47E-5F4B0FD82F83"), DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87 });
            contentCollection.Add(new PropertyType(new Guid("ec15c1e5-9d90-422a-aa52-4f7622c63bea"), DataTypeDatabaseType.Ntext) { Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88 });

			contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });

			return contentType;
		}	    
Ejemplo n.º 34
0
        public static MediaType CreateVideoMediaType()
        {
            var mediaType = new MediaType(-1)
                                {
                                    Alias = "video",
                                    Name = "Video",
                                    Description = "ContentType used for videos",
                                    Icon = ".sprTreeDoc3",
                                    Thumbnail = "doc.png",
                                    SortOrder = 1,
                                    CreatorId = 0,
                                    Trashed = false
                                };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Nvarchar) { Alias = "videoFile", Name = "Video File", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });

            mediaType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Media", SortOrder = 1 });

            return mediaType;
        }
Ejemplo n.º 35
0
        public static MediaType CreateImageMediaType()
        {
            var mediaType = new MediaType(-1)
            {
                Alias = "image",
                Name = "Image",
                Description = "ContentType used for images",
                Icon = ".sprTreeDoc3",
                Thumbnail = "doc.png",
                SortOrder = 1,
                CreatorId = 0,
                Trashed = false
            };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Nvarchar) { Alias = "umbracoFile", Name = "File", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = "umbracoWidth", Name = "Width", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = "umbracoHeight", Name = "Height", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = "umbracoBytes", Name = "Bytes", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = "umbracoExtension", Name = "File Extension", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });

            mediaType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Media", SortOrder = 1 });

            return mediaType;
        }
 public PropertyTypeDiffgram(PropertyConfiguration configuration, PropertyTypeCollection propertyCollection, ServiceContext serviceContext)
     : base(configuration, serviceContext)
 {
     this.propertyCollection = propertyCollection;
 }
Ejemplo n.º 37
0
        public static ContentType CreateSimpleContentType(string alias, string name, PropertyTypeCollection collection)
        {
            var contentType = new ContentType(-1)
                                  {
                                      Alias = alias,
                                      Name = name,
                                      Description = "ContentType used for simple text pages",
                                      Icon = ".sprTreeDoc3",
                                      Thumbnail = "doc3.png",
                                      SortOrder = 1,
                                      CreatorId = 0,
                                      Trashed = false
                                  };

            contentType.PropertyGroups.Add(new PropertyGroup(collection) { Name = "Content", SortOrder = 1 });

            return contentType;
        }
        public static ContentType CreateAllTypesContentType(string alias, string name)
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType containing all standard DataTypes",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection(true);

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Boolean, ValueStorageType.Integer)
            {
                Alias = "isTrue", Name = "Is True or False", Mandatory = false, SortOrder = 1, DataTypeId = -49
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Integer, ValueStorageType.Integer)
            {
                Alias = "number", Name = "Number", Mandatory = false, SortOrder = 2, DataTypeId = -51
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TinyMce, ValueStorageType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Mandatory = false, SortOrder = 3, DataTypeId = -87
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TextBox, ValueStorageType.Nvarchar)
            {
                Alias = "singleLineText", Name = "Text String", Mandatory = false, SortOrder = 4, DataTypeId = -88
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.TextArea, ValueStorageType.Ntext)
            {
                Alias = "multilineText", Name = "Multiple Text Strings", Mandatory = false, SortOrder = 5, DataTypeId = -89
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.UploadField, ValueStorageType.Nvarchar)
            {
                Alias = "upload", Name = "Upload Field", Mandatory = false, SortOrder = 6, DataTypeId = -90
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Label, ValueStorageType.Nvarchar)
            {
                Alias = "label", Name = "Label", Mandatory = false, SortOrder = 7, DataTypeId = -92
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.DateTime, ValueStorageType.Date)
            {
                Alias = "dateTime", Name = "Date Time", Mandatory = false, SortOrder = 8, DataTypeId = -36
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.ColorPicker, ValueStorageType.Nvarchar)
            {
                Alias = "colorPicker", Name = "Color Picker", Mandatory = false, SortOrder = 9, DataTypeId = -37
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.DropDownListFlexible, ValueStorageType.Nvarchar)
            {
                Alias = "ddlMultiple", Name = "Dropdown List Multiple", Mandatory = false, SortOrder = 11, DataTypeId = -39
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.RadioButtonList, ValueStorageType.Nvarchar)
            {
                Alias = "rbList", Name = "Radio Button List", Mandatory = false, SortOrder = 12, DataTypeId = -40
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.DateTime, ValueStorageType.Date)
            {
                Alias = "date", Name = "Date", Mandatory = false, SortOrder = 13, DataTypeId = -36
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.DropDownListFlexible, ValueStorageType.Integer)
            {
                Alias = "ddl", Name = "Dropdown List", Mandatory = false, SortOrder = 14, DataTypeId = -42
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.CheckBoxList, ValueStorageType.Nvarchar)
            {
                Alias = "chklist", Name = "Checkbox List", Mandatory = false, SortOrder = 15, DataTypeId = -43
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.ContentPicker, ValueStorageType.Integer)
            {
                Alias = "contentPicker", Name = "Content Picker", Mandatory = false, SortOrder = 16, DataTypeId = 1046
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.MediaPicker, ValueStorageType.Integer)
            {
                Alias = "mediaPicker", Name = "Media Picker", Mandatory = false, SortOrder = 17, DataTypeId = 1048
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.MemberPicker, ValueStorageType.Integer)
            {
                Alias = "memberPicker", Name = "Member Picker", Mandatory = false, SortOrder = 18, DataTypeId = 1047
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.MultiUrlPicker, ValueStorageType.Nvarchar)
            {
                Alias = "multiUrlPicker", Name = "Multi URL Picker", Mandatory = false, SortOrder = 21, DataTypeId = 1050
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.Aliases.Tags, ValueStorageType.Ntext)
            {
                Alias = "tags", Name = "Tags", Mandatory = false, SortOrder = 22, DataTypeId = 1041
            });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            return(contentType);
        }
Ejemplo n.º 39
0
        public static MediaType CreateImageMediaType()
        {
            var mediaType = new MediaType(-1)
            {
                Alias = Constants.Conventions.MediaTypes.Image,
                Name = "Image",
                Description = "ContentType used for images",
                Icon = ".sprTreeDoc3",
                Thumbnail = "doc.png",
                SortOrder = 1,
                CreatorId = 0,
                Trashed = false
            };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Nvarchar) { Alias = Constants.Conventions.Media.File, Name = "File", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = Constants.Conventions.Media.Width, Name = "Width", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = Constants.Conventions.Media.Height, Name = "Height", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = Constants.Conventions.Media.Bytes, Name = "Bytes", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Integer) { Alias = Constants.Conventions.Media.Extension, Name = "File Extension", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -90 });

            mediaType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Media", SortOrder = 1 });

            //ensure that nothing is marked as dirty
            mediaType.ResetDirtyProperties(false);

            return mediaType;
        }
Ejemplo n.º 40
0
        public static ContentType CreateAllTypesContentType(string alias, string name)
        {
            var contentType = new ContentType(-1)
            {
                Alias       = alias,
                Name        = name,
                Description = "ContentType containing all standard DataTypes",
                Icon        = ".sprTreeDoc3",
                Thumbnail   = "doc.png",
                SortOrder   = 1,
                CreatorId   = 0,
                Trashed     = false
            };

            var contentCollection = new PropertyTypeCollection();

            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TrueFalseAlias, DataTypeDatabaseType.Integer)
            {
                Alias = "isTrue", Name = "Is True or False", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -49
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.IntegerAlias, DataTypeDatabaseType.Integer)
            {
                Alias = "number", Name = "Number", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -51
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TinyMCEAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "bodyText", Name = "Body Text", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -87
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "singleLineText", Name = "Text String", Mandatory = false, SortOrder = 4, DataTypeDefinitionId = -88
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TextboxMultipleAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "multilineText", Name = "Multiple Text Strings", Mandatory = false, SortOrder = 5, DataTypeDefinitionId = -89
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.UploadFieldAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "upload", Name = "Upload Field", Mandatory = false, SortOrder = 6, DataTypeDefinitionId = -90
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.NoEditAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "label", Name = "Label", Mandatory = false, SortOrder = 7, DataTypeDefinitionId = -92
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.DateTimeAlias, DataTypeDatabaseType.Date)
            {
                Alias = "dateTime", Name = "Date Time", Mandatory = false, SortOrder = 8, DataTypeDefinitionId = -36
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.ColorPickerAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "colorPicker", Name = "Color Picker", Mandatory = false, SortOrder = 9, DataTypeDefinitionId = -37
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.FolderBrowserAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "folderBrowser", Name = "Folder Browser", Mandatory = false, SortOrder = 10, DataTypeDefinitionId = -38
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.DropDownListMultipleAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "ddlMultiple", Name = "Dropdown List Multiple", Mandatory = false, SortOrder = 11, DataTypeDefinitionId = -39
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.RadioButtonListAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "rbList", Name = "Radio Button List", Mandatory = false, SortOrder = 12, DataTypeDefinitionId = -40
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.DateAlias, DataTypeDatabaseType.Date)
            {
                Alias = "date", Name = "Date", Mandatory = false, SortOrder = 13, DataTypeDefinitionId = -41
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.DropDownListAlias, DataTypeDatabaseType.Integer)
            {
                Alias = "ddl", Name = "Dropdown List", Mandatory = false, SortOrder = 14, DataTypeDefinitionId = -42
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.CheckBoxListAlias, DataTypeDatabaseType.Nvarchar)
            {
                Alias = "chklist", Name = "Checkbox List", Mandatory = false, SortOrder = 15, DataTypeDefinitionId = -43
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.ContentPickerAlias, DataTypeDatabaseType.Integer)
            {
                Alias = "contentPicker", Name = "Content Picker", Mandatory = false, SortOrder = 16, DataTypeDefinitionId = 1034
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.MediaPickerAlias, DataTypeDatabaseType.Integer)
            {
                Alias = "mediaPicker", Name = "Media Picker", Mandatory = false, SortOrder = 17, DataTypeDefinitionId = 1035
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.MemberPickerAlias, DataTypeDatabaseType.Integer)
            {
                Alias = "memberPicker", Name = "Member Picker", Mandatory = false, SortOrder = 18, DataTypeDefinitionId = 1036
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.RelatedLinksAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "relatedLinks", Name = "Related Links", Mandatory = false, SortOrder = 21, DataTypeDefinitionId = 1040
            });
            contentCollection.Add(new PropertyType(Constants.PropertyEditors.TagsAlias, DataTypeDatabaseType.Ntext)
            {
                Alias = "tags", Name = "Tags", Mandatory = false, SortOrder = 22, DataTypeDefinitionId = 1041
            });

            //contentCollection.Add(new PropertyType(Constants.PropertyEditors.UltraSimpleEditorAlias, DataTypeDatabaseType.Ntext) { Alias = "simpleEditor", Name = "Ultra Simple Editor", Mandatory = false, SortOrder = 19, DataTypeDefinitionId = 1038 });
            //contentCollection.Add(new PropertyType(Constants.PropertyEditors.UltimatePickerAlias, DataTypeDatabaseType.Ntext) { Alias = "ultimatePicker", Name = "Ultimate Picker", Mandatory = false, SortOrder = 20, DataTypeDefinitionId = 1039 });
            //contentCollection.Add(new PropertyType(Constants.PropertyEditors.MacroContainerAlias, DataTypeDatabaseType.Ntext) { Alias = "macroContainer", Name = "Macro Container", Mandatory = false, SortOrder = 23, DataTypeDefinitionId = 1042 });
            //contentCollection.Add(new PropertyType(Constants.PropertyEditors.ImageCropperAlias, DataTypeDatabaseType.Ntext) { Alias = "imgCropper", Name = "Image Cropper", Mandatory = false, SortOrder = 24, DataTypeDefinitionId = 1043 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection)
            {
                Name = "Content", SortOrder = 1
            });

            return(contentType);
        }
        private ContentType CreateSite()
        {
            var site = new ContentType(-1)
                           {
                               Alias = "site",
                               Name = "Site",
                               Description = "ContentType used for Site inheritence",
                               Icon = ".sprTreeDoc3",
                               Thumbnail = "doc.png",
                               SortOrder = 2,
                               CreatorId = 0,
                               Trashed = false
                           };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "hostname", Name = "Hostname", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            site.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Site Settings", SortOrder = 1 });

            return site;
        }
Ejemplo n.º 42
0
        public void Can_Update_Variation_Of_Element_Type_Property()
        {
            var provider = ScopeProvider;

            using (var scope = provider.CreateScope())
            {
                ContentTypeRepository repository = ContentTypeRepository;
                var contentRepository            = DocumentRepository;

                // Create elementType
                var elementType = new ContentType(ShortStringHelper, -1)
                {
                    Alias       = "elementType",
                    Name        = "Element type",
                    Description = "Element type to use as compositions",
                    Icon        = ".sprTreeDoc3",
                    Thumbnail   = "doc.png",
                    SortOrder   = 1,
                    CreatorId   = 0,
                    Trashed     = false,
                    IsElement   = true,
                    Variations  = ContentVariation.Nothing
                };

                var contentCollection = new PropertyTypeCollection(true);
                contentCollection.Add(new PropertyType(ShortStringHelper, "test", ValueStorageType.Ntext)
                {
                    Alias       = "title",
                    Name        = "Title",
                    Description = "",
                    Mandatory   = false,
                    SortOrder   = 1,
                    DataTypeId  = Constants.DataTypes.Textbox,
                    LabelOnTop  = true,
                    Variations  = ContentVariation.Nothing
                });
                elementType.PropertyGroups.Add(new PropertyGroup(contentCollection)
                {
                    Name = "Content", Alias = "content", SortOrder = 1
                });
                elementType.ResetDirtyProperties(false);
                elementType.SetDefaultTemplate(new Template(ShortStringHelper, "ElementType", "elementType"));
                repository.Save(elementType);

                // Create the basic "home" doc type that uses element type as comp
                var docType = new ContentType(ShortStringHelper, -1)
                {
                    Alias       = "home",
                    Name        = "Home",
                    Description = "Home containing elementType",
                    Icon        = ".sprTreeDoc3",
                    Thumbnail   = "doc.png",
                    SortOrder   = 1,
                    CreatorId   = 0,
                    Trashed     = false,
                    Variations  = ContentVariation.Nothing
                };
                var comp = new List <IContentTypeComposition>();
                comp.Add(elementType);
                docType.ContentTypeComposition = comp;
                repository.Save(docType);

                // Create "home" content
                var content = new Content("Home", -1, docType)
                {
                    Level = 1, SortOrder = 1, CreatorId = 0, WriterId = 0
                };
                object obj = new { title = "test title" };
                content.PropertyValues(obj);
                content.ResetDirtyProperties(false);
                contentRepository.Save(content);

                // Update variation on element type
                elementType.Variations = ContentVariation.Culture;
                elementType.PropertyTypes.First().Variations = ContentVariation.Culture;
                repository.Save(elementType);

                // Update variation on doc type
                docType.Variations = ContentVariation.Culture;
                repository.Save(docType);

                // Re fetch renewedContent and make sure that the culture has been set.
                var renewedContent = ContentService.GetById(content.Id);
                var hasCulture     = renewedContent.Properties["title"].Values.First().Culture != null;
                Assert.That(hasCulture, Is.True);
            }
        }
        private void MapGroupsAndProperties(IDictionary <int, IContentTypeComposition> contentTypes)
        {
            var sql1 = Sql()
                       .Select <PropertyTypeGroupDto>()
                       .From <PropertyTypeGroupDto>()
                       .InnerJoin <ContentTypeDto>().On <PropertyTypeGroupDto, ContentTypeDto>((ptg, ct) => ptg.ContentTypeNodeId == ct.NodeId)
                       .OrderBy <ContentTypeDto>(x => x.NodeId)
                       .AndBy <PropertyTypeGroupDto>(x => x.SortOrder, x => x.Id);

            var groupDtos = Database.Fetch <PropertyTypeGroupDto>(sql1);

            var sql2 = Sql()
                       .Select <PropertyTypeDto>(r => r.Select(x => x.DataTypeDto, r1 => r1.Select(x => x.NodeDto)))
                       .AndSelect <MemberPropertyTypeDto>()
                       .From <PropertyTypeDto>()
                       .InnerJoin <DataTypeDto>().On <PropertyTypeDto, DataTypeDto>((pt, dt) => pt.DataTypeId == dt.NodeId)
                       .InnerJoin <NodeDto>().On <DataTypeDto, NodeDto>((dt, n) => dt.NodeId == n.NodeId)
                       .InnerJoin <ContentTypeDto>().On <PropertyTypeDto, ContentTypeDto>((pt, ct) => pt.ContentTypeId == ct.NodeId)
                       .LeftJoin <PropertyTypeGroupDto>().On <PropertyTypeDto, PropertyTypeGroupDto>((pt, ptg) => pt.PropertyTypeGroupId == ptg.Id)
                       .LeftJoin <MemberPropertyTypeDto>().On <PropertyTypeDto, MemberPropertyTypeDto>((pt, mpt) => pt.Id == mpt.PropertyTypeId)
                       .OrderBy <ContentTypeDto>(x => x.NodeId)
                       .AndBy <PropertyTypeGroupDto>(x => x.SortOrder, x => x.Id) // NULLs will come first or last, never mind, we deal with it below
                       .AndBy <PropertyTypeDto>(x => x.SortOrder, x => x.Id);

            var propertyDtos      = Database.Fetch <PropertyTypeCommonDto>(sql2);
            var builtinProperties = Constants.Conventions.Member.GetStandardPropertyTypeStubs();

            var groupIx    = 0;
            var propertyIx = 0;

            foreach (var contentType in contentTypes.Values)
            {
                // only IContentType is publishing
                var isPublishing = contentType is IContentType;

                // get group-less properties (in case NULL is ordered first)
                var noGroupPropertyTypes = new PropertyTypeCollection(isPublishing);
                while (propertyIx < propertyDtos.Count && propertyDtos[propertyIx].ContentTypeId == contentType.Id && propertyDtos[propertyIx].PropertyTypeGroupId == null)
                {
                    noGroupPropertyTypes.Add(MapPropertyType(contentType, propertyDtos[propertyIx], builtinProperties));
                    propertyIx++;
                }

                // get groups and their properties
                var groupCollection = new PropertyGroupCollection();
                while (groupIx < groupDtos.Count && groupDtos[groupIx].ContentTypeNodeId == contentType.Id)
                {
                    var group = MapPropertyGroup(groupDtos[groupIx], isPublishing);
                    groupCollection.Add(group);
                    groupIx++;

                    while (propertyIx < propertyDtos.Count && propertyDtos[propertyIx].ContentTypeId == contentType.Id && propertyDtos[propertyIx].PropertyTypeGroupId == group.Id)
                    {
                        group.PropertyTypes.Add(MapPropertyType(contentType, propertyDtos[propertyIx], builtinProperties));
                        propertyIx++;
                    }
                }
                contentType.PropertyGroups = groupCollection;

                // get group-less properties (in case NULL is ordered last)
                while (propertyIx < propertyDtos.Count && propertyDtos[propertyIx].ContentTypeId == contentType.Id && propertyDtos[propertyIx].PropertyTypeGroupId == null)
                {
                    noGroupPropertyTypes.Add(MapPropertyType(contentType, propertyDtos[propertyIx], builtinProperties));
                    propertyIx++;
                }
                contentType.NoGroupPropertyTypes = noGroupPropertyTypes;

                // ensure builtin properties
                if (contentType is MemberType memberType)
                {
                    // ensure that the group exists (ok if it already exists)
                    memberType.AddPropertyGroup(Constants.Conventions.Member.StandardPropertiesGroupName);

                    // ensure that property types exist (ok if they already exist)
                    foreach (var(alias, propertyType) in builtinProperties)
                    {
                        var added = memberType.AddPropertyType(propertyType, Constants.Conventions.Member.StandardPropertiesGroupName);

                        if (added)
                        {
                            var access = new MemberTypePropertyProfileAccess(false, false, false);
                            memberType.MemberTypePropertyTypes[alias] = access;
                        }
                    }
                }
            }
        }
        private ContentType CreateHomepage(ContentType parent)
        {
            var contentType = new ContentType(parent)
                             {
                                 Alias = "homepage",
                                 Name = "Homepage",
                                 Description = "ContentType used for the Homepage",
                                 Icon = ".sprTreeDoc3",
                                 Thumbnail = "doc.png",
                                 SortOrder = 1,
                                 CreatorId = 0,
                                 Trashed = false
                             };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -87 });
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -88 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });

            return contentType;
        }
Ejemplo n.º 45
0
        public static ContentType CreateSimpleContentType(string alias, string name, PropertyTypeCollection groupedCollection, PropertyTypeCollection nonGroupedCollection)
        {
            var contentType = CreateSimpleContentType(alias, name, groupedCollection);
            //now add the non-grouped properties
            nonGroupedCollection.ForEach(pt => contentType.AddPropertyType(pt));

            //ensure that nothing is marked as dirty
            contentType.ResetDirtyProperties(false);

            return contentType;
        }
Ejemplo n.º 46
0
        public static ContentType CreateSimpleContentType(string alias, string name, bool mandatory)
        {
            var contentType = new ContentType(-1)
            {
                Alias = alias,
                Name = name,
                Description = "ContentType used for simple text pages",
                Icon = ".sprTreeDoc3",
                Thumbnail = "doc2.png",
                SortOrder = 1,
                CreatorId = 0,
                Trashed = false
            };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "title", Name = "Title", Description = "", HelpText = "", Mandatory = mandatory, SortOrder = 1, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Description = "", HelpText = "", Mandatory = mandatory, SortOrder = 2, DataTypeDefinitionId = -87 });
            contentCollection.Add(new PropertyType(new Guid(), DataTypeDatabaseType.Ntext) { Alias = "author", Name = "Author", Description = "Name of the author", HelpText = "", Mandatory = mandatory, SortOrder = 3, DataTypeDefinitionId = -88 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });

            return contentType;
        }
        private ContentType CreateComponent()
        {
            var component = new ContentType(-1)
                                  {
                                      Alias = "component",
                                      Name = "Component",
                                      Description = "ContentType used for Component grouping",
                                      Icon = ".sprTreeDoc3",
                                      Thumbnail = "doc.png",
                                      SortOrder = 1,
                                      CreatorId = 0,
                                      Trashed = false
                                  };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType("test", DataTypeDatabaseType.Ntext) { Alias = "componentGroup", Name = "Component Group", Description = "", HelpText = "", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -88 });
            component.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Component", SortOrder = 1 });

            return component;
        }
Ejemplo n.º 48
0
        public static ContentType CreateAllTypesContentType(string alias, string name)
        {
            var contentType = new ContentType(-1)
                              {
                                  Alias = alias,
                                  Name = name,
                                  Description = "ContentType containing all standard DataTypes",
                                  Icon = ".sprTreeDoc3",
                                  Thumbnail = "doc.png",
                                  SortOrder = 1,
                                  CreatorId = 0,
                                  Trashed = false
                              };

            var contentCollection = new PropertyTypeCollection();
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.TrueFalse), DataTypeDatabaseType.Integer) { Alias = "isTrue", Name = "Is True or False", Mandatory = false, SortOrder = 1, DataTypeDefinitionId = -49 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.Integer), DataTypeDatabaseType.Integer) { Alias = "number", Name = "Number", Mandatory = false, SortOrder = 2, DataTypeDefinitionId = -51 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.TinyMCEv3), DataTypeDatabaseType.Ntext) { Alias = "bodyText", Name = "Body Text", Mandatory = false, SortOrder = 3, DataTypeDefinitionId = -87 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.Textbox), DataTypeDatabaseType.Nvarchar) { Alias = "singleLineText", Name = "Text String", Mandatory = false, SortOrder = 4, DataTypeDefinitionId = -88 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.TextboxMultiple), DataTypeDatabaseType.Ntext) { Alias = "multilineText", Name = "Multiple Text Strings", Mandatory = false, SortOrder = 5, DataTypeDefinitionId = -89 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.UploadField), DataTypeDatabaseType.Nvarchar) { Alias = "upload", Name = "Upload Field", Mandatory = false, SortOrder = 6, DataTypeDefinitionId = -90 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.NoEdit), DataTypeDatabaseType.Nvarchar) { Alias = "label", Name = "Label", Mandatory = false, SortOrder = 7, DataTypeDefinitionId = -92 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.DateTime), DataTypeDatabaseType.Date) { Alias = "dateTime", Name = "Date Time", Mandatory = false, SortOrder = 8, DataTypeDefinitionId = -36 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.ColorPicker), DataTypeDatabaseType.Nvarchar) { Alias = "colorPicker", Name = "Color Picker", Mandatory = false, SortOrder = 9, DataTypeDefinitionId = -37 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.FolderBrowser), DataTypeDatabaseType.Nvarchar) { Alias = "folderBrowser", Name = "Folder Browser", Mandatory = false, SortOrder = 10, DataTypeDefinitionId = -38 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.DropDownListMultiple), DataTypeDatabaseType.Nvarchar) { Alias = "ddlMultiple", Name = "Dropdown List Multiple", Mandatory = false, SortOrder = 11, DataTypeDefinitionId = -39 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.RadioButtonList), DataTypeDatabaseType.Nvarchar) { Alias = "rbList", Name = "Radio Button List", Mandatory = false, SortOrder = 12, DataTypeDefinitionId = -40 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.Date), DataTypeDatabaseType.Date) { Alias = "date", Name = "Date", Mandatory = false, SortOrder = 13, DataTypeDefinitionId = -41 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.DropDownList), DataTypeDatabaseType.Integer) { Alias = "ddl", Name = "Dropdown List", Mandatory = false, SortOrder = 14, DataTypeDefinitionId = -42 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.CheckBoxList), DataTypeDatabaseType.Nvarchar) { Alias = "chklist", Name = "Checkbox List", Mandatory = false, SortOrder = 15, DataTypeDefinitionId = -43 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.ContentPicker), DataTypeDatabaseType.Integer) { Alias = "contentPicker", Name = "Content Picker", Mandatory = false, SortOrder = 16, DataTypeDefinitionId = 1034 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.MediaPicker), DataTypeDatabaseType.Integer) { Alias = "mediaPicker", Name = "Media Picker", Mandatory = false, SortOrder = 17, DataTypeDefinitionId = 1035 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.MemberPicker), DataTypeDatabaseType.Integer) { Alias = "memberPicker", Name = "Member Picker", Mandatory = false, SortOrder = 18, DataTypeDefinitionId = 1036 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.UltraSimpleEditor), DataTypeDatabaseType.Ntext) { Alias = "simpleEditor", Name = "Ultra Simple Editor", Mandatory = false, SortOrder = 19, DataTypeDefinitionId = 1038 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.UltimatePicker), DataTypeDatabaseType.Ntext) { Alias = "ultimatePicker", Name = "Ultimate Picker", Mandatory = false, SortOrder = 20, DataTypeDefinitionId = 1039 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.RelatedLinks), DataTypeDatabaseType.Ntext) { Alias = "relatedLinks", Name = "Related Links", Mandatory = false, SortOrder = 21, DataTypeDefinitionId = 1040 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.Tags), DataTypeDatabaseType.Ntext) { Alias = "tags", Name = "Tags", Mandatory = false, SortOrder = 22, DataTypeDefinitionId = 1041 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.MacroContainer), DataTypeDatabaseType.Ntext) { Alias = "macroContainer", Name = "Macro Container", Mandatory = false, SortOrder = 23, DataTypeDefinitionId = 1042 });
            contentCollection.Add(new PropertyType(new Guid(Constants.PropertyEditors.ImageCropper), DataTypeDatabaseType.Ntext) { Alias = "imgCropper", Name = "Image Cropper", Mandatory = false, SortOrder = 24, DataTypeDefinitionId = 1043 });

            contentType.PropertyGroups.Add(new PropertyGroup(contentCollection) { Name = "Content", SortOrder = 1 });

            return contentType;
        }