website annotate lib/get-feeds.php @ rev 1019

a lot of small improvements, code cleaning etc.
author Aleksej Bobylev <al.bobylev@gmail.com>
date Sat Mar 31 17:05:27 2012 +0300 (2012-03-31)
parents e2a0a816a8c6
children 47055e938c85
rev   line source
pankso@808 1 <?php
pankso@808 2
al@1019 3 function updated() {
al@1019 4 $addr = explode('/', $_SERVER['REQUEST_URI']);
al@1019 5 $lang = $addr[1];
al@1019 6 $native = array(
al@1019 7 "cn"=>"- 更新于: ",
al@1019 8 "da"=>"- Opdateret den: ",
al@1019 9 "de"=>"- Aktualisiert am: ",
al@1019 10 "en"=>"- Updated: ",
al@1019 11 "es"=>"- Actualizado el: ",
al@1019 12 "fr"=>"- Mis à jour le: ",
al@1019 13 "id"=>"- Diperbarui pada: ",
al@1019 14 "it"=>"- Aggiornato il: ",
al@1019 15 "pt"=>"- Atualizado em: ",
al@1019 16 "ru"=>"— Обновлено: "
al@1019 17 );
al@1019 18 return $native[$lang];
al@1019 19 }
al@1019 20
pankso@808 21 // Read RSS Feed
pankso@808 22 function get_feed($feed) {
pankso@808 23 $cache = '/var/cache/slitaz/website';
pankso@808 24 $entries = 4;
pankso@808 25 // have the page displayed even if any xml file
pankso@808 26 if ( ! file_exists("$cache/$feed")) {
pankso@808 27 echo "</p>\n<div>\n";
al@1019 28 echo "Missing feed: $cache/$feed\n";
pankso@808 29 }
pankso@808 30 else {
pankso@808 31 $content = file_get_contents("$cache/$feed");
pankso@808 32 $x = new SimpleXmlElement($content);
pankso@808 33 $count = 0;
pankso@808 34 // We look for last item, channel may not have a PubDate*
pankso@808 35 $up = ($x->channel->item->pubDate);
al@1019 36 echo "<span>" . updated() . substr("$up", 5, 17) . "</span>\n";
pankso@808 37 echo "</p>\n<div>\n<ul>\n";
pankso@808 38 foreach($x->channel->item as $entry) {
pankso@808 39 $count = $count + 1;
al@1019 40 echo " <li><a href='$entry->guid'>" .
pankso@808 41 $entry->title . "</a></li>\n";
pankso@808 42 if ($count == $entries) {
pankso@808 43 break;
pankso@808 44 }
pankso@808 45 }
pankso@808 46 echo "</ul>\n";
pankso@808 47 }
pankso@808 48 }
pankso@808 49
pankso@808 50 // Read Blog RSS Feed
pankso@808 51 function get_feed_blog($feed) {
pankso@808 52 $cache = '/var/cache/slitaz/website';
pankso@808 53 $entries = 4;
pankso@808 54 // have the page displayed even if any xml file
pankso@808 55 if ( ! file_exists("$cache/$feed")) {
al@1019 56 echo "</p>\n<div>\n";
al@1019 57 echo "Missing feed: $cache/$feed\n";
pankso@808 58 }
pankso@808 59 else {
pankso@808 60 $content = file_get_contents("$cache/$feed");
pankso@808 61 $x = new SimpleXmlElement($content);
pankso@808 62 $count = 0;
pankso@808 63 // We look for last item, channel may not have a PubDate*
pankso@808 64 $up = ($x->channel->item->pubDate);
pankso@808 65
pankso@808 66 echo "<ul>\n";
pankso@808 67 foreach($x->channel->item as $entry) {
pankso@808 68 $count = $count + 1;
al@1019 69 echo " <li><strong><a href='$entry->link'>" .
pankso@808 70 $entry->title . "</strong></a>\n";
pankso@809 71 echo "<span>- " . substr("$entry->pubDate", 5, 17) . "</span>\n";
pankso@808 72 echo "<p>$entry->description</p>\n</li>";
pankso@808 73 if ($count == $entries) {
pankso@808 74 break;
pankso@808 75 }
pankso@808 76 }
pankso@808 77 echo "</ul>\n";
pankso@808 78 }
pankso@808 79 }
pankso@808 80
pankso@946 81 // Read Forum Feed
pankso@946 82 function get_feed_forum($feed) {
pankso@946 83 $cache = '/var/cache/slitaz/website';
pankso@946 84 $entries = 4;
pankso@946 85 // have the page displayed even if any xml file
pankso@946 86 if ( ! file_exists("$cache/$feed")) {
pankso@946 87 echo "</p>\n<div>\n";
al@1019 88 echo "Missing feed: $cache/$feed\n";
pankso@946 89 }
pankso@946 90 else {
pankso@946 91 $content = file_get_contents("$cache/$feed");
pankso@946 92 $x = new SimpleXmlElement($content);
pankso@946 93 $count = 0;
pankso@946 94 // We look for last item, channel may not have a PubDate*
pankso@946 95 $up = ($x->channel->item->pubDate);
al@1019 96 echo "<span>" . updated() . substr("$up", 5, 17) . "</span>\n";
pankso@946 97 echo "</p>\n<div>\n<ul>\n";
pankso@946 98 foreach($x->channel->item as $entry) {
pankso@946 99 $count = $count + 1;
al@1019 100 echo " <li><a href='$entry->link'>" .
pankso@946 101 $entry->title . "</a></li>\n";
pankso@946 102 if ($count == $entries) {
pankso@946 103 break;
pankso@946 104 }
pankso@946 105 }
pankso@946 106 echo "</ul>\n";
pankso@946 107 }
pankso@946 108 }
pankso@946 109
pankso@808 110 ?>