using Orchard.Commands; using Orchard.ContentManagement; using Orchard.ContentManagement.Aspects; using Orchard.Core.Common.Models; using Orchard.Core.Navigation.Models; using Orchard.Core.Routable.Models; using Orchard.Environment.Extensions; using Orchard.Security; namespace Orchard.DevTools.Commands { [OrchardFeature("Profiling")] public class ProfilingCommands : DefaultOrchardCommandHandler { private readonly IContentManager _contentManager; private readonly IMembershipService _membershipService; public ProfilingCommands(IContentManager contentManager, IMembershipService membershipService) { _contentManager = contentManager; _membershipService = membershipService; } [CommandName("add profiling data")] public string AddProfilingData() { var admin = _membershipService.GetUser("admin"); for (var index = 0; index != 5; ++index) { var pageName = "page" + index; var page = _contentManager.Create("Page", VersionOptions.Draft); page.As().Owner = admin; page.As().Slug = pageName; page.As().Path = pageName; page.As().Title = pageName; page.As().Text = pageName; page.As().OnMainMenu = true; page.As().MenuPosition = "5." + index; page.As().MenuText = pageName; _contentManager.Publish(page); var blogName = "blog" + index; var blog = _contentManager.New("Blog"); blog.As().Owner = admin; blog.As().Slug = blogName; blog.As().Path = blogName; blog.As().Title = blogName; blog.As().OnMainMenu = true; blog.As().MenuPosition = "6." + index; blog.As().MenuText = blogName; _contentManager.Create(blog); // "BlogPost" content type can't be created w/out http context at the moment //for (var index2 = 0; index2 != 5; ++index2) { // var postName = "post" + index; // var post = _contentManager.New("BlogPost"); // post.As().Owner = admin; // post.As().Container = blog; // post.As().Slug = postName; // post.As().Title = postName; // post.As().Text = postName; // _contentManager.Create(post); //} } return "AddProfilingData completed"; } } }