private static ContentType CreateMixin()
        {
            var mixin = new Core.Models.ContentType(-1)
            {
                Id             = 3,
                Alias          = "Mixin",
                Name           = "Some mixin",
                AllowedAsRoot  = false,
                PropertyGroups = new PropertyGroupCollection(new[]
                {
                    new PropertyGroup
                    {
                        Name          = "Mixin tab",
                        PropertyTypes = new PropertyTypeCollection(new[]
                        {
                            new PropertyType(new DataTypeDefinition(-1, "Umbraco.Number"), "Number")
                            {
                                Alias = "mixinProp",
                                Name  = "Mixin prop",
                            }
                        })
                    }
                }),
                Description = "A description of some mixin type",
                Icon        = "privateMemberIcon.gif",
                Thumbnail   = "privateMemberThumb.png",
            };

            return(mixin);
        }
        private static ContentType CreateUmbracoContentType()
        {
            var umbracoContentType = new Core.Models.ContentType(1)
            {
                Id                  = 2,
                Alias               = "SomeDocumentType",
                Name                = "Some document type",
                AllowedAsRoot       = true,
                AllowedContentTypes = new[] { new ContentTypeSort(new Lazy <int>(() => 3), 1, "SomeOtherDocType"), },
                AllowedTemplates    = new[] { new Template("", "", "ATemplate")
                                              {
                                                  Id = 1
                                              }, new Template("", "", "AnotherTemplate")
                                              {
                                                  Id = 2
                                              }, },
                PropertyGroups = new PropertyGroupCollection(new[]
                {
                    new PropertyGroup
                    {
                        Name          = "A tab",
                        PropertyTypes = new PropertyTypeCollection(new[]
                        {
                            new PropertyType(new DataTypeDefinition(-1, "Umbraco.Richtext"), "Richtext editor")
                            {
                                Alias       = "someProperty",
                                Name        = "Some property",
                                Description = "A description"
                            },
                            new PropertyType(new DataTypeDefinition(-1, "Umbraco.Richtext"), "Richtext editor")
                            {
                                Alias       = "anotherProperty",
                                Name        = "Another property",
                                Description = "Another description"
                            }
                        })
                    },
                    new PropertyGroup(new PropertyTypeCollection(new[]
                    {
                        new PropertyType(new DataTypeDefinition(-1, "Umbraco.Number"), "Numeric")
                        {
                            Alias = "tablessProperty",
                            Name  = "Tabless property"
                        },
                    }))
                }),
                Description = "A description of some document type",
                Icon        = "privateMemberIcon.gif",
                Thumbnail   = "privateMemberThumb.png",
            };

            umbracoContentType.SetDefaultTemplate(umbracoContentType.AllowedTemplates.First());
            umbracoContentType.AddContentType(CreateMaster());
            umbracoContentType.AddContentType(CreateMixin());

            return(umbracoContentType);
        }
        private static ContentType CreateMaster()
        {
            var master = new Core.Models.ContentType(-1)
            {
                Alias         = "RootDocType",
                Name          = "Root document type",
                AllowedAsRoot = true,
                Id            = 1
            };

            return(master);
        }
 private static ContentType CreateMixin()
 {
     var mixin = new Core.Models.ContentType(-1)
     {
         Id = 3,
         Alias = "Mixin",
         Name = "Some mixin",
         AllowedAsRoot = false,
         PropertyGroups = new PropertyGroupCollection(new[]
         {
             new PropertyGroup
             {
                 Name = "Mixin tab",
                 PropertyTypes = new PropertyTypeCollection(new[]
                 {
                     new PropertyType(new DataTypeDefinition(-1, "Umbraco.Number"), "Number")
                     {
                         Alias = "mixinProp",
                         Name = "Mixin prop",
                     }
                 })
             }
         }),
         Description = "A description of some mixin type",
         Icon = "privateMemberIcon.gif",
         Thumbnail = "privateMemberThumb.png",
     };
     return mixin;
 }
 private static ContentType CreateMaster()
 {
     var master = new Core.Models.ContentType(-1)
     {
         Alias = "RootDocType",
         Name = "Root document type",
         AllowedAsRoot = true,
         Id = 1
     };
     return master;
 }
        private static ContentType CreateUmbracoContentType()
        {
            var umbracoContentType = new Core.Models.ContentType(1)
            {
                Id = 2,
                Alias = "SomeDocumentType",
                Name = "Some document type",
                AllowedAsRoot = true,
                AllowedContentTypes = new[] {new ContentTypeSort(new Lazy<int>(() => 3), 1, "SomeOtherDocType"),},
                AllowedTemplates = new[] {new Template("", "", "ATemplate") { Id = 1 }, new Template("", "", "AnotherTemplate") { Id = 2 },},
                PropertyGroups = new PropertyGroupCollection(new[]
                {
                    new PropertyGroup
                    {
                        Name = "A tab",
                        PropertyTypes = new PropertyTypeCollection(new[]
                        {
                            new PropertyType(new DataTypeDefinition(-1, "Umbraco.Richtext"), "Richtext editor")
                            {
                                Alias = "someProperty",
                                Name = "Some property",
                                Description = "A description"
                            },
                            new PropertyType(new DataTypeDefinition(-1, "Umbraco.Richtext"), "Richtext editor")
                            {
                                Alias = "anotherProperty",
                                Name = "Another property",
                                Description = "Another description"
                            }
                        })
                    },
                    new PropertyGroup(new PropertyTypeCollection(new[]
                    {
                        new PropertyType(new DataTypeDefinition(-1, "Umbraco.Number"), "Numeric")
                        {
                            Alias = "tablessProperty",
                            Name = "Tabless property"
                        },
                    }))
                }),
                Description = "A description of some document type",
                Icon = "privateMemberIcon.gif",
                Thumbnail = "privateMemberThumb.png",
            };
            umbracoContentType.SetDefaultTemplate(umbracoContentType.AllowedTemplates.First());
            umbracoContentType.AddContentType(CreateMaster());
            umbracoContentType.AddContentType(CreateMixin());

            return umbracoContentType;
        }