mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-02-09 09:16:41 +08:00
Adding a filter for editor templates
--HG-- extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4041360
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Orchard.Data;
|
||||
using Orchard.Models;
|
||||
using Orchard.Models.Driver;
|
||||
using Orchard.Models.Records;
|
||||
|
||||
namespace Orchard.Wikis.Models {
|
||||
public class WikiSettingsRecord : ContentPartRecord {
|
||||
public virtual bool AllowAnonymousEdits { get; set; }
|
||||
|
||||
[Required]
|
||||
public virtual string WikiEditTheme { get; set; }
|
||||
}
|
||||
|
||||
public class WikiSettingsHandler : ContentHandler {
|
||||
public WikiSettingsHandler(IRepository<WikiSettingsRecord> repository) {
|
||||
Filters.Add(new ActivatingFilter<ContentPartForRecord<WikiSettingsRecord>>("site"));
|
||||
Filters.Add(new StorageFilterForRecord<WikiSettingsRecord>(repository) { AutomaticallyCreateMissingRecord = true });
|
||||
Filters.Add(new TemplateFilterForRecord<WikiSettingsRecord>("WikiSettings"));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
using Orchard.Data;
|
||||
using Orchard.Models;
|
||||
using Orchard.Models.Driver;
|
||||
using Orchard.UI.Models;
|
||||
|
||||
namespace Orchard.Wikis.Models {
|
||||
public class WikiSettingsHandler : ContentHandler {
|
||||
public WikiSettingsHandler(IRepository<WikiSettingsRecord> repository) {
|
||||
Filters.Add(new ActivatingFilter<ContentPartForRecord<WikiSettingsRecord>>("site"));
|
||||
Filters.Add(new StorageFilterForRecord<WikiSettingsRecord>(repository) { AutomaticallyCreateMissingRecord = true });
|
||||
}
|
||||
|
||||
protected override void GetEditors(GetContentEditorsContext context) {
|
||||
var part = context.ContentItem.As<ContentPartForRecord<WikiSettingsRecord>>();
|
||||
if (part == null)
|
||||
return;
|
||||
|
||||
context.Editors.Add(ModelTemplate.For(part.Record, "WikiSettings"));
|
||||
}
|
||||
|
||||
protected override void UpdateEditors(UpdateContentContext context) {
|
||||
var part = context.ContentItem.As<ContentPartForRecord<WikiSettingsRecord>>();
|
||||
if (part == null)
|
||||
return;
|
||||
|
||||
context.Updater.TryUpdateModel(part.Record, "WikiSettings", null, null);
|
||||
context.Editors.Add(ModelTemplate.For(part.Record, "WikiSettings"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Orchard.Models.Records;
|
||||
|
||||
namespace Orchard.Wikis.Models {
|
||||
public class WikiSettingsRecord : ContentPartRecord {
|
||||
public virtual bool AllowAnonymousEdits { get; set; }
|
||||
|
||||
[Required]
|
||||
public virtual string WikiEditTheme { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -64,8 +64,7 @@
|
||||
<Compile Include="AdminMenu.cs" />
|
||||
<Compile Include="Controllers\AdminController.cs" />
|
||||
<Compile Include="Models\WikiPageHandler.cs" />
|
||||
<Compile Include="Models\WikiSettingsHandler.cs" />
|
||||
<Compile Include="Models\WikiSettingsRecord.cs" />
|
||||
<Compile Include="Models\WikiSettings.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
||||
Reference in New Issue
Block a user