Example #1
0
 function format($changes)
 {
     include_once 'lib/RssWriter.php';
     $rss = new RssWriter();
     $rss->channel($this->channel_properties());
     if ($props = $this->image_properties()) {
         $rss->image($props);
     }
     if ($props = $this->textinput_properties()) {
         $rss->textinput($props);
     }
     $first = true;
     while ($rev = $changes->next()) {
         // enforce view permission
         if (mayAccessPage('view', $rev->_pagename)) {
             $rss->addItem($this->item_properties($rev), $this->pageURI($rev));
             if ($first) {
                 $this->setValidators($rev);
             }
             $first = false;
         }
     }
     global $request;
     $request->discardOutput();
     $rss->finish();
     //header("Content-Type: application/rss+xml; charset=" . $GLOBALS['charset']);
     printf("\n<!-- Generated by PhpWiki-%s -->\n", PHPWIKI_VERSION);
     // Flush errors in comment, otherwise it's invalid XML.
     global $ErrorManager;
     if ($errors = $ErrorManager->getPostponedErrorsAsHTML()) {
         printf("\n<!-- PHP Warnings:\n%s-->\n", AsXML($errors));
     }
     $request->finish();
     // NORETURN!!!!
 }
Example #2
0
<?php

// Copyright 2014 Peter Beverloo. All rights reserved.
// Use of this source code is governed by the MIT license, a copy of which can
// be found in the LICENSE file.
require_once __DIR__ . '/../../services/framework/Database.php';
require_once __DIR__ . '/../RssWriter.php';
$feed = new RssWriter();
$feed->setTitle('Chromium DevTools');
$feed->setDescription('Contains all revisions to the Chromium and Blink repositories mentioning "DevTools".');
$feed->setFeedLink('https://feeds.peter.sh/chrome-devtools/');
$feed->setLink('https://commits.peter.sh/');
$database = new Database();
$revisions = $database->query('
    SELECT
        tracking_devtools.revision_sha,
        UNIX_TIMESTAMP(tracking_revisions.revision_date) AS revision_date,
        tracking_revisions.message,
        tracking_authors.author_name,
        tracking_projects.project_name,
        tracking_projects.repository_view
    FROM
        tracking_devtools
    LEFT JOIN
        tracking_revisions ON tracking_revisions.project_id = tracking_devtools.revision_project_id AND
                              tracking_revisions.revision_sha = tracking_devtools.revision_sha
    LEFT JOIN
        tracking_authors ON tracking_authors.author_id = tracking_revisions.author_id
    LEFT JOIN
        tracking_projects ON tracking_projects.project_id = tracking_revisions.project_id
    ORDER BY