function aggregator_aggregator_parse

Implements hook_aggregator_parse().

File

modules/aggregator/aggregator.parser.inc, line 21

Code

function aggregator_aggregator_parse($feed) {
    global $channel, $image;
    // Filter the input data.
    if (aggregator_parse_feed($feed->source_string, $feed)) {
        $modified = empty($feed->http_headers['last-modified']) ? 0 : strtotime($feed->http_headers['last-modified']);
        // Prepare the channel data.
        foreach ($channel as $key => $value) {
            $channel[$key] = trim($value);
        }
        // Prepare the image data (if any).
        foreach ($image as $key => $value) {
            $image[$key] = trim($value);
        }
        $etag = empty($feed->http_headers['etag']) ? '' : $feed->http_headers['etag'];
        // Add parsed data to the feed object.
        $feed->link = !empty($channel['link']) ? $channel['link'] : '';
        $feed->description = !empty($channel['description']) ? $channel['description'] : '';
        $feed->image = !empty($image['url']) ? $image['url'] : '';
        $feed->etag = $etag;
        $feed->modified = $modified;
        // Clear the cache.
        cache_clear_all();
        return TRUE;
    }
    return FALSE;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.