You are here

class Feed in Zircon Profile 8.0

Same name in this branch
  1. 8.0 vendor/zendframework/zend-feed/src/Writer/Feed.php \Zend\Feed\Writer\Feed
  2. 8.0 core/modules/aggregator/src/Entity/Feed.php \Drupal\aggregator\Entity\Feed
  3. 8.0 vendor/zendframework/zend-feed/src/Reader/Extension/Syndication/Feed.php \Zend\Feed\Reader\Extension\Syndication\Feed
  4. 8.0 vendor/zendframework/zend-feed/src/Reader/Extension/Atom/Feed.php \Zend\Feed\Reader\Extension\Atom\Feed
  5. 8.0 vendor/zendframework/zend-feed/src/Reader/Extension/Podcast/Feed.php \Zend\Feed\Reader\Extension\Podcast\Feed
  6. 8.0 vendor/zendframework/zend-feed/src/Reader/Extension/DublinCore/Feed.php \Zend\Feed\Reader\Extension\DublinCore\Feed
  7. 8.0 vendor/zendframework/zend-feed/src/Reader/Extension/CreativeCommons/Feed.php \Zend\Feed\Reader\Extension\CreativeCommons\Feed
  8. 8.0 vendor/zendframework/zend-feed/src/Writer/Extension/ITunes/Feed.php \Zend\Feed\Writer\Extension\ITunes\Feed
  9. 8.0 core/modules/views/src/Plugin/views/display/Feed.php \Drupal\views\Plugin\views\display\Feed
  10. 8.0 vendor/zendframework/zend-feed/src/Writer/Extension/Atom/Renderer/Feed.php \Zend\Feed\Writer\Extension\Atom\Renderer\Feed
  11. 8.0 vendor/zendframework/zend-feed/src/Writer/Extension/DublinCore/Renderer/Feed.php \Zend\Feed\Writer\Extension\DublinCore\Renderer\Feed
  12. 8.0 vendor/zendframework/zend-feed/src/Writer/Extension/ITunes/Renderer/Feed.php \Zend\Feed\Writer\Extension\ITunes\Renderer\Feed
Same name and namespace in other branches
  1. 8 vendor/zendframework/zend-feed/src/Reader/Extension/Podcast/Feed.php \Zend\Feed\Reader\Extension\Podcast\Feed

Hierarchy

  • class \Zend\Feed\Reader\Extension\Podcast\Feed extends \Extension\AbstractFeed

Expanded class hierarchy of Feed

19 string references to 'Feed'
aggregator.schema.yml in core/modules/aggregator/config/schema/aggregator.schema.yml
core/modules/aggregator/config/schema/aggregator.schema.yml
core.services.yml in core/core.services.yml
core/core.services.yml
ExtensionPluginManager::validatePlugin in vendor/zendframework/zend-feed/src/Writer/ExtensionPluginManager.php
Validate the plugin
PreviewTest::testPreviewUI in core/modules/views_ui/src/Tests/PreviewTest.php
Tests arguments in the preview form.
views.view.aggregator_rss_feed.yml in core/modules/aggregator/config/optional/views.view.aggregator_rss_feed.yml
core/modules/aggregator/config/optional/views.view.aggregator_rss_feed.yml

... See full list

1 service uses Feed
feed.reader.podcastfeed in core/core.services.yml
Zend\Feed\Reader\Extension\Podcast\Feed

File

vendor/zendframework/zend-feed/src/Reader/Extension/Podcast/Feed.php, line 17

Namespace

Zend\Feed\Reader\Extension\Podcast
View source
class Feed extends Extension\AbstractFeed {

  /**
   * Get the entry author
   *
   * @return string
   */
  public function getCastAuthor() {
    if (isset($this->data['author'])) {
      return $this->data['author'];
    }
    $author = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:author)');
    if (!$author) {
      $author = null;
    }
    $this->data['author'] = $author;
    return $this->data['author'];
  }

  /**
   * Get the entry block
   *
   * @return string
   */
  public function getBlock() {
    if (isset($this->data['block'])) {
      return $this->data['block'];
    }
    $block = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:block)');
    if (!$block) {
      $block = null;
    }
    $this->data['block'] = $block;
    return $this->data['block'];
  }

  /**
   * Get the entry category
   *
   * @return array|null
   */
  public function getItunesCategories() {
    if (isset($this->data['categories'])) {
      return $this->data['categories'];
    }
    $categoryList = $this->xpath
      ->query($this
      ->getXpathPrefix() . '/itunes:category');
    $categories = [];
    if ($categoryList->length > 0) {
      foreach ($categoryList as $node) {
        $children = null;
        if ($node->childNodes->length > 0) {
          $children = [];
          foreach ($node->childNodes as $childNode) {
            if (!$childNode instanceof DOMText) {
              $children[$childNode
                ->getAttribute('text')] = null;
            }
          }
        }
        $categories[$node
          ->getAttribute('text')] = $children;
      }
    }
    if (!$categories) {
      $categories = null;
    }
    $this->data['categories'] = $categories;
    return $this->data['categories'];
  }

  /**
   * Get the entry explicit
   *
   * @return string
   */
  public function getExplicit() {
    if (isset($this->data['explicit'])) {
      return $this->data['explicit'];
    }
    $explicit = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:explicit)');
    if (!$explicit) {
      $explicit = null;
    }
    $this->data['explicit'] = $explicit;
    return $this->data['explicit'];
  }

  /**
   * Get the entry image
   *
   * @return string
   */
  public function getItunesImage() {
    if (isset($this->data['image'])) {
      return $this->data['image'];
    }
    $image = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:image/@href)');
    if (!$image) {
      $image = null;
    }
    $this->data['image'] = $image;
    return $this->data['image'];
  }

  /**
   * Get the entry keywords
   *
   * @return string
   */
  public function getKeywords() {
    if (isset($this->data['keywords'])) {
      return $this->data['keywords'];
    }
    $keywords = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:keywords)');
    if (!$keywords) {
      $keywords = null;
    }
    $this->data['keywords'] = $keywords;
    return $this->data['keywords'];
  }

  /**
   * Get the entry's new feed url
   *
   * @return string
   */
  public function getNewFeedUrl() {
    if (isset($this->data['new-feed-url'])) {
      return $this->data['new-feed-url'];
    }
    $newFeedUrl = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:new-feed-url)');
    if (!$newFeedUrl) {
      $newFeedUrl = null;
    }
    $this->data['new-feed-url'] = $newFeedUrl;
    return $this->data['new-feed-url'];
  }

  /**
   * Get the entry owner
   *
   * @return string
   */
  public function getOwner() {
    if (isset($this->data['owner'])) {
      return $this->data['owner'];
    }
    $owner = null;
    $email = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:owner/itunes:email)');
    $name = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:owner/itunes:name)');
    if (!empty($email)) {
      $owner = $email . (empty($name) ? '' : ' (' . $name . ')');
    }
    elseif (!empty($name)) {
      $owner = $name;
    }
    if (!$owner) {
      $owner = null;
    }
    $this->data['owner'] = $owner;
    return $this->data['owner'];
  }

  /**
   * Get the entry subtitle
   *
   * @return string
   */
  public function getSubtitle() {
    if (isset($this->data['subtitle'])) {
      return $this->data['subtitle'];
    }
    $subtitle = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:subtitle)');
    if (!$subtitle) {
      $subtitle = null;
    }
    $this->data['subtitle'] = $subtitle;
    return $this->data['subtitle'];
  }

  /**
   * Get the entry summary
   *
   * @return string
   */
  public function getSummary() {
    if (isset($this->data['summary'])) {
      return $this->data['summary'];
    }
    $summary = $this->xpath
      ->evaluate('string(' . $this
      ->getXpathPrefix() . '/itunes:summary)');
    if (!$summary) {
      $summary = null;
    }
    $this->data['summary'] = $summary;
    return $this->data['summary'];
  }

  /**
   * Register iTunes namespace
   *
   */
  protected function registerNamespaces() {
    $this->xpath
      ->registerNamespace('itunes', 'http://www.itunes.com/dtds/podcast-1.0.dtd');
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Feed::getBlock public function Get the entry block
Feed::getCastAuthor public function Get the entry author
Feed::getExplicit public function Get the entry explicit
Feed::getItunesCategories public function Get the entry category
Feed::getItunesImage public function Get the entry image
Feed::getKeywords public function Get the entry keywords
Feed::getNewFeedUrl public function Get the entry's new feed url
Feed::getOwner public function Get the entry owner
Feed::getSubtitle public function Get the entry subtitle
Feed::getSummary public function Get the entry summary
Feed::registerNamespaces protected function Register iTunes namespace