-
Notifications
You must be signed in to change notification settings - Fork 624
Expand file tree
/
Copy pathindex.php
More file actions
61 lines (49 loc) · 2.23 KB
/
index.php
File metadata and controls
61 lines (49 loc) · 2.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
use phpweb\News\NewsHandler;
$_SERVER['BASE_PAGE'] = 'conferences/index.php';
include_once __DIR__ . '/../include/prepend.inc';
mirror_setcookie("LAST_NEWS", $_SERVER["REQUEST_TIME"], 60 * 60 * 24 * 365);
site_header("PHP Conferences around the world", [
'headtags' => '<link rel="alternate" type="application/atom+xml" title="PHP: Conference announcements" href="' . $MYSITE . 'feed.atom">',
'current' => 'community',
'css' => ['home.css'],
]);
$content = "<div class='home-content'>";
$panels = '<p class="prepend"><a href="https://wiki.php.net/conferences">Want to see your conference appear here?</a></p>';
foreach ((new NewsHandler())->getConferences() as $entry) {
$link = preg_replace('~^(http://php.net/|https://www.php.net/)~', '', $entry["id"]);
$id = parse_url($entry["id"], PHP_URL_FRAGMENT);
$date = date_format(date_create($entry["updated"] ?? $entry["published"]), 'Y-m-d');
$content .= '<div class="newsentry">';
$content .= '<h3 class="newstitle title"><a href="' . $MYSITE . $link . '" id="' . $id . '">' . $entry["title"] . '</a></h3>';
if (!empty($entry["finalTeaserDate"])) {
$confDate = date_create($entry["finalTeaserDate"]);
if ($confDate) {
$content .= '<p class="conference-date"><strong>' . date_format($confDate, 'F j, Y') . '</strong></p>';
}
}
$content .= '<div class="newsimage">';
if (isset($entry["newsImage"])) {
$content .= sprintf('<a href="%s"><img src="/images/news/%s"></a>', $entry["newsImage"]["link"], $entry["newsImage"]["content"]);
}
$content .= '</div>';
$content .= '<div class="newscontent">';
$content .= $entry["content"];
$content .= '</div>';
$content .= '</div>';
$panelExtra = '';
if (!empty($entry["finalTeaserDate"])) {
$confDate = date_create($entry["finalTeaserDate"]);
if ($confDate) {
$panelExtra = ' <small>' . date_format($confDate, 'M j, Y') . '</small>';
}
}
$panels .= sprintf('<p class="panel"><a href="%s">%s</a>%s</p>', $entry["newsImage"]["link"] ?? $link, $entry["title"], $panelExtra);
}
$content .= "</div>";
echo $content;
site_footer([
"atom" => "/feed.atom",
"elephpants" => true,
"sidebar" => $panels,
]);