Esempio n. 1
0
 /**
  * Funktion zum generieren von einem RSS 2.0 feed
  */
 function generateRSS($ype = "html")
 {
     //Einf�gen des Basiswertes
     include_once "lib/XPath/XPath.class.php";
     include_once "ext/blog/blog.class.php";
     $xml = new XPath();
     $xml->importFromString($this->prepareXML());
     //Konfiguration einf�gen
     foreach ($this->config['rss'] as $key => $value) {
         if (!empty($value)) {
             $data = "\n<{$key}>{$value}</{$key}>\n";
             $xml->appendChild("/rss[1]/channel[1]", $data);
         }
     }
     //So nun die letzten 10 Eintr�ge aus dem Blog einf�gen
     $blog = new weblog($this->blog);
     $entryArray = $blog->getLastXEntries(10);
     foreach ($entryArray as $entry) {
         $item = "\n<item>\n                        <title>" . $entry['attributes']['title'] . "</title>\n                        <link>http://www.grundprinzip.de/blog/single/" . $entry['number'] . ".html</link>\n                        <author>" . $entry['attributes']['mail'] . "</author>\n                        <category>" . $entry['attributes']['category'] . "</category>\n                        <description>" . $entry['teaser'] . "</description>\n                        </item>\n";
         $xml->appendChild("/rss[1]/channel[1]", $item);
     }
     return $xml->exportAsXml();
 }
Esempio n. 2
0
/**
 * generates the category menu from the menu data
 * of directory.xml
 */
function menuFromXml($xmlData, $catdir)
{
    $html = "";
    $subdir = substr($catdir, strlen("content/"));
    $xmlParser = new XPath();
    $xmlParser->importFromString($xmlData);
    $i = 1;
    while ($xmlParser->match("/menu[1]/item[{$i}]")) {
        $html .= "<span class=\"menu\">\n";
        if ($xmlParser->match("/menu[1]/item[{$i}]/file[1]")) {
            $filename = $xmlParser->getData("/menu[1]/item[{$i}]/file[1]");
            $title = getTitle($catdir . "/" . $filename);
            $link = $subdir . "/" . $filename;
            $html .= "<a href=\"index.php?p={$link}\">{$title}</a>\n";
        } elseif ($xmlParser->match("/menu[1]/item[{$i}]/raw_data[1]")) {
            $data = $xmlParser->exportAsXml("/menu[1]/item[{$i}]/raw_data[1]");
            $data = stripTag("raw_data", $data);
            $html .= $data;
        }
        $html .= "</span>\n";
        $i++;
    }
    return $html;
}