4
0

lib_rss.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. // tiré de Shaarli de Seb Sauvage
  3. function small_hash ($txt) {
  4. $t = rtrim (base64_encode (hash ('crc32', $txt, true)), '=');
  5. $t = str_replace ('+', '-', $t); // Get rid of characters which need encoding in URLs.
  6. $t = str_replace ('/', '_', $t);
  7. $t = str_replace ('=', '@', $t);
  8. return $t;
  9. }
  10. function timestamptodate ($t, $hour = true) {
  11. $jour = date ('d', $t);
  12. $mois = date ('m', $t);
  13. $annee = date ('Y', $t);
  14. switch ($mois) {
  15. case 1:
  16. $mois = 'janvier';
  17. break;
  18. case 2:
  19. $mois = 'février';
  20. break;
  21. case 3:
  22. $mois = 'mars';
  23. break;
  24. case 4:
  25. $mois = 'avril';
  26. break;
  27. case 5:
  28. $mois = 'mai';
  29. break;
  30. case 6:
  31. $mois = 'juin';
  32. break;
  33. case 7:
  34. $mois = 'juillet';
  35. break;
  36. case 8:
  37. $mois = 'août';
  38. break;
  39. case 9:
  40. $mois = 'septembre';
  41. break;
  42. case 10:
  43. $mois = 'octobre';
  44. break;
  45. case 11:
  46. $mois = 'novembre';
  47. break;
  48. case 12:
  49. $mois = 'décembre';
  50. break;
  51. }
  52. $date = $jour . ' ' . $mois . ' ' . $annee;
  53. if ($hour) {
  54. return $date . date (' \à H\:i', $t);
  55. } else {
  56. return $date;
  57. }
  58. }
  59. function sortEntriesByDate ($entry1, $entry2) {
  60. return $entry2->date (true) - $entry1->date (true);
  61. }
  62. function sortReverseEntriesByDate ($entry1, $entry2) {
  63. return $entry1->date (true) - $entry2->date (true);
  64. }
  65. function get_domain ($url) {
  66. return parse_url($url, PHP_URL_HOST);
  67. }
  68. function opml_export ($cats) {
  69. $txt = '';
  70. foreach ($cats as $cat) {
  71. $txt .= '<outline text="' . $cat['name'] . '">' . "\n";
  72. foreach ($cat['feeds'] as $feed) {
  73. $txt .= "\t" . '<outline text="' . $feed->name () . '" type="rss" xmlUrl="' . $feed->url () . '" htmlUrl="' . $feed->website () . '" />' . "\n";
  74. }
  75. $txt .= '</outline>' . "\n";
  76. }
  77. return $txt;
  78. }
  79. function opml_import ($xml) {
  80. // TODO
  81. }