From 893c02fb4c9e7dfb9650c0971818a13b7a28b557 Mon Sep 17 00:00:00 2001
From: miker
Date: Wed, 8 Nov 2006 20:53:40 +0000
Subject: [PATCH] making the dumpac mo betta
git-svn-id: svn://svn.open-ils.org/ILS/trunk@6570 dcc99617-32d9-48b4-a31d-7c20da2025e4
---
Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm | 17 ++++++------
.../src/perlmods/OpenILS/WWW/SuperCat/Feed.pm | 27 +++++++++++++++++++
Open-ILS/xsl/ATOM2XHTML.xsl | 5 +++-
3 files changed, 40 insertions(+), 9 deletions(-)
diff --git a/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm b/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm
index 8fa559319f..4c6f76e819 100644
--- a/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm
+++ b/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm
@@ -904,7 +904,7 @@ sub opensearch_feed {
$offset -= 1;
}
- my ($version,$org,$type,$class,$terms,$sort,$sortdir,$lang);
+ my ($version,$org,$type,$class,$terms,$sort,$sortdir,$lang) = ('','','','','','','','');
(undef,$version,$org,$type,$class,$terms,$sort,$sortdir,$lang) = split '/', $path;
$lang = $cgi->param('searchLang') if $cgi->param('searchLang');
@@ -944,6 +944,7 @@ sub opensearch_feed {
$terms = decode_utf8($terms);
$terms =~ s/\+/ /go;
$terms =~ s/'//go;
+ $terms =~ s/^\s+//go;
my $term_copy = $terms;
my $complex_terms = 0;
@@ -1074,43 +1075,43 @@ sub opensearch_feed {
$feed->link(
next =>
- $base . "/$version/$org/$type/$class?searchTerms=$terms&startIndex=" . int($offset + $limit + 1) . "&count=" . $limit =>
+ $base . "/$version/$org/$type/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang&startIndex=" . int($offset + $limit + 1) . "&count=" . $limit =>
'application/opensearch+xml'
) if ($offset + $limit < $recs->{count});
$feed->link(
previous =>
- $base . "/$version/$org/$type/$class?searchTerms=$terms&startIndex=" . int(($offset - $limit) + 1) . "&count=" . $limit =>
+ $base . "/$version/$org/$type/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang&startIndex=" . int(($offset - $limit) + 1) . "&count=" . $limit =>
'application/opensearch+xml'
) if ($offset);
$feed->link(
self =>
- $base . "/$version/$org/$type/$class?searchTerms=$terms" =>
+ $base . "/$version/$org/$type/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang" =>
'application/opensearch+xml'
);
$feed->link(
rss =>
- $base . "/$version/$org/rss2-full/$class?searchTerms=$terms" =>
+ $base . "/$version/$org/rss2-full/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang" =>
'application/rss+xml'
);
$feed->link(
alternate =>
- $base . "/$version/$org/atom-full/$class?searchTerms=$terms" =>
+ $base . "/$version/$org/atom-full/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang" =>
'application/atom+xml'
);
$feed->link(
'html' =>
- $base . "/$version/$org/html/$class?searchTerms=$terms" =>
+ $base . "/$version/$org/html/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang" =>
'text/html'
);
$feed->link(
'html-full' =>
- $base . "/$version/$org/html-full/$class?searchTerms=$terms" =>
+ $base . "/$version/$org/html-full/$class?searchTerms=$terms&searchSort=$sort&searchSortDir=$sortdir&searchLang=$lang" =>
'text/html'
);
diff --git a/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm b/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm
index 04c4925c55..76f8a6a09f 100644
--- a/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm
+++ b/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm
@@ -65,6 +65,27 @@ sub class {
return $self->{class};
}
+sub Sort {
+ my $self = shift;
+ my $search = shift;
+ $self->{sort} = $search if ($search);
+ return $self->{sort};
+}
+
+sub SortDir {
+ my $self = shift;
+ my $search = shift;
+ $self->{sort_dir} = $search if ($search);
+ return $self->{sort_dir};
+}
+
+sub lang {
+ my $self = shift;
+ my $search = shift;
+ $self->{lang} = $search if ($search);
+ return $self->{lang};
+}
+
sub lib {
my $self = shift;
my $lib = shift;
@@ -592,6 +613,9 @@ sub toString {
my $base = $self->base || '';
my $root = $self->root || '';
my $search = $self->search || '';
+ my $sort = $self->Sort || '';
+ my $sort_dir = $self->SortDir || '';
+ my $lang = $self->lang || '';
my $lib = $self->lib || '-';
$self->composeDoc;
@@ -612,6 +636,9 @@ sub toString {
base_dir => "'$root'",
lib => "'$lib'",
searchTerms => "'$search'",
+ searchSort => "'$sort'",
+ searchSortDir => "'$sort_dir'",
+ searchLang => "'$lang'",
);
return $new_doc->toString(1);
diff --git a/Open-ILS/xsl/ATOM2XHTML.xsl b/Open-ILS/xsl/ATOM2XHTML.xsl
index ff6e2b4c65..2b5bcf2ff6 100644
--- a/Open-ILS/xsl/ATOM2XHTML.xsl
+++ b/Open-ILS/xsl/ATOM2XHTML.xsl
@@ -266,7 +266,7 @@ To-do list:
-
+
@@ -415,6 +415,7 @@ To-do list:
+
+ unAPI
--
2.43.2