<?php

class EASeedBridge extends BridgeAbstract
{
    const NAME = 'EA Seed Blog';
    const URI = 'https://www.ea.com/seed';
    const DESCRIPTION = 'Posts from the EA Seed blog';
    const MAINTAINER = 'thefranke';
    const CACHE_TIMEOUT = 86400; // 24h

    public function collectData()
    {
        $dom = getSimpleHTMLDOM(static::URI);
        $dom = $dom->find('ea-grid', 0);
        if (!$dom) {
            throw new \Exception(sprintf('Unable to find css selector on `%s`', $url));
        }
        $dom = defaultLinkTo($dom, $this->getURI());
        foreach ($dom->find('ea-tile') as $article) {
            $a = $article->find('a', 0);
            $date = $article->find('div', 1)->plaintext;
            $title = $article->find('h3', 0)->plaintext;
            $author = $article->find('div', 0)->plaintext;

            $entry = getSimpleHTMLDOMCached($a->href, static::CACHE_TIMEOUT * 7 * 4);

            $content = $entry->find('main', 0);

            // remove header and links to other posts
            $content->find('ea-header', 0)->outertext = '';
            $content->find('ea-section', -1)->outertext = '';

            $this->items[] = [
                'title' => $title,
                'author' => $author,
                'uri' => $a->href,
                'content' => $content,
                'timestamp' => strtotime($date),
            ];
        }
    }
}