2015-12-13 22:21:02 +01:00
|
|
|
|
using Orchard.ContentManagement.Drivers;
|
2017-03-01 12:15:59 +01:00
|
|
|
|
using Orchard.ContentManagement.Handlers;
|
2015-12-13 22:21:02 +01:00
|
|
|
|
using Orchard.MediaLibrary.Models;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Orchard.MediaLibrary.Drivers {
|
|
|
|
|
|
public class AudioPartDriver : ContentPartDriver<AudioPart> {
|
|
|
|
|
|
protected override DriverResult Display(AudioPart part, string displayType, dynamic shapeHelper) {
|
|
|
|
|
|
return Combined(
|
|
|
|
|
|
ContentShape("Parts_Audio_Metadata", () => shapeHelper.Parts_Audio_Metadata()),
|
|
|
|
|
|
ContentShape("Parts_Audio_SummaryAdmin", () => shapeHelper.Parts_Audio_SummaryAdmin()),
|
|
|
|
|
|
ContentShape("Parts_Audio_Summary", () => shapeHelper.Parts_Audio_Summary()),
|
|
|
|
|
|
ContentShape("Parts_Audio", () => shapeHelper.Parts_Audio())
|
2025-10-17 16:21:29 +02:00
|
|
|
|
);
|
2015-12-13 22:21:02 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected override void Exporting(AudioPart part, ContentManagement.Handlers.ExportContentContext context) {
|
|
|
|
|
|
context.Element(part.PartDefinition.Name).SetAttributeValue("Length", part.Length);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected override void Importing(AudioPart part, ContentManagement.Handlers.ImportContentContext context) {
|
|
|
|
|
|
// Don't do anything if the tag is not specified.
|
|
|
|
|
|
if (context.Data.Element(part.PartDefinition.Name) == null) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
context.ImportAttribute(part.PartDefinition.Name, "Length", length =>
|
|
|
|
|
|
part.Length = int.Parse(length)
|
|
|
|
|
|
);
|
|
|
|
|
|
}
|
2025-10-17 16:21:29 +02:00
|
|
|
|
|
2017-03-01 12:15:59 +01:00
|
|
|
|
protected override void Cloning(AudioPart originalPart, AudioPart clonePart, CloneContentContext context) {
|
|
|
|
|
|
clonePart.Length = originalPart.Length;
|
|
|
|
|
|
}
|
2015-12-13 22:21:02 +01:00
|
|
|
|
}
|
2013-04-18 10:59:15 -07:00
|
|
|
|
}
|