I'm planning to develop a custom content provider that will expose media located at an external source. I think the media will be only documents and you should be able to navigate the complete tree structure from the external source and see eventual documents located in each folder.
Is the best approach to inherit MediaRepositoryDescriptor and the Documents to inherit MediaData? And also to use base("epi-cms/widget/HierarchicalList") for the component?
I would like for the documents to be able to be dragged-and-dropped from the widget as well as being selected from the content selector-dialog.
Another issue I'm not sure of is how to handle if the media is removed from the external source, will the broken link be caught by the link validator job or do you need to implement something to take care of this?
I have done a test where the type Document inherits from MediaData. When I open up the Content Selector I can see the documents but it's not possible to select any.
If I drag-and-drop the document into a list with link items the href is relative and it thinks it's located in Media. So it will return a 404-page.
What am I missing?
Thanks in advance!
Did you figure this out?I am looking to do something similar just for product images.
I have been looking at writing a content provider: https://world.episerver.com/blogs/Per-Magne-Skuseth/Dates/2014/11/content-providers-101--part-i-introduction-initialization-ui--identity-mapping/
You should check out the local media provider: https://world.episerver.com/blogs/Johan-Bjornfot/Dates1/2014/8/LocalMediaProvider/
The document in episerver edit mode says that it's not published yet, even though I'm doing this in code:
versionable.Status = VersionStatus.Published;
versionable.IsPendingPublish = false;
versionable.StartPublish = createdDate;
I'm suspecting that this is the reason why it's not selectable?
The reason that the items weren't selectable in dialogs where that parentlink was wrong.
I'm using MediaRepositoryDescriptor
My custom class inherits MediaData.