mirror of
https://github.com/php/web-pecl.git
synced 2026-03-23 23:02:08 +01:00
Use template engine on news page
This commit is contained in:
@@ -143,3 +143,7 @@ $auth->setTmpDir($config->get('tmp_dir'));
|
||||
// Initialize template engine
|
||||
$template = new Engine(__DIR__.'/../templates');
|
||||
$template->register('getImageSize', [$imageSize, 'getSize']);
|
||||
$template->register('formatDateToUtc', [$formatDate, 'utc']);
|
||||
$template->register('nl2br', function ($content) {
|
||||
return str_replace('
', '<br>', nl2br($content));
|
||||
});
|
||||
|
||||
@@ -20,32 +20,10 @@
|
||||
|
||||
use App\Repository\ReleaseRepository;
|
||||
|
||||
require_once __DIR__.'/../../include/pear-prepend.php';
|
||||
|
||||
$releaseRepository = new ReleaseRepository($database);
|
||||
|
||||
response_header("News");
|
||||
|
||||
echo "<h1>PECL news</h1>";
|
||||
|
||||
echo "<h2><a name=\"recent_releases\"></a>Recent Releases</h2>";
|
||||
echo "<ul>";
|
||||
|
||||
$recent = $releaseRepository->findRecent();
|
||||
foreach ($recent as $release) {
|
||||
$releasedate = $formatDate->utc($release['releasedate'], 'Y-m-d');
|
||||
$desc = nl2br(htmlentities(substr($release['releasenotes'], 0, 400)));
|
||||
if (strlen($release['releasenotes']) > 400) {
|
||||
$desc .= ' <a href="/package/' . $release['name'] . '/' . $release['version'] . '">...</a>';
|
||||
}
|
||||
|
||||
echo "<li><a href=\"/package/" . $release['name'] . "/\">";
|
||||
echo "$release[name] $release[version] ($release[state])</a> <i>$releasedate</i><br/>$desc</li>";
|
||||
}
|
||||
|
||||
echo "</ul>\n<a href=\"/feeds/\">Syndicate this</a>";
|
||||
|
||||
echo "<h2><a name=\"2003\"></a>Year 2003</h2>";
|
||||
echo "<ul>";
|
||||
echo '<li><a href="https://news.php.net/article.php?group=php.pecl.dev&article=5">Call for PHP Extension authors</a> (September)</li>';
|
||||
echo "</ul>";
|
||||
|
||||
response_footer();
|
||||
echo $template->render('pages/news/index.php', [
|
||||
'recent' => $releaseRepository->findRecent(),
|
||||
]);
|
||||
|
||||
35
templates/pages/news/index.php
Normal file
35
templates/pages/news/index.php
Normal file
@@ -0,0 +1,35 @@
|
||||
<?php $this->extend('layout.php', ['title' => 'News']) ?>
|
||||
|
||||
<?php $this->start('content') ?>
|
||||
|
||||
<h1>PECL news</h1>
|
||||
|
||||
<h2><a name="recent_releases"></a>Recent Releases</h2>
|
||||
|
||||
<ul>
|
||||
<?php foreach ($recent as $release): ?>
|
||||
<li>
|
||||
<a href="/package/<?= $this->e($release['name']) ?>/">
|
||||
<?= $this->e($release['name']) ?> <?= $this->e($release['version']) ?> (<?= $this->e($release['state']) ?>)
|
||||
</a>
|
||||
|
||||
<i><?= $this->formatDateToUtc($release['releasedate'], 'Y-m-d') ?></i><br>
|
||||
|
||||
<?= $this->nl2br($this->noHtml(substr($release['releasenotes'], 0, 400))) ?>
|
||||
|
||||
<?php if (strlen($release['releasenotes']) > 400): ?>
|
||||
<a href="/package/<?= $this->e($release['name']) ?>/<?= $this->e($release['version']) ?>">...</a>
|
||||
<?php endif ?>
|
||||
</li>
|
||||
<?php endforeach ?>
|
||||
</ul>
|
||||
|
||||
<a href="/feeds/">Syndicate this</a>
|
||||
|
||||
<h2><a name="2003"></a>Year 2003</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href="https://news.php.net/article.php?group=php.pecl.dev&article=5">Call for PHP Extension authors</a> (September)</li>
|
||||
</ul>
|
||||
|
||||
<?php $this->end('content') ?>
|
||||
Reference in New Issue
Block a user