diff options
Diffstat (limited to 'modules-available/news/api.inc.php')
-rw-r--r-- | modules-available/news/api.inc.php | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/modules-available/news/api.inc.php b/modules-available/news/api.inc.php new file mode 100644 index 00000000..cbfaa82b --- /dev/null +++ b/modules-available/news/api.inc.php @@ -0,0 +1,29 @@ +<?php + +header('Content-Type: application/xml; charset=utf-8'); + +$type = Request::any('type', 'news', 'string'); + +// Fetch news from DB +$row = Database::queryFirst('SELECT title, content, dateline FROM vmchooser_pages' + . ' WHERE type = :type ORDER BY dateline DESC LIMIT 1', compact('type')); +if ($row !== false ) { + + echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n"; + echo "<news>" . "\n"; + echo "\t" . '<headline>' . "\n"; + echo "\t\t" . htmlspecialchars($row['title']) . "\n"; + echo "\t" . '</headline>' . "\n"; + echo "\t" . "<info>" . "\n"; + echo "\t\t" . htmlspecialchars(nl2br($row['content'])) . "\n"; + echo "\t" . '</info>' . "\n"; + echo "\t" . "<date>" . "\n"; + echo "\t\t" . $row['dateline'] . "\n"; + echo "\t" . "</date>" . "\n"; + echo "</news>"; + +} else { + // no news in DB, output a 'null' news xml + echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n"; + echo "<news>null</news>"; +} |