mirror of
https://github.com/FreshRSS/FreshRSS.git
synced 2026-01-24 21:27:56 -05:00
* Dynamic OPML draft #fix https://github.com/FreshRSS/FreshRSS/issues/4191 * Export dynamic OPML http://opml.org/spec2.opml#1629043127000 * Restart with simpler approach * Minor revert * Export dynamic OPML also for single feeds * Special category type for importing dynamic OPML * Parameter for excludeMutedFeeds * Details * More draft * i18n * Fix update * Draft manual import working * Working manual refresh * Draft automatic update * Working Web refresh + fixes * Import/export dynamic OPML settings * Annoying numerous lines in SQL logs * Fix minor JavaScript error * Fix auto adding new columns * Add require * Add missing 🗲 * Missing space * Disable adding new feeds to dynamic categories * Link from import * i18n typo * Improve theme icon function * Fix pink-dark
89 lines
3.2 KiB
PHTML
89 lines
3.2 KiB
PHTML
<?php
|
|
/** @var FreshRSS_View $this */
|
|
FreshRSS::preLayout();
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html lang="<?= FreshRSS_Context::$user_conf->language ?>" xml:lang="<?= FreshRSS_Context::$user_conf->language ?>"<?php
|
|
if (_t('gen.dir') === 'rtl') {
|
|
echo ' dir="rtl" class="rtl"';
|
|
}
|
|
?>>
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="initial-scale=1.0" />
|
|
<?= FreshRSS_View::headStyle() ?>
|
|
<script id="jsonVars" type="application/json">
|
|
<?php $this->renderHelper('javascript_vars'); ?>
|
|
</script>
|
|
<?= FreshRSS_View::headScript() ?>
|
|
<link rel="manifest" href="<?= Minz_Url::display('/themes/manifest.json') ?>" />
|
|
<link rel="shortcut icon" id="favicon" type="image/x-icon" sizes="16x16 64x64" href="<?= Minz_Url::display('/favicon.ico') ?>" />
|
|
<link rel="icon msapplication-TileImage apple-touch-icon" type="image/png" sizes="256x256" href="<?= Minz_Url::display('/themes/icons/favicon-256.png') ?>" />
|
|
<link rel="apple-touch-icon" href="<?= Minz_Url::display('/themes/icons/apple-touch-icon.png') ?>" />
|
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
|
|
<meta name="apple-mobile-web-app-title" content="<?= FreshRSS_Context::$system_conf->title ?>">
|
|
<meta name="msapplication-TileColor" content="#FFF" />
|
|
<meta name="theme-color" content="#FFF" />
|
|
<?php if (!FreshRSS_Context::$system_conf->allow_referrer) { ?>
|
|
<meta name="referrer" content="never" />
|
|
<?php } ?>
|
|
<?= FreshRSS_View::headTitle() ?>
|
|
<?php
|
|
$url_base = Minz_Request::currentRequest();
|
|
if ($this->rss_title != '') {
|
|
$url_rss = $url_base;
|
|
$url_rss['a'] = 'rss';
|
|
unset($url_rss['params']['rid']);
|
|
if (FreshRSS_Context::$user_conf->since_hours_posts_per_rss) {
|
|
$url_rss['params']['hours'] = FreshRSS_Context::$user_conf->since_hours_posts_per_rss;
|
|
}
|
|
?>
|
|
<link rel="alternate" type="application/rss+xml" title="<?= $this->rss_title ?>" href="<?= Minz_Url::display($url_rss) ?>" />
|
|
<?php } if (FreshRSS_Context::isAll() || FreshRSS_Context::isCategory() || FreshRSS_Context::isFeed()) {
|
|
$opml_rss = $url_base;
|
|
$opml_rss['a'] = 'opml';
|
|
unset($opml_rss['params']['rid']);
|
|
?>
|
|
<link rel="outline" type="text/x-opml" title="OPML" href="<?= Minz_Url::display($opml_rss) ?>" />
|
|
<?php } if (FreshRSS_Context::$system_conf->allow_robots) { ?>
|
|
<meta name="description" content="<?= htmlspecialchars(FreshRSS_Context::$name . ' | ' . FreshRSS_Context::$description, ENT_COMPAT, 'UTF-8') ?>" />
|
|
<?php } else { ?>
|
|
<meta name="robots" content="noindex,nofollow" />
|
|
<?php } ?>
|
|
</head>
|
|
<body class="<?= Minz_Request::actionName() ?>">
|
|
<?php
|
|
if (!Minz_Request::param('ajax')) {
|
|
flush();
|
|
$this->partial('header');
|
|
}
|
|
?>
|
|
|
|
<div id="global">
|
|
<?php
|
|
flush();
|
|
if (isset($this->callbackBeforeFeeds)) {
|
|
call_user_func($this->callbackBeforeFeeds, $this);
|
|
}
|
|
$this->render();
|
|
?>
|
|
</div>
|
|
|
|
<?php
|
|
$msg = '';
|
|
$status = 'closed';
|
|
if (!empty($this->notification)) {
|
|
$msg = $this->notification['content'];
|
|
$status = $this->notification['type'];
|
|
|
|
invalidateHttpCache();
|
|
}
|
|
?>
|
|
<div id="notification" class="notification <?= $status ?>">
|
|
<span class="msg"><?= $msg ?></span>
|
|
<a class="close" href=""><?= _i('close') ?></a>
|
|
</div>
|
|
</body>
|
|
</html>
|