diff vendor/zendframework/zend-feed/src/Writer/AbstractFeed.php @ 2:5311817fb629

Theme updates
author Chris Cannam
date Tue, 10 Jul 2018 13:19:18 +0000
parents c75dbcec494b
children a9cd425dd02b
line wrap: on
line diff
--- a/vendor/zendframework/zend-feed/src/Writer/AbstractFeed.php	Thu Jul 05 15:32:06 2018 +0100
+++ b/vendor/zendframework/zend-feed/src/Writer/AbstractFeed.php	Tue Jul 10 13:19:18 2018 +0000
@@ -61,26 +61,29 @@
     public function addAuthor(array $author)
     {
         // Check array values
-        if (!array_key_exists('name', $author)
+        if (! array_key_exists('name', $author)
             || empty($author['name'])
-            || !is_string($author['name'])
+            || ! is_string($author['name'])
         ) {
             throw new Exception\InvalidArgumentException(
-                'Invalid parameter: author array must include a "name" key with a non-empty string value');
+                'Invalid parameter: author array must include a "name" key with a non-empty string value'
+            );
         }
 
         if (isset($author['email'])) {
-            if (empty($author['email']) || !is_string($author['email'])) {
+            if (empty($author['email']) || ! is_string($author['email'])) {
                 throw new Exception\InvalidArgumentException(
-                    'Invalid parameter: "email" array value must be a non-empty string');
+                    'Invalid parameter: "email" array value must be a non-empty string'
+                );
             }
         }
         if (isset($author['uri'])) {
-            if (empty($author['uri']) || !is_string($author['uri']) ||
-                !Uri::factory($author['uri'])->isValid()
+            if (empty($author['uri']) || ! is_string($author['uri']) ||
+                ! Uri::factory($author['uri'])->isValid()
             ) {
                 throw new Exception\InvalidArgumentException(
-                    'Invalid parameter: "uri" array value must be a non-empty string and valid URI/IRI');
+                    'Invalid parameter: "uri" array value must be a non-empty string and valid URI/IRI'
+                );
             }
         }
 
@@ -114,7 +117,7 @@
      */
     public function setCopyright($copyright)
     {
-        if (empty($copyright) || !is_string($copyright)) {
+        if (empty($copyright) || ! is_string($copyright)) {
             throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string');
         }
         $this->data['copyright'] = $copyright;
@@ -135,7 +138,7 @@
             $date = new DateTime();
         } elseif (is_int($date)) {
             $date = new DateTime('@' . $date);
-        } elseif (!$date instanceof DateTime) {
+        } elseif (! $date instanceof DateTime) {
             throw new Exception\InvalidArgumentException('Invalid DateTime object or UNIX Timestamp'
                                                          . ' passed as parameter');
         }
@@ -157,7 +160,7 @@
             $date = new DateTime();
         } elseif (is_int($date)) {
             $date = new DateTime('@' . $date);
-        } elseif (!$date instanceof DateTime) {
+        } elseif (! $date instanceof DateTime) {
             throw new Exception\InvalidArgumentException('Invalid DateTime object or UNIX Timestamp'
                                                          . ' passed as parameter');
         }
@@ -179,7 +182,7 @@
             $date = new DateTime();
         } elseif (is_int($date)) {
             $date = new DateTime('@' . $date);
-        } elseif (!$date instanceof DateTime) {
+        } elseif (! $date instanceof DateTime) {
             throw new Exception\InvalidArgumentException('Invalid DateTime object or UNIX Timestamp'
                                                          . ' passed as parameter');
         }
@@ -197,7 +200,7 @@
      */
     public function setDescription($description)
     {
-        if (empty($description) || !is_string($description)) {
+        if (empty($description) || ! is_string($description)) {
             throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string');
         }
         $this->data['description'] = $description;
@@ -218,36 +221,44 @@
     {
         if (is_array($name)) {
             $data = $name;
-            if (empty($data['name']) || !is_string($data['name'])) {
+            if (empty($data['name']) || ! is_string($data['name'])) {
                 throw new Exception\InvalidArgumentException('Invalid parameter: "name" must be a non-empty string');
             }
             $generator = ['name' => $data['name']];
             if (isset($data['version'])) {
-                if (empty($data['version']) || !is_string($data['version'])) {
-                    throw new Exception\InvalidArgumentException('Invalid parameter: "version" must be a non-empty string');
+                if (empty($data['version']) || ! is_string($data['version'])) {
+                    throw new Exception\InvalidArgumentException(
+                        'Invalid parameter: "version" must be a non-empty string'
+                    );
                 }
                 $generator['version'] = $data['version'];
             }
             if (isset($data['uri'])) {
-                if (empty($data['uri']) || !is_string($data['uri']) || !Uri::factory($data['uri'])->isValid()) {
-                    throw new Exception\InvalidArgumentException('Invalid parameter: "uri" must be a non-empty string and a valid URI/IRI');
+                if (empty($data['uri']) || ! is_string($data['uri']) || ! Uri::factory($data['uri'])->isValid()) {
+                    throw new Exception\InvalidArgumentException(
+                        'Invalid parameter: "uri" must be a non-empty string and a valid URI/IRI'
+                    );
                 }
                 $generator['uri'] = $data['uri'];
             }
         } else {
-            if (empty($name) || !is_string($name)) {
+            if (empty($name) || ! is_string($name)) {
                 throw new Exception\InvalidArgumentException('Invalid parameter: "name" must be a non-empty string');
             }
             $generator = ['name' => $name];
             if (isset($version)) {
-                if (empty($version) || !is_string($version)) {
-                    throw new Exception\InvalidArgumentException('Invalid parameter: "version" must be a non-empty string');
+                if (empty($version) || ! is_string($version)) {
+                    throw new Exception\InvalidArgumentException(
+                        'Invalid parameter: "version" must be a non-empty string'
+                    );
                 }
                 $generator['version'] = $version;
             }
             if (isset($uri)) {
-                if (empty($uri) || !is_string($uri) || !Uri::factory($uri)->isValid()) {
-                    throw new Exception\InvalidArgumentException('Invalid parameter: "uri" must be a non-empty string and a valid URI/IRI');
+                if (empty($uri) || ! is_string($uri) || ! Uri::factory($uri)->isValid()) {
+                    throw new Exception\InvalidArgumentException(
+                        'Invalid parameter: "uri" must be a non-empty string and a valid URI/IRI'
+                    );
                 }
                 $generator['uri'] = $uri;
             }
@@ -266,11 +277,15 @@
      */
     public function setId($id)
     {
-        if ((empty($id) || !is_string($id) || !Uri::factory($id)->isValid())
-            && !preg_match("#^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{1,31}:([a-zA-Z0-9\(\)\+\,\.\:\=\@\;\$\_\!\*\-]|%[0-9a-fA-F]{2})*#", $id)
-            && !$this->_validateTagUri($id)
+        // @codingStandardsIgnoreStart
+        if ((empty($id) || ! is_string($id) || ! Uri::factory($id)->isValid())
+            && ! preg_match("#^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{1,31}:([a-zA-Z0-9\(\)\+\,\.\:\=\@\;\$\_\!\*\-]|%[0-9a-fA-F]{2})*#", $id)
+            && ! $this->_validateTagUri($id)
         ) {
-            throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string and valid URI/IRI');
+            // @codingStandardsIgnoreEnd
+            throw new Exception\InvalidArgumentException(
+                'Invalid parameter: parameter must be a non-empty string and valid URI/IRI'
+            );
         }
         $this->data['id'] = $id;
 
@@ -283,9 +298,15 @@
      * @param string $id
      * @return bool
      */
+    // @codingStandardsIgnoreStart
     protected function _validateTagUri($id)
     {
-        if (preg_match('/^tag:(?P<name>.*),(?P<date>\d{4}-?\d{0,2}-?\d{0,2}):(?P<specific>.*)(.*:)*$/', $id, $matches)) {
+        // @codingStandardsIgnoreEnd
+        if (preg_match(
+            '/^tag:(?P<name>.*),(?P<date>\d{4}-?\d{0,2}-?\d{0,2}):(?P<specific>.*)(.*:)*$/',
+            $id,
+            $matches
+        )) {
             $dvalid = false;
             $date = $matches['date'];
             $d6 = strtotime($date);
@@ -319,8 +340,8 @@
      */
     public function setImage(array $data)
     {
-        if (empty($data['uri']) || !is_string($data['uri'])
-            || !Uri::factory($data['uri'])->isValid()
+        if (empty($data['uri']) || ! is_string($data['uri'])
+            || ! Uri::factory($data['uri'])->isValid()
         ) {
             throw new Exception\InvalidArgumentException('Invalid parameter: parameter \'uri\''
             . ' must be a non-empty string and valid URI/IRI');
@@ -339,7 +360,7 @@
      */
     public function setLanguage($language)
     {
-        if (empty($language) || !is_string($language)) {
+        if (empty($language) || ! is_string($language)) {
             throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string');
         }
         $this->data['language'] = $language;
@@ -356,8 +377,10 @@
      */
     public function setLink($link)
     {
-        if (empty($link) || !is_string($link) || !Uri::factory($link)->isValid()) {
-            throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string and valid URI/IRI');
+        if (empty($link) || ! is_string($link) || ! Uri::factory($link)->isValid()) {
+            throw new Exception\InvalidArgumentException(
+                'Invalid parameter: parameter must be a non-empty string and valid URI/IRI'
+            );
         }
         $this->data['link'] = $link;
 
@@ -374,11 +397,15 @@
      */
     public function setFeedLink($link, $type)
     {
-        if (empty($link) || !is_string($link) || !Uri::factory($link)->isValid()) {
-            throw new Exception\InvalidArgumentException('Invalid parameter: "link"" must be a non-empty string and valid URI/IRI');
+        if (empty($link) || ! is_string($link) || ! Uri::factory($link)->isValid()) {
+            throw new Exception\InvalidArgumentException(
+                'Invalid parameter: "link"" must be a non-empty string and valid URI/IRI'
+            );
         }
-        if (!in_array(strtolower($type), ['rss', 'rdf', 'atom'])) {
-            throw new Exception\InvalidArgumentException('Invalid parameter: "type"; You must declare the type of feed the link points to, i.e. RSS, RDF or Atom');
+        if (! in_array(strtolower($type), ['rss', 'rdf', 'atom'])) {
+            throw new Exception\InvalidArgumentException(
+                'Invalid parameter: "type"; You must declare the type of feed the link points to, i.e. RSS, RDF or Atom'
+            );
         }
         $this->data['feedLinks'][strtolower($type)] = $link;
 
@@ -394,7 +421,7 @@
      */
     public function setTitle($title)
     {
-        if (empty($title) || !is_string($title)) {
+        if ((empty($title) && ! is_numeric($title)) || ! is_string($title)) {
             throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string');
         }
         $this->data['title'] = $title;
@@ -411,7 +438,7 @@
      */
     public function setEncoding($encoding)
     {
-        if (empty($encoding) || !is_string($encoding)) {
+        if (empty($encoding) || ! is_string($encoding)) {
             throw new Exception\InvalidArgumentException('Invalid parameter: parameter must be a non-empty string');
         }
         $this->data['encoding'] = $encoding;
@@ -428,7 +455,7 @@
      */
     public function setBaseUrl($url)
     {
-        if (empty($url) || !is_string($url) || !Uri::factory($url)->isValid()) {
+        if (empty($url) || ! is_string($url) || ! Uri::factory($url)->isValid()) {
             throw new Exception\InvalidArgumentException('Invalid parameter: "url" array value'
             . ' must be a non-empty string and valid URI/IRI');
         }
@@ -446,11 +473,11 @@
      */
     public function addHub($url)
     {
-        if (empty($url) || !is_string($url) || !Uri::factory($url)->isValid()) {
+        if (empty($url) || ! is_string($url) || ! Uri::factory($url)->isValid()) {
             throw new Exception\InvalidArgumentException('Invalid parameter: "url" array value'
             . ' must be a non-empty string and valid URI/IRI');
         }
-        if (!isset($this->data['hubs'])) {
+        if (! isset($this->data['hubs'])) {
             $this->data['hubs'] = [];
         }
         $this->data['hubs'][] = $url;
@@ -482,21 +509,21 @@
      */
     public function addCategory(array $category)
     {
-        if (!isset($category['term'])) {
+        if (! isset($category['term'])) {
             throw new Exception\InvalidArgumentException('Each category must be an array and '
             . 'contain at least a "term" element containing the machine '
             . ' readable category name');
         }
         if (isset($category['scheme'])) {
             if (empty($category['scheme'])
-                || !is_string($category['scheme'])
-                || !Uri::factory($category['scheme'])->isValid()
+                || ! is_string($category['scheme'])
+                || ! Uri::factory($category['scheme'])->isValid()
             ) {
                 throw new Exception\InvalidArgumentException('The Atom scheme or RSS domain of'
                 . ' a category must be a valid URI');
             }
         }
-        if (!isset($this->data['categories'])) {
+        if (! isset($this->data['categories'])) {
             $this->data['categories'] = [];
         }
         $this->data['categories'][] = $category;
@@ -541,7 +568,7 @@
      */
     public function getAuthors()
     {
-        if (!array_key_exists('authors', $this->data)) {
+        if (! array_key_exists('authors', $this->data)) {
             return;
         }
         return $this->data['authors'];
@@ -554,7 +581,7 @@
      */
     public function getCopyright()
     {
-        if (!array_key_exists('copyright', $this->data)) {
+        if (! array_key_exists('copyright', $this->data)) {
             return;
         }
         return $this->data['copyright'];
@@ -567,7 +594,7 @@
      */
     public function getDateCreated()
     {
-        if (!array_key_exists('dateCreated', $this->data)) {
+        if (! array_key_exists('dateCreated', $this->data)) {
             return;
         }
         return $this->data['dateCreated'];
@@ -580,7 +607,7 @@
      */
     public function getDateModified()
     {
-        if (!array_key_exists('dateModified', $this->data)) {
+        if (! array_key_exists('dateModified', $this->data)) {
             return;
         }
         return $this->data['dateModified'];
@@ -593,7 +620,7 @@
      */
     public function getLastBuildDate()
     {
-        if (!array_key_exists('lastBuildDate', $this->data)) {
+        if (! array_key_exists('lastBuildDate', $this->data)) {
             return;
         }
         return $this->data['lastBuildDate'];
@@ -606,7 +633,7 @@
      */
     public function getDescription()
     {
-        if (!array_key_exists('description', $this->data)) {
+        if (! array_key_exists('description', $this->data)) {
             return;
         }
         return $this->data['description'];
@@ -619,7 +646,7 @@
      */
     public function getGenerator()
     {
-        if (!array_key_exists('generator', $this->data)) {
+        if (! array_key_exists('generator', $this->data)) {
             return;
         }
         return $this->data['generator'];
@@ -632,7 +659,7 @@
      */
     public function getId()
     {
-        if (!array_key_exists('id', $this->data)) {
+        if (! array_key_exists('id', $this->data)) {
             return;
         }
         return $this->data['id'];
@@ -645,7 +672,7 @@
      */
     public function getImage()
     {
-        if (!array_key_exists('image', $this->data)) {
+        if (! array_key_exists('image', $this->data)) {
             return;
         }
         return $this->data['image'];
@@ -658,7 +685,7 @@
      */
     public function getLanguage()
     {
-        if (!array_key_exists('language', $this->data)) {
+        if (! array_key_exists('language', $this->data)) {
             return;
         }
         return $this->data['language'];
@@ -671,7 +698,7 @@
      */
     public function getLink()
     {
-        if (!array_key_exists('link', $this->data)) {
+        if (! array_key_exists('link', $this->data)) {
             return;
         }
         return $this->data['link'];
@@ -684,7 +711,7 @@
      */
     public function getFeedLinks()
     {
-        if (!array_key_exists('feedLinks', $this->data)) {
+        if (! array_key_exists('feedLinks', $this->data)) {
             return;
         }
         return $this->data['feedLinks'];
@@ -697,7 +724,7 @@
      */
     public function getTitle()
     {
-        if (!array_key_exists('title', $this->data)) {
+        if (! array_key_exists('title', $this->data)) {
             return;
         }
         return $this->data['title'];
@@ -710,7 +737,7 @@
      */
     public function getEncoding()
     {
-        if (!array_key_exists('encoding', $this->data)) {
+        if (! array_key_exists('encoding', $this->data)) {
             return 'UTF-8';
         }
         return $this->data['encoding'];
@@ -723,7 +750,7 @@
      */
     public function getBaseUrl()
     {
-        if (!array_key_exists('baseUrl', $this->data)) {
+        if (! array_key_exists('baseUrl', $this->data)) {
             return;
         }
         return $this->data['baseUrl'];
@@ -736,7 +763,7 @@
      */
     public function getHubs()
     {
-        if (!array_key_exists('hubs', $this->data)) {
+        if (! array_key_exists('hubs', $this->data)) {
             return;
         }
         return $this->data['hubs'];
@@ -749,7 +776,7 @@
      */
     public function getCategories()
     {
-        if (!array_key_exists('categories', $this->data)) {
+        if (! array_key_exists('categories', $this->data)) {
             return;
         }
         return $this->data['categories'];
@@ -830,14 +857,18 @@
      * @throws Exception\RuntimeException
      * @return void
      */
+    // @codingStandardsIgnoreStart
     protected function _loadExtensions()
     {
+        // @codingStandardsIgnoreEnd
         $all     = Writer::getExtensions();
         $manager = Writer::getExtensionManager();
         $exts    = $all['feed'];
         foreach ($exts as $ext) {
-            if (!$manager->has($ext)) {
-                throw new Exception\RuntimeException(sprintf('Unable to load extension "%s"; could not resolve to class', $ext));
+            if (! $manager->has($ext)) {
+                throw new Exception\RuntimeException(
+                    sprintf('Unable to load extension "%s"; could not resolve to class', $ext)
+                );
             }
             $this->extensions[$ext] = $manager->get($ext);
             $this->extensions[$ext]->setEncoding($this->getEncoding());