mastodonapi.php aktualisiert
This commit is contained in:
parent
6e6c2cf102
commit
99c19422db
1 changed files with 26 additions and 21 deletions
|
|
@ -2,7 +2,7 @@
|
||||||
// MastodonAPI extension, https://codeberg.org/simonpipe/yellow-mastodonapi
|
// MastodonAPI extension, https://codeberg.org/simonpipe/yellow-mastodonapi
|
||||||
|
|
||||||
class YellowMastodonAPI {
|
class YellowMastodonAPI {
|
||||||
const VERSION = "0.5.1";
|
const VERSION = "0.3";
|
||||||
public $yellow;
|
public $yellow;
|
||||||
|
|
||||||
// Initialisierung
|
// Initialisierung
|
||||||
|
|
@ -199,29 +199,34 @@ class YellowMastodonAPI {
|
||||||
return trim(preg_replace('/[^a-z0-9-]+/', '', $slug), '-');
|
return trim(preg_replace('/[^a-z0-9-]+/', '', $slug), '-');
|
||||||
}
|
}
|
||||||
|
|
||||||
private function generateMarkdown($title, $slug, $dateTime, $html, $origAuthor, $origUrl, $yellowAuthor, $yellowTag, $images = [], $alts = []) {
|
private function generateMarkdown($title, $slug, $dateTime, $html, $origAuthor, $origUrl, $yellowAuthor, $yellowTag, $images = [], $alts = []) {
|
||||||
$date = new DateTime($dateTime);
|
$date = new DateTime($dateTime);
|
||||||
$formattedDate = $date->format('Y-m-d');
|
$formattedDate = $date->format('Y-m-d');
|
||||||
$formattedTime = $date->format('H:i:s');
|
$formattedTime = $date->format('H:i:s');
|
||||||
|
|
||||||
$content = strip_tags($html);
|
$content = strip_tags($html);
|
||||||
$content = html_entity_decode($content, ENT_QUOTES | ENT_HTML5, 'UTF-8');
|
$content = html_entity_decode($content, ENT_QUOTES | ENT_HTML5, 'UTF-8');
|
||||||
$content = trim(preg_replace('/\s+/', ' ', $content));
|
$content = trim(preg_replace('/\s+/', ' ', $content));
|
||||||
|
|
||||||
$imageMarkdown = '';
|
$imageMarkdown = '';
|
||||||
foreach ($images as $i => $filename) {
|
foreach ($images as $i => $filename) {
|
||||||
$alt = isset($alts[$i]) ? $alts[$i] : '';
|
$alt = isset($alts[$i]) ? htmlspecialchars($alts[$i], ENT_QUOTES) : '';
|
||||||
$imageMarkdown .= "\n\n";
|
$imageMarkdown .= "\n<img src=\"/media/images/" . $filename . "\" alt=\"" . $alt . "\"/>\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
$featuredImage = '';
|
||||||
|
$featuredImageAlt = '';
|
||||||
|
|
||||||
|
if (!empty($images)) {
|
||||||
|
$featuredImage = "Image: " . $images[0] . "\n";
|
||||||
|
if (isset($alts[0]) && !empty($alts[0])) {
|
||||||
|
$featuredImageAlt = "ImageAlt: " . htmlspecialchars($alts[0], ENT_QUOTES) . "\n";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$featuredImage = '';
|
$htmlSafeAuthorName = str_replace('@', '@', $origAuthor);
|
||||||
if (!empty($images)) {
|
|
||||||
$featuredImage = "Image: " . $images[0] . "\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
$htmlSafeAuthorName = str_replace('@', '@', $origAuthor);
|
return <<<MD
|
||||||
|
|
||||||
return <<<MD
|
|
||||||
---
|
---
|
||||||
Title: $title
|
Title: $title
|
||||||
TitleSlug: $slug
|
TitleSlug: $slug
|
||||||
|
|
@ -229,14 +234,14 @@ Published: $formattedDate $formattedTime
|
||||||
Author: $yellowAuthor
|
Author: $yellowAuthor
|
||||||
Layout: blog
|
Layout: blog
|
||||||
Tag: $yellowTag
|
Tag: $yellowTag
|
||||||
$featuredImage---
|
$featuredImage$featuredImageAlt---
|
||||||
$imageMarkdown
|
$imageMarkdown
|
||||||
> "$content"
|
> "$content"
|
||||||
>
|
>
|
||||||
> — <a target="_blank" href="$origUrl">$htmlSafeAuthorName</a>
|
> — <a target="_blank" href="$origUrl">$htmlSafeAuthorName</a>
|
||||||
|
|
||||||
MD;
|
MD;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getYellowConfig() {
|
private function getYellowConfig() {
|
||||||
return $this->yellow ? $this->yellow->system : null;
|
return $this->yellow ? $this->yellow->system : null;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue