Files
plugin-embed/providers/base.py
Theenoro a6d8f3c2ee 0.0.1
2026-02-26 09:34:55 +01:00

34 lines
985 B
Python

import re
class EmbedProvider:
name = "base"
pattern = None
def __init__(self, config=None):
self.config = config or {}
def match(self, content):
if not self.pattern:
return content
return re.sub(self.pattern, self.replace, content)
def replace(self, match):
raise NotImplementedError("Provider replace() missing!")
def wrap_template(self, provider, embed_html):
return f'''
<div class="embed-consent" data-provider="{provider}">
<div class="embed-overlay">
<div class="embed-box">
<h3>External Content</h3>
<p>This content is provided by <strong>{provider}</strong> and may set cookies.</p>
<button class="embed-accept" onclick="acceptProvider('{provider}')">
Load Content
</button>
</div>
</div>
<template class="embed-template">
{embed_html}
</template>
</div>
'''