annotate vendor/zendframework/zend-feed/src/Reader/Extension/Podcast/Entry.php @ 3:e11175134f4e

Attempt to introduce editable version of theme
author Chris Cannam
date Tue, 05 Dec 2017 11:25:38 +0000
parents 4c8ae668cc8c
children 7a779792577d
rev   line source
Chris@0 1 <?php
Chris@0 2 /**
Chris@0 3 * Zend Framework (http://framework.zend.com/)
Chris@0 4 *
Chris@0 5 * @link http://github.com/zendframework/zf2 for the canonical source repository
Chris@0 6 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
Chris@0 7 * @license http://framework.zend.com/license/new-bsd New BSD License
Chris@0 8 */
Chris@0 9
Chris@0 10 namespace Zend\Feed\Reader\Extension\Podcast;
Chris@0 11
Chris@0 12 use Zend\Feed\Reader\Extension;
Chris@0 13
Chris@0 14 /**
Chris@0 15 */
Chris@0 16 class Entry extends Extension\AbstractEntry
Chris@0 17 {
Chris@0 18 /**
Chris@0 19 * Get the entry author
Chris@0 20 *
Chris@0 21 * @return string
Chris@0 22 */
Chris@0 23 public function getCastAuthor()
Chris@0 24 {
Chris@0 25 if (isset($this->data['author'])) {
Chris@0 26 return $this->data['author'];
Chris@0 27 }
Chris@0 28
Chris@0 29 $author = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:author)');
Chris@0 30
Chris@0 31 if (!$author) {
Chris@0 32 $author = null;
Chris@0 33 }
Chris@0 34
Chris@0 35 $this->data['author'] = $author;
Chris@0 36
Chris@0 37 return $this->data['author'];
Chris@0 38 }
Chris@0 39
Chris@0 40 /**
Chris@0 41 * Get the entry block
Chris@0 42 *
Chris@0 43 * @return string
Chris@0 44 */
Chris@0 45 public function getBlock()
Chris@0 46 {
Chris@0 47 if (isset($this->data['block'])) {
Chris@0 48 return $this->data['block'];
Chris@0 49 }
Chris@0 50
Chris@0 51 $block = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:block)');
Chris@0 52
Chris@0 53 if (!$block) {
Chris@0 54 $block = null;
Chris@0 55 }
Chris@0 56
Chris@0 57 $this->data['block'] = $block;
Chris@0 58
Chris@0 59 return $this->data['block'];
Chris@0 60 }
Chris@0 61
Chris@0 62 /**
Chris@0 63 * Get the entry duration
Chris@0 64 *
Chris@0 65 * @return string
Chris@0 66 */
Chris@0 67 public function getDuration()
Chris@0 68 {
Chris@0 69 if (isset($this->data['duration'])) {
Chris@0 70 return $this->data['duration'];
Chris@0 71 }
Chris@0 72
Chris@0 73 $duration = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:duration)');
Chris@0 74
Chris@0 75 if (!$duration) {
Chris@0 76 $duration = null;
Chris@0 77 }
Chris@0 78
Chris@0 79 $this->data['duration'] = $duration;
Chris@0 80
Chris@0 81 return $this->data['duration'];
Chris@0 82 }
Chris@0 83
Chris@0 84 /**
Chris@0 85 * Get the entry explicit
Chris@0 86 *
Chris@0 87 * @return string
Chris@0 88 */
Chris@0 89 public function getExplicit()
Chris@0 90 {
Chris@0 91 if (isset($this->data['explicit'])) {
Chris@0 92 return $this->data['explicit'];
Chris@0 93 }
Chris@0 94
Chris@0 95 $explicit = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:explicit)');
Chris@0 96
Chris@0 97 if (!$explicit) {
Chris@0 98 $explicit = null;
Chris@0 99 }
Chris@0 100
Chris@0 101 $this->data['explicit'] = $explicit;
Chris@0 102
Chris@0 103 return $this->data['explicit'];
Chris@0 104 }
Chris@0 105
Chris@0 106 /**
Chris@0 107 * Get the entry keywords
Chris@0 108 *
Chris@0 109 * @return string
Chris@0 110 */
Chris@0 111 public function getKeywords()
Chris@0 112 {
Chris@0 113 if (isset($this->data['keywords'])) {
Chris@0 114 return $this->data['keywords'];
Chris@0 115 }
Chris@0 116
Chris@0 117 $keywords = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:keywords)');
Chris@0 118
Chris@0 119 if (!$keywords) {
Chris@0 120 $keywords = null;
Chris@0 121 }
Chris@0 122
Chris@0 123 $this->data['keywords'] = $keywords;
Chris@0 124
Chris@0 125 return $this->data['keywords'];
Chris@0 126 }
Chris@0 127
Chris@0 128 /**
Chris@0 129 * Get the entry subtitle
Chris@0 130 *
Chris@0 131 * @return string
Chris@0 132 */
Chris@0 133 public function getSubtitle()
Chris@0 134 {
Chris@0 135 if (isset($this->data['subtitle'])) {
Chris@0 136 return $this->data['subtitle'];
Chris@0 137 }
Chris@0 138
Chris@0 139 $subtitle = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:subtitle)');
Chris@0 140
Chris@0 141 if (!$subtitle) {
Chris@0 142 $subtitle = null;
Chris@0 143 }
Chris@0 144
Chris@0 145 $this->data['subtitle'] = $subtitle;
Chris@0 146
Chris@0 147 return $this->data['subtitle'];
Chris@0 148 }
Chris@0 149
Chris@0 150 /**
Chris@0 151 * Get the entry summary
Chris@0 152 *
Chris@0 153 * @return string
Chris@0 154 */
Chris@0 155 public function getSummary()
Chris@0 156 {
Chris@0 157 if (isset($this->data['summary'])) {
Chris@0 158 return $this->data['summary'];
Chris@0 159 }
Chris@0 160
Chris@0 161 $summary = $this->xpath->evaluate('string(' . $this->getXpathPrefix() . '/itunes:summary)');
Chris@0 162
Chris@0 163 if (!$summary) {
Chris@0 164 $summary = null;
Chris@0 165 }
Chris@0 166
Chris@0 167 $this->data['summary'] = $summary;
Chris@0 168
Chris@0 169 return $this->data['summary'];
Chris@0 170 }
Chris@0 171
Chris@0 172 /**
Chris@0 173 * Register iTunes namespace
Chris@0 174 *
Chris@0 175 */
Chris@0 176 protected function registerNamespaces()
Chris@0 177 {
Chris@0 178 $this->xpath->registerNamespace('itunes', 'http://www.itunes.com/dtds/podcast-1.0.dtd');
Chris@0 179 }
Chris@0 180 }