mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
ShapePart Import/Export.
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.UI;
|
||||
using System.Xml.Linq;
|
||||
using Orchard.Compilation.Razor;
|
||||
using Orchard.ContentManagement;
|
||||
using Orchard.ContentManagement.Drivers;
|
||||
using Orchard.ContentManagement.Handlers;
|
||||
using Orchard.Data;
|
||||
using Orchard.Localization;
|
||||
using Orchard.Templates.Helpers;
|
||||
@@ -62,6 +65,21 @@ namespace Orchard.Templates.Drivers {
|
||||
return ContentShape("Parts_Shape_Edit", () => shapeHelper.EditorTemplate(TemplateName: "Parts.Shape", Model: viewModel, Prefix: Prefix));
|
||||
}
|
||||
|
||||
protected override void Exporting(ShapePart part, ExportContentContext context) {
|
||||
context.Element(part.PartDefinition.Name).SetAttributeValue("Name", part.Name);
|
||||
context.Element(part.PartDefinition.Name).SetAttributeValue("Language", part.Language);
|
||||
context.Element(part.PartDefinition.Name).Add(new XCData(part.Template));
|
||||
}
|
||||
|
||||
protected override void Importing(ShapePart part, ImportContentContext context) {
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Name", x => part.Name = x);
|
||||
context.ImportAttribute(part.PartDefinition.Name, "Language", x => part.Language = x);
|
||||
var shapeElement = context.Data.Element(part.PartDefinition.Name);
|
||||
|
||||
if(shapeElement != null)
|
||||
part.Template = shapeElement.Value;
|
||||
}
|
||||
|
||||
private bool ValidateShapeName(string name, IUpdateModel updater) {
|
||||
if (!string.IsNullOrWhiteSpace(name) &&
|
||||
name[0].IsLetter() &&
|
||||
|
Reference in New Issue
Block a user