mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-24 13:33:34 +08:00
Retiring ContentItemViewModel
...and all that entails - things like IZone and IZoneCollection are barely roughed in --HG-- branch : theming
This commit is contained in:
@@ -3,6 +3,7 @@ using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using Orchard.Core.Settings.Models;
|
||||
using Orchard.Core.Settings.ViewModels;
|
||||
using Orchard.DisplayManagement;
|
||||
using Orchard.Localization;
|
||||
using Orchard.ContentManagement;
|
||||
using Orchard.Localization.Services;
|
||||
@@ -16,25 +17,30 @@ namespace Orchard.Core.Settings.Controllers {
|
||||
private readonly ICultureManager _cultureManager;
|
||||
public IOrchardServices Services { get; private set; }
|
||||
|
||||
public AdminController(ISiteService siteService, IOrchardServices services, ICultureManager cultureManager) {
|
||||
public AdminController(
|
||||
ISiteService siteService,
|
||||
IOrchardServices services,
|
||||
ICultureManager cultureManager,
|
||||
IShapeHelperFactory shapeHelperFactory) {
|
||||
_siteService = siteService;
|
||||
_cultureManager = cultureManager;
|
||||
Services = services;
|
||||
T = NullLocalizer.Instance;
|
||||
}
|
||||
|
||||
dynamic Shape { get; set; }
|
||||
public Localizer T { get; set; }
|
||||
|
||||
public ActionResult Index(string tabName) {
|
||||
if (!Services.Authorizer.Authorize(Permissions.ManageSettings, T("Not authorized to manage settings")))
|
||||
return new HttpUnauthorizedResult();
|
||||
|
||||
var site = _siteService.GetSiteSettings().As<SiteSettingsPart>();
|
||||
var model = new SettingsIndexViewModel {
|
||||
Site = _siteService.GetSiteSettings().As<SiteSettingsPart>(),
|
||||
Site = Services.ContentManager.BuildEditorModel(site),
|
||||
SiteCultures = _cultureManager.ListCultures()
|
||||
};
|
||||
model.ViewModel = Services.ContentManager.BuildEditorShape(model.Site);
|
||||
return View(model);
|
||||
return View(Shape.Model(model));
|
||||
}
|
||||
|
||||
[HttpPost, ActionName("Index")]
|
||||
@@ -42,11 +48,12 @@ namespace Orchard.Core.Settings.Controllers {
|
||||
if (!Services.Authorizer.Authorize(Permissions.ManageSettings, T("Not authorized to manage settings")))
|
||||
return new HttpUnauthorizedResult();
|
||||
|
||||
var viewModel = new SettingsIndexViewModel { Site = _siteService.GetSiteSettings().As<SiteSettingsPart>() };
|
||||
viewModel.ViewModel = Services.ContentManager.UpdateEditorShape(viewModel.Site.ContentItem, this);
|
||||
var site = _siteService.GetSiteSettings().As<SiteSettingsPart>();
|
||||
var model = new SettingsIndexViewModel { Site = Services.ContentManager.UpdateEditorModel(site, this) };
|
||||
|
||||
if (!TryUpdateModel(viewModel)) {
|
||||
return View(viewModel);
|
||||
if (!ModelState.IsValid) {
|
||||
Services.TransactionManager.Cancel();
|
||||
return View(Shape.Model(model));
|
||||
}
|
||||
|
||||
Services.Notifier.Information(T("Settings updated"));
|
||||
@@ -58,15 +65,15 @@ namespace Orchard.Core.Settings.Controllers {
|
||||
if (!Services.Authorizer.Authorize(Permissions.ManageSettings, T("Not authorized to manage settings")))
|
||||
return new HttpUnauthorizedResult();
|
||||
|
||||
var viewModel = new SiteCulturesViewModel {
|
||||
var model = new SiteCulturesViewModel {
|
||||
CurrentCulture = _cultureManager.GetCurrentCulture(HttpContext),
|
||||
SiteCultures = _cultureManager.ListCultures(),
|
||||
};
|
||||
viewModel.AvailableSystemCultures = CultureInfo.GetCultures(CultureTypes.SpecificCultures)
|
||||
model.AvailableSystemCultures = CultureInfo.GetCultures(CultureTypes.SpecificCultures)
|
||||
.Select(ci => ci.Name)
|
||||
.Where(s => !viewModel.SiteCultures.Contains(s));
|
||||
.Where(s => !model.SiteCultures.Contains(s));
|
||||
|
||||
return View(viewModel);
|
||||
return View(Shape.Model(model));
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
|
Reference in New Issue
Block a user