aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/simplepie/simplepie/library/SimplePie/Item.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/simplepie/simplepie/library/SimplePie/Item.php')
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Item.php34
1 files changed, 23 insertions, 11 deletions
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Item.php b/vendor/simplepie/simplepie/library/SimplePie/Item.php
index 89d4bacb6..00f4179bf 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Item.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Item.php
@@ -206,9 +206,10 @@ class SimplePie_Item
*
* @since Beta 2
* @param boolean $hash Should we force using a hash instead of the supplied ID?
- * @return string
+ * @param string|false $fn User-supplied function to generate an hash
+ * @return string|null
*/
- public function get_id($hash = false, $fn = '')
+ public function get_id($hash = false, $fn = 'md5')
{
if (!$hash)
{
@@ -237,7 +238,15 @@ class SimplePie_Item
return $this->sanitize($this->data['attribs'][SIMPLEPIE_NAMESPACE_RDF]['about'], SIMPLEPIE_CONSTRUCT_TEXT);
}
}
- if ($fn === '' || !is_callable($fn)) $fn = 'md5';
+ if ($fn === false)
+ {
+ return null;
+ }
+ elseif (!is_callable($fn))
+ {
+ trigger_error('User-supplied function $fn must be callable', E_USER_WARNING);
+ $fn = 'md5';
+ }
return call_user_func($fn,
$this->get_permalink().$this->get_title().$this->get_content());
}
@@ -460,7 +469,8 @@ class SimplePie_Item
{
$categories = array();
- foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'category') as $category)
+ $type = 'category';
+ foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, $type) as $category)
{
$term = null;
$scheme = null;
@@ -477,9 +487,9 @@ class SimplePie_Item
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_HTML);
}
- $categories[] = $this->registry->create('Category', array($term, $scheme, $label));
+ $categories[] = $this->registry->create('Category', array($term, $scheme, $label, $type));
}
- foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'category') as $category)
+ foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, $type) as $category)
{
// This is really the label, but keep this as the term also for BC.
// Label will also work on retrieving because that falls back to term.
@@ -492,15 +502,17 @@ class SimplePie_Item
{
$scheme = null;
}
- $categories[] = $this->registry->create('Category', array($term, $scheme, null));
+ $categories[] = $this->registry->create('Category', array($term, $scheme, null, $type));
}
- foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'subject') as $category)
+
+ $type = 'subject';
+ foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, $type) as $category)
{
- $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null));
+ $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null, $type));
}
- foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'subject') as $category)
+ foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, $type) as $category)
{
- $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null));
+ $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null, $type));
}
if (!empty($categories))