mirror of
https://github.com/ArchiveBox/ArchiveBox.git
synced 2025-05-12 22:25:44 -04:00
37 lines
1.4 KiB
Python
37 lines
1.4 KiB
Python
__package__ = 'archivebox.plugantic'
|
|
|
|
|
|
from .base_hook import BaseHook, HookType
|
|
from ..config_stubs import AttrDict
|
|
|
|
|
|
class BaseReplayer(BaseHook):
|
|
"""Describes how to render an ArchiveResult in several contexts"""
|
|
|
|
hook_type: HookType = 'REPLAYER'
|
|
|
|
url_pattern: str = '*'
|
|
|
|
row_template: str = 'plugins/generic_replayer/templates/row.html'
|
|
embed_template: str = 'plugins/generic_replayer/templates/embed.html'
|
|
fullpage_template: str = 'plugins/generic_replayer/templates/fullpage.html'
|
|
|
|
# row_view: LazyImportStr = 'plugins.generic_replayer.views.row_view'
|
|
# embed_view: LazyImportStr = 'plugins.generic_replayer.views.embed_view'
|
|
# fullpage_view: LazyImportStr = 'plugins.generic_replayer.views.fullpage_view'
|
|
# icon_view: LazyImportStr = 'plugins.generic_replayer.views.get_icon'
|
|
# thumbnail_view: LazyImportStr = 'plugins.generic_replayer.views.get_icon'
|
|
|
|
def register(self, settings, parent_plugin=None):
|
|
# self._plugin = parent_plugin # for debugging only, never rely on this!
|
|
|
|
settings.REPLAYERS = getattr(settings, 'REPLAYERS', None) or AttrDict({})
|
|
settings.REPLAYERS[self.id] = self
|
|
|
|
super().register(settings, parent_plugin=parent_plugin)
|
|
|
|
# class MediaReplayer(BaseReplayer):
|
|
# name: str = 'MediaReplayer'
|
|
|
|
|
|
# MEDIA_REPLAYER = MediaReplayer()
|