[Koha-patches] [PATCH] Hack RSS to work. Just a temporary fix before XSL takes over.

Joe Atzberger joe.atzberger at liblime.com
Mon Apr 21 23:22:47 CEST 2008


---
 .../opac-tmpl/prog/en/modules/opac-results.tmpl    |    2 +-
 opac/opac-rss.pl                                   |   25 ++++++++++++-------
 2 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl
index 19174ef..b281c88 100644
--- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl
+++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl
@@ -7,7 +7,7 @@
 <!-- /TMPL_IF -->
 <!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
 <link rel="alternate" type="application/rss+xml" title="Koha - RSS"
-href="/cgi-bin/koha/opac-rss.pl?<!-- TMPL_VAR name="query_cgi" ESCAPE="URL" --><!-- TMPL_VAR NAME="limit_cgi"  ESCAPE="URL" -->" />
+href="/cgi-bin/koha/opac-rss.pl?<!-- TMPL_VAR name="query_cgi" ESCAPE="HTML" --><!-- TMPL_VAR NAME="limit_cgi"  ESCAPE="HTML" -->" />
 <script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/jquery/plugins/jquery.checkboxes.pack.js"></script>
 <script type="text/javascript">
 //<![CDATA[
diff --git a/opac/opac-rss.pl b/opac/opac-rss.pl
index 864a7c1..7da6bab 100755
--- a/opac/opac-rss.pl
+++ b/opac/opac-rss.pl
@@ -21,12 +21,13 @@ use strict;    # always use
 
 use XML::RSS;
 use Digest::MD5 qw(md5_base64);
-use POSIX qw(ceil floor);
+# use POSIX qw(ceil floor);
 use Date::Calc qw(Today_and_Now Delta_YMDHMS);
 use C4::Context;
 use C4::Search;
 use C4::Koha;
 use C4::Biblio;
+use Cwd;
 
 =head1 NAME
 
@@ -73,7 +74,12 @@ my $size = $cgi->param('size') || 50;
 # the filename of the cached rdf file.
 my $filename = md5_base64($query);
 $filename =~ s/\///g;
-my $rss = new XML::RSS( version => '1.0', encoding=>C4::Context->preference("TemplateEncoding"), output=>C4::Context->preference("TemplateEncoding"),language=>C4::Context->preference('opaclanguages'));
+my $rss = new XML::RSS(
+		version  => '1.0',
+		encoding => C4::Context->preference("TemplateEncoding"),
+		output   => C4::Context->preference("TemplateEncoding"),
+		language => C4::Context->preference('opaclanguages')
+);
 
 # the site URL
 my $url = $cgi->url();
@@ -93,11 +99,11 @@ if ( -e "rss/$filename" ) {
        ( $rdf_stamp =~ /(.*)-(.*)-(.*):(.*):(.*):(.*)/ );
 
 # if more than 30 mn since the last RDF update, rebuild the RDF. Otherwise, just return it
-    unless ( ( $year - $stamp_year > 0 )
-        or ( $month - $stamp_month > 0 )
-        or ( $day - $stamp_day > 0 )
-        or ( $hour - $stamp_hour > 0 )
-        or ( $min - $stamp_min > 30 ) )
+    unless(( $year  - $stamp_year  >  0 )
+        or ( $month - $stamp_month >  0 )
+        or ( $day   - $stamp_day   >  0 )
+        or ( $hour  - $stamp_hour  >  0 )
+        or ( $min   - $stamp_min   > 30 ))
     {
         $RDF_update_needed = 0;
     }
@@ -122,7 +128,7 @@ if ($RDF_update_needed) {
     );
 
     warn "fetching $size results for $query";
-    my ( $error, $marcresults, $total_hits ) = SimpleSearch( $query, 0, $size );
+    my ( $error, $marcresults, $total_hits ) = SimpleSearch( $query, 0, $size );  # FIXME: Simple Search should die!
 
     my $hits = scalar @$marcresults;
     my @results;
@@ -153,7 +159,8 @@ if ($RDF_update_needed) {
     }
 
     # save the rss feed.
-    $rss->save("rss/$filename");
+	# (-w "rss/$filename") or die "Cannot write " . cwd() . "/rss/$filename";
+    # $rss->save("rss/$filename");
 }
 print $cgi->header( -type => "application/rss+xml" );
 print $rss->as_string;
-- 
1.5.2.1




More information about the Koha-patches mailing list