aboutsummaryrefslogtreecommitdiff
path: root/views/opensearch_rss/page_shells/default.php
diff options
context:
space:
mode:
authorCash Costello <cash.costello@gmail.com>2010-05-23 19:37:12 -0400
committerCash Costello <cash.costello@gmail.com>2010-05-23 19:37:12 -0400
commit6d496263bbcc662282a059aee76d74784ac44479 (patch)
tree8a1a2e751912c6f3cd46409d872dd13d1d7186df /views/opensearch_rss/page_shells/default.php
downloadelgg-6d496263bbcc662282a059aee76d74784ac44479.tar.gz
elgg-6d496263bbcc662282a059aee76d74784ac44479.tar.bz2
First version of an OpenSearch endpoint for Elgg
Diffstat (limited to 'views/opensearch_rss/page_shells/default.php')
-rw-r--r--views/opensearch_rss/page_shells/default.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/views/opensearch_rss/page_shells/default.php b/views/opensearch_rss/page_shells/default.php
new file mode 100644
index 000000000..52aa8854c
--- /dev/null
+++ b/views/opensearch_rss/page_shells/default.php
@@ -0,0 +1,42 @@
+<?php
+
+global $OPEN_SEARCH_COUNT;
+
+header("Content-Type: application/rss+xml");
+
+// allow caching as required by stupid MS products for https feeds.
+header('Pragma: public', TRUE);
+
+echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
+
+// Set title
+$search_terms = get_input('q');
+$title = $vars['config']->sitename;
+$title .= " Search: $search_terms";
+
+$description = "Search results for \"$search_terms\"";
+
+// Remove viewtype from URL
+$search_url = str_replace('&view=opensearch_rss','', full_url());
+
+$os_url = "{$vars['url']}pg/opensearch/osd.xml";
+
+
+?>
+<rss version="2.0" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
+<channel>
+ <title><?php echo $title; ?></title>
+ <link><?php echo $search_url; ?></link>
+ <description><?php echo $description; ?></description>
+ <opensearch:totalResults><?php echo $OPEN_SEARCH_COUNT; ?></opensearch:totalResults>
+ <opensearch:startIndex>1</opensearch:startIndex>
+ <opensearch:itemsPerPage>10</opensearch:itemsPerPage>
+ <atom:link rel="search" type="application/opensearchdescription+xml" href="<?php echo $os_url; ?>"/>
+ <opensearch:Query role="request" searchTerms="<?php echo $search_terms; ?>" startPage="1" />
+<?php
+
+ echo $vars['body'];
+
+?>
+</channel>
+</rss>