class TheTVDBMetadataSchema(MetadataSchema): search_resolve = fields.Boolean() search_language = fields.String( enum=["en", "da"], enum_names=[ "English", "Danish" ]) # choices, should also try to change language to local names episodic = fields.Boolean() # Resolve to episodes
class ListingSchema(Schema): name = fields.String(required=True) display_name = fields.String(default="", ui_schema={"ui:title": "Name"}) levels = fields.Nested(ListingLevelSchema, many=True, default=list) histories = fields.List( RelatedPluginField(plugin_type=HistoryPlugin), many=True, default=list ) rebuild_automatically = fields.Boolean(default=True)
class FrontpageConfigSourceSchema(Schema): docChain = fields.Nested(FrontpageConfigDocChainSchema, many=True, required=True) contentType = fields.String( enum=settings.TRIDENTSTREAM_CONTENT_TYPES, enum_names=settings.TRIDENTSTREAM_CONTENT_TYPES_NAMES, default="", ) template = fields.String( enum=settings.TRIDENTSTREAM_TEMPLATES, enum_names=settings.TRIDENTSTREAM_TEMPLATES_NAMES, default="cover", required=True, ) query = fields.Nested(FrontpageConfigSourceQuerySchema, many=True) enabled = fields.Boolean()
class ListingLevelSchema(Schema): depth = fields.Integer(required=True) listing_depth = fields.Integer(required=True) metadata_handlers = fields.List( RelatedPluginField(plugin_type=MetadataHandlerPlugin), many=True, default=list ) indexer = RelatedPluginField(plugin_type=IndexerPlugin, required=False) content_type = fields.String( enum=settings.TRIDENTSTREAM_CONTENT_TYPES, enum_names=settings.TRIDENTSTREAM_CONTENT_TYPES_NAMES, default="", ) tags = fields.List( RelatedPluginField(plugin_type=TagPlugin), many=True, default=list ) background_recheck = fields.Boolean(default=False) default_ordering = fields.String(default="")
class FrontpageConfigSchema(Schema): title = fields.String(required=True) sources = fields.Nested(FrontpageConfigSourceSchema, many=True, required=True) enabled = fields.Boolean()
class WebinterfaceSchema(Schema): mount_at_root = fields.Boolean() config = RelatedPluginField(plugin_type=ConfigPlugin)
class StoreSchema(ListingSchema): searchers = fields.Nested(StoreSearcherSchema, many=True, default=list) rebuild_automatically = fields.Boolean(default=False)
class Magnet2TorrentMagnetResolverSchema(Schema): url = fields.String(required=False, ui_schema={"ui:title": "External Magnet2Torrent URL"}) use_external_server = fields.Boolean(default=False, title="Use External Server")