update semantic markup, add publicbodies.org csv export
[disclosr.git] / documents / rss.xml.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
 
// Agency X updated Y,  new files, diff of plain text/link text,
// feed for just one agency or all
// This is a minimum example of using the Universal Feed Generator Class
include("../lib/FeedWriter/FeedTypes.php");
include_once('../include/common.inc.php');
//Creating an instance of FeedWriter class.
$TestFeed = new RSS2FeedWriter();
//Setting the channel elements
////Retriving informations from database
$idtoname = Array();
$agenciesdb = $server->get_db('disclosr-agencies');
foreach ($agenciesdb->get_view("app", "byCanonicalName")->rows as $row) {
    $idtoname[$row->id] = trim($row->value->name);
}
$foidocsdb = $server->get_db('disclosr-foidocuments');
if (isset($_REQUEST['id'])) {
    $rows = $foidocsdb->get_view("app", "byAgencyID", $_REQUEST['id'], false, false, false)->rows;
    $title = $idtoname[$_REQUEST['id']];
} else {
    $rows = $foidocsdb->get_view("app", "byDate", Array('9999-99-99', '0000-00-00', 50), true)->rows;
    $title = 'All Agencies';
}
//Use wrapper functions for common channelelements
$TestFeed->setTitle('disclosurelo.gs Newest Entries - ' . $title);
$TestFeed->setLink('http://disclosurelo.gs/rss.xml.php' . (isset($_REQUEST['id']) ? '?id=' . $_REQUEST['id'] : ''));
$TestFeed->setDescription('disclosurelo.gs Newest Entries - ' . $title);
$TestFeed->setChannelElement('language', 'en-us');
$TestFeed->setChannelElement('pubDate', date(DATE_RSS, time()));
 
 
//print_r($rows);
foreach ($rows as $row) {
    //Create an empty FeedItem
    $newItem = $TestFeed->createNewItem();
    //Add elements to the feed item
    $newItem->setTitle($row->value->title);
    $newItem->setLink("http://disclosurelo.gs/view.php?id=" . $row->value->_id);
    $newItem->setDate(strtotime($row->value->date));
    $newItem->setDescription(displayLogEntry($row, $idtoname));
    $newItem->setAuthor($idtoname[$row->value->agencyID]);
    $newItem->addElement('guid', "http://disclosurelo.gs/view.php?id=" . $row->value->_id, array('isPermaLink' => 'true'));
    //Now add the feed item
    $TestFeed->addItem($newItem);
}
//OK. Everything is done. Now genarate the feed.
$TestFeed->generateFeed();
?>