diff --git a/src/Orchard.Web/Core/Navigation/Commands/MenuCommands.cs b/src/Orchard.Web/Core/Navigation/Commands/MenuCommands.cs new file mode 100644 index 000000000..008145599 --- /dev/null +++ b/src/Orchard.Web/Core/Navigation/Commands/MenuCommands.cs @@ -0,0 +1,38 @@ +using Orchard.Commands; +using Orchard.ContentManagement; +using Orchard.Core.Navigation.Models; + +namespace Orchard.Core.Navigation.Commands { + public class MenuCommands : DefaultOrchardCommandHandler { + private readonly IContentManager _contentManager; + + public MenuCommands(IContentManager contentManager) { + _contentManager = contentManager; + } + + [OrchardSwitch] + public string MenuPosition { get; set; } + + [OrchardSwitch] + public string MenuText { get; set; } + + [OrchardSwitch] + public string Url { get; set; } + + [OrchardSwitch] + public bool OnMainMenu { get; set; } + + [CommandName("menuitem create")] + [CommandHelp("menuitem create /MenuPosition: /MenuText: /Url: [/OnMainMenu:true|false]\r\n\t" + "Creates a new menu item")] + [OrchardSwitches("MenuPosition,MenuText,Url,OnMainMenu")] + public void Create() { + var menuItem = _contentManager.Create("MenuItem"); + menuItem.As().MenuPosition = MenuPosition; + menuItem.As().MenuText = T(MenuText).ToString(); + menuItem.As().OnMainMenu = OnMainMenu; + menuItem.As().Url = Url; + + Context.Output.WriteLine(T("Menu item created successfully.").Text); + } + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Core/Orchard.Core.csproj b/src/Orchard.Web/Core/Orchard.Core.csproj index 198aed3e4..d8c4803ee 100644 --- a/src/Orchard.Web/Core/Orchard.Core.csproj +++ b/src/Orchard.Web/Core/Orchard.Core.csproj @@ -104,6 +104,7 @@ + diff --git a/src/Orchard.Web/Modules/Orchard.Pages/Commands/PageCommands.cs b/src/Orchard.Web/Modules/Orchard.Pages/Commands/PageCommands.cs index 228fc0242..27986e60c 100644 --- a/src/Orchard.Web/Modules/Orchard.Pages/Commands/PageCommands.cs +++ b/src/Orchard.Web/Modules/Orchard.Pages/Commands/PageCommands.cs @@ -89,7 +89,7 @@ Modules are created by other users of Orchard just like you so if you feel up to _contentManager.Publish(page); } - Context.Output.WriteLine(T("Page Created successfully.").Text); + Context.Output.WriteLine(T("Page created successfully.").Text); } } } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Setup/Recipes/blog.recipe.xml b/src/Orchard.Web/Modules/Orchard.Setup/Recipes/blog.recipe.xml index 78e0ad859..46b2d26cf 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/Recipes/blog.recipe.xml +++ b/src/Orchard.Web/Modules/Orchard.Setup/Recipes/blog.recipe.xml @@ -45,6 +45,7 @@ feature enable Orchard.Experimental.TestingLists page create /Slug:"welcome-to-orchard" /Title:"Welcome to Orchard!" /Path:"welcome-to-orchard" /Homepage:true /Publish:true /UseWelcomeText:true + menuitem create /MenuPosition:"1" /MenuText:"Home" /Url:"" /OnMainMenu:true diff --git a/src/Orchard.Web/Modules/Orchard.Setup/Recipes/cms.recipe.xml b/src/Orchard.Web/Modules/Orchard.Setup/Recipes/cms.recipe.xml index f9e1fb267..cfabc15e2 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/Recipes/cms.recipe.xml +++ b/src/Orchard.Web/Modules/Orchard.Setup/Recipes/cms.recipe.xml @@ -41,6 +41,7 @@ feature enable Orchard.Experimental.TestingLists page create /Slug:"welcome-to-orchard" /Title:"Welcome to Orchard!" /Path:"welcome-to-orchard" /Homepage:true /Publish:true /UseWelcomeText:true + menuitem create /MenuPosition:"1" /MenuText:"Home" /Url:"" /OnMainMenu:true diff --git a/src/Orchard.Web/Modules/Orchard.Setup/Recipes/minimal.recipe.xml b/src/Orchard.Web/Modules/Orchard.Setup/Recipes/minimal.recipe.xml index 025ae5caf..bed9494e1 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/Recipes/minimal.recipe.xml +++ b/src/Orchard.Web/Modules/Orchard.Setup/Recipes/minimal.recipe.xml @@ -41,6 +41,7 @@ feature enable Orchard.Experimental.TestingLists page create /Slug:"welcome-to-orchard" /Title:"Welcome to Orchard!" /Path:"welcome-to-orchard" /Homepage:true /Publish:true /UseWelcomeText:true + menuitem create /MenuPosition:"1" /MenuText:"Home" /Url:"" /OnMainMenu:true diff --git a/src/Orchard.Web/Modules/Orchard.Setup/Services/SetupService.cs b/src/Orchard.Web/Modules/Orchard.Setup/Services/SetupService.cs index be7d32e32..c256931c9 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/Services/SetupService.cs +++ b/src/Orchard.Web/Modules/Orchard.Setup/Services/SetupService.cs @@ -270,13 +270,6 @@ namespace Orchard.Setup.Services { contentManager.Publish(tripelThird); } - // add a menu item for the shiny new home page - var menuItem = contentManager.Create("MenuItem"); - menuItem.As().MenuPosition = "1"; - menuItem.As().MenuText = T("Home").ToString(); - menuItem.As().OnMainMenu = true; - menuItem.As().Url = ""; - //null check: temporary fix for running setup in command line if (HttpContext.Current != null) { authenticationService.SignIn(user, true);