feat: PeerTube integration — alternate audio/video labels, FilePond pools, shared SMTP credentials, channel by name, test button, resumable upload, embed improvements, fix alt labels/curl_close/deprecation

This commit is contained in:
Pontoporeia
2026-05-11 10:47:33 +02:00
parent 28ef35dce5
commit 83a5a508ea
18 changed files with 748 additions and 261 deletions

View File

@@ -0,0 +1,35 @@
<?php
/**
* peertube-embed.php
*
* Renders a PeerTube video/audio embed iframe from a stored peertube_ids:{uuid} value.
*
* Expected variables:
* string $peertubeUuid — the PeerTube video shortUUID
* string $title — title attribute for the iframe
* string $instanceUrl — base URL of the PeerTube instance (e.g. https://videos.erg.be)
* int $width — iframe width (default 560)
* int $height — iframe height (default 315)
*/
$peertubeUuid = $peertubeUuid ?? '';
$title = $title ?? 'PeerTube video';
$instanceUrl = $instanceUrl ?? '';
$width = $width ?? 560;
$height = $height ?? 315;
if ($peertubeUuid === '' || $instanceUrl === '') {
return;
}
$embedUrl = rtrim($instanceUrl, '/') . '/videos/embed/' . $peertubeUuid;
?>
<iframe
title="<?= htmlspecialchars($title) ?>"
width="<?= (int)$width ?>"
height="<?= (int)$height ?>"
src="<?= htmlspecialchars($embedUrl) ?>"
style="border: 0px;"
allow="fullscreen"
sandbox="allow-same-origin allow-scripts allow-popups allow-forms"
></iframe>