wok-next annotate tazwikiss/stuff/var/www/wiki/plugins/wkp_Rss.sh @ rev 6021

Fix: scite (added glib-dev to build depends)
author Alexander Medvedev <devl547@gmail.com>
date Sun Aug 15 11:15:54 2010 +0000 (2010-08-15)
parents
children
rev   line source
pascal@5859 1 plugin="Rss"
pascal@5859 2 description_fr="Génération d'un flux Rss des derniers changements"
pascal@5859 3 description="Generate a Rss streams with last changes"
pascal@5859 4
pascal@5859 5 writedPage()
pascal@5859 6 {
pascal@5859 7 # Attention, bug si https ou port différent de 80 ?
pascal@5859 8 ADR_ACCUEIL="http://$SERVER_NAME$SCRIPT_NAME"
pascal@5859 9 CONTENT_RSS=""
pascal@5859 10 for file in $(ls -l $PWD/$PAGES_DIR/*.txt 2> /dev/null | awk '{ print $9 }' | tail -n 10) ; do
pascal@5859 11 filename=$(basename $file ".txt")
pascal@5859 12 timestamp=$(filedate $file)
pascal@5859 13 CONTENT="$CONTENT<a href=\"?page=$filename\">$filename</a> ($timestamp - <a href=\"./?page=$filename&amp;action=diff\">diff</a>)<br />"
pascal@5859 14 CONTENT_RSS="$CONTENT_RSS<item>
pascal@5859 15 <title>$filename</title>
pascal@5859 16 <pubDate>$timestamp</pubDate>
pascal@5859 17 <link>$ADR_ACCUEIL?page=$(urlencode '$filename')</link>
pascal@5859 18 <description>$filename $timestamp</description>
pascal@5859 19 </item>"
pascal@5859 20 done
pascal@5859 21 sed -e "s#{WIKI_TITLE}#$WIKI_TITLE#" \
pascal@5859 22 -e "s#{ADR_ACCUEIL}#$ADR_ACCUEIL#" \
pascal@5859 23 -e "s#{LANG}#$LANG#" \
pascal@5859 24 -e "s#{WIKI_DESCRIPTION}#Flux RSS de $WIKI_TITLE#" \
pascal@5859 25 -e "s#{CONTENT_RSS}#$CONTENT_RSS#" > rss.xml <<EOT
pascal@5859 26 <rss version="0.91">
pascal@5859 27 <channel>
pascal@5859 28 <title>{WIKI_TITLE}</title>
pascal@5859 29 <link>{ADR_ACCUEIL}</link>
pascal@5859 30 <description>{WIKI_DESCRIPTION}</description>
pascal@5859 31 <language>{LANG}</language>
pascal@5859 32 {CONTENT_RSS}
pascal@5859 33 </channel>
pascal@5859 34 </rss>
pascal@5859 35 EOT
pascal@5859 36 }
pascal@5859 37
pascal@5859 38 template()
pascal@5859 39 {
pascal@5859 40 html="$(sed 's#{RSS}#<link rel="alternate" type="application/rss+xml" title="RSS" href="rss.xml" />#' <<EOT
pascal@5859 41 $html
pascal@5859 42 EOT
pascal@5859 43 )"
pascal@5859 44 return 0
pascal@5859 45 }