FreshRSS/app/views/helpers/index/normal/entry_bottom.phtml

125 lines
5.1 KiB
PHTML

<?php
/** @var FreshRSS_View $this */
$sharing = array();
if (FreshRSS_Auth::hasAccess()) {
$sharing = FreshRSS_Context::$user_conf->sharing;
}
$bottomline_read = FreshRSS_Context::$user_conf->bottomline_read;
$bottomline_favorite = FreshRSS_Context::$user_conf->bottomline_favorite;
$bottomline_sharing = FreshRSS_Context::$user_conf->bottomline_sharing && (count($sharing) > 0);
$bottomline_labels = true; //TODO
$bottomline_tags = FreshRSS_Context::$user_conf->bottomline_tags;
$bottomline_date = FreshRSS_Context::$user_conf->bottomline_date;
$bottomline_link = FreshRSS_Context::$user_conf->bottomline_link;
?><ul class="horizontal-list bottom"><?php
if (FreshRSS_Auth::hasAccess()) {
if ($bottomline_read) {
?><li class="item manage"><?php
$arUrl = array('c' => 'entry', 'a' => 'read', 'params' => array('id' => $this->entry->id()));
if ($this->entry->isRead()) {
$arUrl['params']['is_read'] = 0;
}
?><a class="read" href="<?= Minz_Url::display($arUrl) ?>" title="<?= _t('conf.shortcut.mark_read') ?>"><?php
echo _i($this->entry->isRead() ? 'read' : 'unread'); ?></a><?php
?></li><?php
}
if ($bottomline_favorite) {
?><li class="item manage"><?php
$arUrl = array('c' => 'entry', 'a' => 'bookmark', 'params' => array('id' => $this->entry->id()));
if ($this->entry->isFavorite()) {
$arUrl['params']['is_favorite'] = 0;
}
?><a class="bookmark" href="<?= Minz_Url::display($arUrl) ?>" title="<?= _t('conf.shortcut.mark_favorite') ?>"><?php
echo _i($this->entry->isFavorite() ? 'starred' : 'non-starred'); ?></a><?php
?></li><?php
}
}
// @phpstan-ignore-next-line
if ($bottomline_labels) {
?><li class="item">
<div class="dropdown dynamictags">
<div id="dropdown-labels-<?= $this->entry->id() ?>" class="dropdown-target"></div>
<?= FreshRSS_Themes::alt('label') ?>
<a class="dropdown-toggle" href="#dropdown-labels-<?= $this->entry->id() ?>"><?php
echo _t('index.menu.tags');
?></a>
<ul class="dropdown-menu dropdown-menu-scrollable scrollbar-thin">
<li class="dropdown-close"><a href="#close"></a></li>
<!-- Ajax -->
</ul>
<div class="dropdown-close"><a href="#close"></a></div>
</div>
</li><?php
}
$tags = $bottomline_tags ? $this->entry->tags() : null;
if (!empty($tags)) {
?><li class="item">
<div class="dropdown">
<div id="dropdown-tags-<?= $this->entry->id() ?>" class="dropdown-target"></div>
<?= _i('tag') ?>
<a class="dropdown-toggle" href="#dropdown-tags-<?= $this->entry->id() ?>"><?php
echo _t('index.tag.related');
?></a>
<ul class="dropdown-menu">
<li class="dropdown-close"><a href="#close"></a></li><?php
foreach ($tags as $tag) {
?><li class="item"><a href="<?= _url('index', 'index', 'search', '#' . str_replace(' ', '+', htmlspecialchars_decode($tag, ENT_QUOTES))) ?>"><?= $tag ?></a></li><?php
} ?>
</ul>
</div>
</li><?php
}
?><li class="item"><?php
if ($bottomline_sharing) {
?><div class="dropdown">
<div id="dropdown-share-<?= $this->entry->id() ?>" class="dropdown-target"></div>
<a class="dropdown-toggle" href="#dropdown-share-<?= $this->entry->id() ?>">
<?= _i('share') ?>
<?= _t('index.share') ?>
</a>
<ul class="dropdown-menu">
<li class="dropdown-close"><a href="#close"></a></li>
<li class="dropdown-header"><?= _t('index.share') ?> <a href="<?= _url('configure', 'integration') ?>"><?= _i('configure') ?></a></li><?php
$id = $this->entry->id();
$link = $this->entry->link();
$title = $this->entry->title() . ' · ' . $this->feed->name();
foreach (FreshRSS_Context::$user_conf->sharing as $share_options) {
$share = FreshRSS_Share::get($share_options['type']);
if ($share === null) {
continue;
}
$cssClass = $share->isDeprecated() ? ' error' : '';
$share_options['id'] = $id;
$share_options['link'] = $link;
$share_options['title'] = $title;
$share->update($share_options);
?><li class="item share<?= $cssClass ?>">
<?php if ('GET' === $share->method()) {
if ($share->HTMLtag() !== 'button') {?>
<a target="_blank" rel="noreferrer" href="<?= $share->url() ?>" data-type="<?= $share->type() ?>"><?= $share->name() ?></a>
<?php } else { ?>
<button type="button" class="as-link" data-url="<?= $share->url() ?>" data-type="<?= $share->type() ?>" data-title="<?= htmlspecialchars($title) ?>"><?= $share->name() ?></button>
<?php
}
} else {?>
<a href="POST"><?= $share->name() ?></a>
<form method="POST" action="<?= $share->url() ?>" disabled="disabled">
<input type="hidden" value="<?= $link ?>" name="<?= $share->field() ?>"/>
</form>
<?php } ?>
</li><?php
}
?></ul>
</div>
<?php } ?>
</li><?php
if ($bottomline_date) {
?><li class="item date"><time datetime="<?= $this->entry->machineReadableDate() ?>"><?= $this->entry->date() ?></time>&nbsp;</li><?php
}
if ($bottomline_link) {
?><li class="item link"><a target="_blank" rel="noreferrer" href="<?= $this->entry->link() ?>" title="<?= _t('conf.shortcut.see_on_website') ?>"><?= _i('link') ?></a></li><?php
} ?>
</ul>