' . "\n";
        $xml .= '' . "\n";
        $xml .= $this->buildChannel();
        $xml .= '' . "\n";
        Log::debug("Generated RSS feed: " . strlen($xml) . " bytes");
        return $xml;
    }
    public function getContentType(): string {
        return 'application/rss+xml; charset=utf-8';
    }
    private function buildChannel(): string {
        Log::debug("Building RSS channel for " . $this->settings->siteTitle);
        ob_start();
        ?>
    settings->siteTitle . ' RSS Feed') ?>
    settings->baseUrl, $this->settings->basePath))?>
    
    settings->siteDescription) ?>
    en-us
    
ticks as $tick):
    // build the tick entry components
    $tickPath = "tick/" . $tick['id'];
    $tickUrl = Util::escape_xml($this->buildTickUrl($tick['id']));
    $tickDate = date(DATE_RSS, strtotime($tick['timestamp']));
    $tickTitle = Util::escape_xml($tick['tick']);
    $tickDescription = Util::escape_xml(Util::linkify(Util::escape_html($tick['tick'])));
    Log::debug("RSS item: {$tickDescription}");
?>
    -