オープンソース・ソフトウェアの開発とダウンロード

CVS リポジトリの参照

Contents of /pukiwiki/pukiwiki/plugin/rss10.inc.php

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.11 - (show annotations) (download) (as text)
Thu Mar 18 09:18:41 2004 UTC (20 years, 1 month ago) by arino
Branch: MAIN
CVS Tags: r1_4_3
Changes since 1.10: +6 -4 lines
File MIME type: application/x-httpd-php
BugTrack/559 $whatsnewがurlencodeされていなかった
BugTrack/558 TrackBack Ping GETメソッド対応

1 <?php
2 /////////////////////////////////////////////////
3 // PukiWiki - Yet another WikiWikiWeb clone.
4 //
5 // $Id: rss10.inc.php,v 1.10 2004/02/29 07:43:21 arino Exp $
6 //
7 // RecentChanges ? RSS ???阪??
8 function plugin_rss10_action()
9 {
10 global $script,$rss_max,$page_title,$whatsnew;
11 global $trackback;
12
13 $self = (preg_match('#^https?://#',$script) ? $script : get_script_uri());
14 if ($self === FALSE)
15 {
16 die_message("please set '\$script' in ".INI_FILE);
17 }
18
19 $page_title_utf8 = mb_convert_encoding($page_title,'UTF-8',SOURCE_ENCODING);
20
21 $items = $rdf_li = '';
22
23 if (!file_exists(CACHE_DIR.'recent.dat'))
24 {
25 return '';
26 }
27 $recent = file(CACHE_DIR.'recent.dat');
28 $lines = array_splice($recent,0,$rss_max);
29 foreach ($lines as $line)
30 {
31 list($time,$page) = explode("\t",rtrim($line));
32 $r_page = rawurlencode($page);
33 $title = mb_convert_encoding($page,'UTF-8',SOURCE_ENCODING);
34 // 'O'???阪?????????祉??'+09:00'??就???翫就
35 $dc_date = substr_replace(get_date('Y-m-d\TH:i:sO',$time),':',-2,0);
36
37 // $desc = get_date('D, d M Y H:i:s T',$time);
38 // <description>$desc</description>
39
40 $dc_identifier = $trackback_ping = '';
41 if ($trackback)
42 {
43 $tb_id = md5($r_page);
44 $dc_identifier = " <dc:identifier>$self?$r_page</dc:identifier>";
45 $trackback_ping = " <trackback:ping>$self?tb_id=$tb_id</trackback:ping>";
46 }
47 $items .= <<<EOD
48 <item rdf:about="$self?$r_page">
49 <title>$title</title>
50 <link>$self?$r_page</link>
51 <dc:date>$dc_date</dc:date>
52 $dc_identifier
53 $trackback_ping
54 </item>
55
56 EOD;
57 $rdf_li .= " <rdf:li rdf:resource=\"$self?$r_page\" />\n";
58 }
59
60 $xmlns_trackback = $trackback ?
61 ' xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"' : '';
62
63 header('Content-type: application/xml');
64
65 $r_whatsnew = rawurlencode($whatsnew);
66
67 print <<<EOD
68 <?xml version="1.0" encoding="utf-8"?>
69
70 <rdf:RDF
71 xmlns:dc="http://purl.org/dc/elements/1.1/"
72 $xmlns_trackback
73 xmlns="http://purl.org/rss/1.0/"
74 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
75 xml:lang="ja">
76
77 <channel rdf:about="$self?$r_whatsnew">
78 <title>$page_title_utf8</title>
79 <link>$self?$r_whatsnew</link>
80 <description>PukiWiki RecentChanges</description>
81 <items>
82 <rdf:Seq>
83 $rdf_li
84 </rdf:Seq>
85 </items>
86 </channel>
87
88 $items
89 </rdf:RDF>
90 EOD;
91 exit;
92 }
93 ?>

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26