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

get-feeds: rel='nofollow' to scn and forum activity
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Jun 29 11:17:30 2012 +0000 (2012-06-29)
parents 95a0c8514de5
children 58354eeb4cda
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@1020 6 if ($lang == '') $lang = "en";
al@1019 7 $native = array(
al@1019 8 "cn"=>"- 更新于: ",
al@1019 9 "da"=>"- Opdateret den: ",
al@1019 10 "de"=>"- Aktualisiert am: ",
al@1019 11 "en"=>"- Updated: ",
al@1019 12 "es"=>"- Actualizado el: ",
al@1019 13 "fr"=>"- Mis à jour le: ",
al@1019 14 "id"=>"- Diperbarui pada: ",
al@1019 15 "it"=>"- Aggiornato il: ",
al@1019 16 "pt"=>"- Atualizado em: ",
al@1019 17 "ru"=>"— Обновлено: "
al@1019 18 );
al@1019 19 return $native[$lang];
al@1019 20 }
al@1019 21
pankso@808 22 // Read RSS Feed
pankso@808 23 function get_feed($feed) {
pankso@808 24 $cache = '/var/cache/slitaz/website';
pankso@808 25 $entries = 4;
al@1071 26 // no follow all links, but hg commits
al@1071 27 if ($feed !== "wok.xml") {
al@1071 28 $nofollow = " rel='nofollow'"
al@1071 29 else
al@1071 30 $nofollow = ""
al@1071 31 }
pankso@808 32 // have the page displayed even if any xml file
pankso@808 33 if ( ! file_exists("$cache/$feed")) {
pankso@808 34 echo "</p>\n<div>\n";
al@1019 35 echo "Missing feed: $cache/$feed\n";
pankso@808 36 }
pankso@808 37 else {
pankso@808 38 $content = file_get_contents("$cache/$feed");
pankso@808 39 $x = new SimpleXmlElement($content);
pankso@808 40 $count = 0;
pankso@808 41 // We look for last item, channel may not have a PubDate*
pankso@808 42 $up = ($x->channel->item->pubDate);
al@1019 43 echo "<span>" . updated() . substr("$up", 5, 17) . "</span>\n";
pankso@808 44 echo "</p>\n<div>\n<ul>\n";
pankso@808 45 foreach($x->channel->item as $entry) {
pankso@808 46 $count = $count + 1;
al@1071 47 echo " <li><a href='$entry->guid'$nofollow>" .
pankso@808 48 $entry->title . "</a></li>\n";
pankso@808 49 if ($count == $entries) {
pankso@808 50 break;
pankso@808 51 }
pankso@808 52 }
pankso@808 53 echo "</ul>\n";
pankso@808 54 }
pankso@808 55 }
pankso@808 56
pankso@808 57 // Read Blog RSS Feed
pankso@808 58 function get_feed_blog($feed) {
pankso@808 59 $cache = '/var/cache/slitaz/website';
pankso@808 60 $entries = 4;
pankso@808 61 // have the page displayed even if any xml file
pankso@808 62 if ( ! file_exists("$cache/$feed")) {
pankso@1060 63 echo "<div>\n";
al@1019 64 echo "Missing feed: $cache/$feed\n";
pankso@1060 65 echo "</div>\n";
pankso@808 66 }
pankso@808 67 else {
pankso@808 68 $content = file_get_contents("$cache/$feed");
pankso@808 69 $x = new SimpleXmlElement($content);
pankso@808 70 $count = 0;
pankso@808 71 // We look for last item, channel may not have a PubDate*
pankso@808 72 $up = ($x->channel->item->pubDate);
al@1038 73
pankso@808 74 echo "<ul>\n";
pankso@808 75 foreach($x->channel->item as $entry) {
pankso@808 76 $count = $count + 1;
al@1038 77 echo " <li><a href='$entry->link'><strong>" .
pankso@808 78 $entry->title . "</strong></a>\n";
pankso@809 79 echo "<span>- " . substr("$entry->pubDate", 5, 17) . "</span>\n";
pankso@808 80 echo "<p>$entry->description</p>\n</li>";
pankso@808 81 if ($count == $entries) {
pankso@808 82 break;
pankso@808 83 }
pankso@808 84 }
pankso@808 85 echo "</ul>\n";
pankso@808 86 }
pankso@808 87 }
pankso@808 88
pankso@946 89 // Read Forum Feed
pankso@946 90 function get_feed_forum($feed) {
pankso@946 91 $cache = '/var/cache/slitaz/website';
pankso@946 92 $entries = 4;
pankso@946 93 // have the page displayed even if any xml file
pankso@946 94 if ( ! file_exists("$cache/$feed")) {
pankso@946 95 echo "</p>\n<div>\n";
al@1019 96 echo "Missing feed: $cache/$feed\n";
pankso@946 97 }
pankso@946 98 else {
pankso@946 99 $content = file_get_contents("$cache/$feed");
pankso@946 100 $x = new SimpleXmlElement($content);
pankso@946 101 $count = 0;
pankso@946 102 // We look for last item, channel may not have a PubDate*
pankso@946 103 $up = ($x->channel->item->pubDate);
al@1019 104 echo "<span>" . updated() . substr("$up", 5, 17) . "</span>\n";
pankso@946 105 echo "</p>\n<div>\n<ul>\n";
pankso@946 106 foreach($x->channel->item as $entry) {
pankso@946 107 $count = $count + 1;
al@1071 108 echo " <li><a href='$entry->link' rel='nofollow'>" .
pankso@946 109 $entry->title . "</a></li>\n";
pankso@946 110 if ($count == $entries) {
pankso@946 111 break;
pankso@946 112 }
pankso@946 113 }
pankso@946 114 echo "</ul>\n";
pankso@946 115 }
pankso@946 116 }
pankso@946 117
pankso@808 118 ?>