WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Платформа для конвертации и монетизации трафика
функция не описана

SimplePie_Item::get_enclosures() public WP 2

Get all available enclosures (podcasts, etc.)

Supports the <enclosure> RSS tag, as well as Media RSS and iTunes RSS.

At this point, we're pretty much assuming that all enclosures for an item are the same content. Anything else is too complicated to properly support.

{} Это метод класса: SimplePie_Item{}

Хуков нет.

Возвращает

SimplePie_Enclosure[]/null. List of SimplePie_Enclosure items

Использование

$SimplePie_Item = new SimplePie_Item();
$SimplePie_Item->get_enclosures();

Список изменений

С версии 2 Введена.

Since Beta 2

Код SimplePie_Item::get_enclosures() WP 5.5.3

<?php
public function get_enclosures()
{
	if (!isset($this->data['enclosures']))
	{
		$this->data['enclosures'] = array();

		// Elements
		$captions_parent = null;
		$categories_parent = null;
		$copyrights_parent = null;
		$credits_parent = null;
		$description_parent = null;
		$duration_parent = null;
		$hashes_parent = null;
		$keywords_parent = null;
		$player_parent = null;
		$ratings_parent = null;
		$restrictions_parent = null;
		$thumbnails_parent = null;
		$title_parent = null;

		// Let's do the channel and item-level ones first, and just re-use them if we need to.
		$parent = $this->get_feed();

		// CAPTIONS
		if ($captions = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'text'))
		{
			foreach ($captions as $caption)
			{
				$caption_type = null;
				$caption_lang = null;
				$caption_startTime = null;
				$caption_endTime = null;
				$caption_text = null;
				if (isset($caption['attribs']['']['type']))
				{
					$caption_type = $this->sanitize($caption['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['attribs']['']['lang']))
				{
					$caption_lang = $this->sanitize($caption['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['attribs']['']['start']))
				{
					$caption_startTime = $this->sanitize($caption['attribs']['']['start'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['attribs']['']['end']))
				{
					$caption_endTime = $this->sanitize($caption['attribs']['']['end'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['data']))
				{
					$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$captions_parent[] = $this->registry->create('Caption', array($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text));
			}
		}
		elseif ($captions = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'text'))
		{
			foreach ($captions as $caption)
			{
				$caption_type = null;
				$caption_lang = null;
				$caption_startTime = null;
				$caption_endTime = null;
				$caption_text = null;
				if (isset($caption['attribs']['']['type']))
				{
					$caption_type = $this->sanitize($caption['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['attribs']['']['lang']))
				{
					$caption_lang = $this->sanitize($caption['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['attribs']['']['start']))
				{
					$caption_startTime = $this->sanitize($caption['attribs']['']['start'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['attribs']['']['end']))
				{
					$caption_endTime = $this->sanitize($caption['attribs']['']['end'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($caption['data']))
				{
					$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$captions_parent[] = $this->registry->create('Caption', array($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text));
			}
		}
		if (is_array($captions_parent))
		{
			$captions_parent = array_values(array_unique($captions_parent));
		}

		// CATEGORIES
		foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'category') as $category)
		{
			$term = null;
			$scheme = null;
			$label = null;
			if (isset($category['data']))
			{
				$term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			if (isset($category['attribs']['']['scheme']))
			{
				$scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			else
			{
				$scheme = 'http://search.yahoo.com/mrss/category_schema';
			}
			if (isset($category['attribs']['']['label']))
			{
				$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			$categories_parent[] = $this->registry->create('Category', array($term, $scheme, $label));
		}
		foreach ((array) $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'category') as $category)
		{
			$term = null;
			$scheme = null;
			$label = null;
			if (isset($category['data']))
			{
				$term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			if (isset($category['attribs']['']['scheme']))
			{
				$scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			else
			{
				$scheme = 'http://search.yahoo.com/mrss/category_schema';
			}
			if (isset($category['attribs']['']['label']))
			{
				$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			$categories_parent[] = $this->registry->create('Category', array($term, $scheme, $label));
		}
		foreach ((array) $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'category') as $category)
		{
			$term = null;
			$scheme = 'http://www.itunes.com/dtds/podcast-1.0.dtd';
			$label = null;
			if (isset($category['attribs']['']['text']))
			{
				$label = $this->sanitize($category['attribs']['']['text'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			$categories_parent[] = $this->registry->create('Category', array($term, $scheme, $label));

			if (isset($category['child'][SIMPLEPIE_NAMESPACE_ITUNES]['category']))
			{
				foreach ((array) $category['child'][SIMPLEPIE_NAMESPACE_ITUNES]['category'] as $subcategory)
				{
					if (isset($subcategory['attribs']['']['text']))
					{
						$label = $this->sanitize($subcategory['attribs']['']['text'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					$categories_parent[] = $this->registry->create('Category', array($term, $scheme, $label));
				}
			}
		}
		if (is_array($categories_parent))
		{
			$categories_parent = array_values(array_unique($categories_parent));
		}

		// COPYRIGHT
		if ($copyright = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'copyright'))
		{
			$copyright_url = null;
			$copyright_label = null;
			if (isset($copyright[0]['attribs']['']['url']))
			{
				$copyright_url = $this->sanitize($copyright[0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			if (isset($copyright[0]['data']))
			{
				$copyright_label = $this->sanitize($copyright[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			$copyrights_parent = $this->registry->create('Copyright', array($copyright_url, $copyright_label));
		}
		elseif ($copyright = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'copyright'))
		{
			$copyright_url = null;
			$copyright_label = null;
			if (isset($copyright[0]['attribs']['']['url']))
			{
				$copyright_url = $this->sanitize($copyright[0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			if (isset($copyright[0]['data']))
			{
				$copyright_label = $this->sanitize($copyright[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
			$copyrights_parent = $this->registry->create('Copyright', array($copyright_url, $copyright_label));
		}

		// CREDITS
		if ($credits = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'credit'))
		{
			foreach ($credits as $credit)
			{
				$credit_role = null;
				$credit_scheme = null;
				$credit_name = null;
				if (isset($credit['attribs']['']['role']))
				{
					$credit_role = $this->sanitize($credit['attribs']['']['role'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($credit['attribs']['']['scheme']))
				{
					$credit_scheme = $this->sanitize($credit['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$credit_scheme = 'urn:ebu';
				}
				if (isset($credit['data']))
				{
					$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$credits_parent[] = $this->registry->create('Credit', array($credit_role, $credit_scheme, $credit_name));
			}
		}
		elseif ($credits = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'credit'))
		{
			foreach ($credits as $credit)
			{
				$credit_role = null;
				$credit_scheme = null;
				$credit_name = null;
				if (isset($credit['attribs']['']['role']))
				{
					$credit_role = $this->sanitize($credit['attribs']['']['role'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($credit['attribs']['']['scheme']))
				{
					$credit_scheme = $this->sanitize($credit['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$credit_scheme = 'urn:ebu';
				}
				if (isset($credit['data']))
				{
					$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$credits_parent[] = $this->registry->create('Credit', array($credit_role, $credit_scheme, $credit_name));
			}
		}
		if (is_array($credits_parent))
		{
			$credits_parent = array_values(array_unique($credits_parent));
		}

		// DESCRIPTION
		if ($description_parent = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'description'))
		{
			if (isset($description_parent[0]['data']))
			{
				$description_parent = $this->sanitize($description_parent[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
		}
		elseif ($description_parent = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'description'))
		{
			if (isset($description_parent[0]['data']))
			{
				$description_parent = $this->sanitize($description_parent[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
		}

		// DURATION
		if ($duration_parent = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'duration'))
		{
			$seconds = null;
			$minutes = null;
			$hours = null;
			if (isset($duration_parent[0]['data']))
			{
				$temp = explode(':', $this->sanitize($duration_parent[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
				if (sizeof($temp) > 0)
				{
					$seconds = (int) array_pop($temp);
				}
				if (sizeof($temp) > 0)
				{
					$minutes = (int) array_pop($temp);
					$seconds += $minutes * 60;
				}
				if (sizeof($temp) > 0)
				{
					$hours = (int) array_pop($temp);
					$seconds += $hours * 3600;
				}
				unset($temp);
				$duration_parent = $seconds;
			}
		}

		// HASHES
		if ($hashes_iterator = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'hash'))
		{
			foreach ($hashes_iterator as $hash)
			{
				$value = null;
				$algo = null;
				if (isset($hash['data']))
				{
					$value = $this->sanitize($hash['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($hash['attribs']['']['algo']))
				{
					$algo = $this->sanitize($hash['attribs']['']['algo'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$algo = 'md5';
				}
				$hashes_parent[] = $algo.':'.$value;
			}
		}
		elseif ($hashes_iterator = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'hash'))
		{
			foreach ($hashes_iterator as $hash)
			{
				$value = null;
				$algo = null;
				if (isset($hash['data']))
				{
					$value = $this->sanitize($hash['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($hash['attribs']['']['algo']))
				{
					$algo = $this->sanitize($hash['attribs']['']['algo'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$algo = 'md5';
				}
				$hashes_parent[] = $algo.':'.$value;
			}
		}
		if (is_array($hashes_parent))
		{
			$hashes_parent = array_values(array_unique($hashes_parent));
		}

		// KEYWORDS
		if ($keywords = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'keywords'))
		{
			if (isset($keywords[0]['data']))
			{
				$temp = explode(',', $this->sanitize($keywords[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
				foreach ($temp as $word)
				{
					$keywords_parent[] = trim($word);
				}
			}
			unset($temp);
		}
		elseif ($keywords = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'keywords'))
		{
			if (isset($keywords[0]['data']))
			{
				$temp = explode(',', $this->sanitize($keywords[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
				foreach ($temp as $word)
				{
					$keywords_parent[] = trim($word);
				}
			}
			unset($temp);
		}
		elseif ($keywords = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'keywords'))
		{
			if (isset($keywords[0]['data']))
			{
				$temp = explode(',', $this->sanitize($keywords[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
				foreach ($temp as $word)
				{
					$keywords_parent[] = trim($word);
				}
			}
			unset($temp);
		}
		elseif ($keywords = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'keywords'))
		{
			if (isset($keywords[0]['data']))
			{
				$temp = explode(',', $this->sanitize($keywords[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
				foreach ($temp as $word)
				{
					$keywords_parent[] = trim($word);
				}
			}
			unset($temp);
		}
		if (is_array($keywords_parent))
		{
			$keywords_parent = array_values(array_unique($keywords_parent));
		}

		// PLAYER
		if ($player_parent = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'player'))
		{
			if (isset($player_parent[0]['attribs']['']['url']))
			{
				$player_parent = $this->sanitize($player_parent[0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
			}
		}
		elseif ($player_parent = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'player'))
		{
			if (isset($player_parent[0]['attribs']['']['url']))
			{
				$player_parent = $this->sanitize($player_parent[0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
			}
		}

		// RATINGS
		if ($ratings = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'rating'))
		{
			foreach ($ratings as $rating)
			{
				$rating_scheme = null;
				$rating_value = null;
				if (isset($rating['attribs']['']['scheme']))
				{
					$rating_scheme = $this->sanitize($rating['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$rating_scheme = 'urn:simple';
				}
				if (isset($rating['data']))
				{
					$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$ratings_parent[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
			}
		}
		elseif ($ratings = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'explicit'))
		{
			foreach ($ratings as $rating)
			{
				$rating_scheme = 'urn:itunes';
				$rating_value = null;
				if (isset($rating['data']))
				{
					$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$ratings_parent[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
			}
		}
		elseif ($ratings = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'rating'))
		{
			foreach ($ratings as $rating)
			{
				$rating_scheme = null;
				$rating_value = null;
				if (isset($rating['attribs']['']['scheme']))
				{
					$rating_scheme = $this->sanitize($rating['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$rating_scheme = 'urn:simple';
				}
				if (isset($rating['data']))
				{
					$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$ratings_parent[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
			}
		}
		elseif ($ratings = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'explicit'))
		{
			foreach ($ratings as $rating)
			{
				$rating_scheme = 'urn:itunes';
				$rating_value = null;
				if (isset($rating['data']))
				{
					$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$ratings_parent[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
			}
		}
		if (is_array($ratings_parent))
		{
			$ratings_parent = array_values(array_unique($ratings_parent));
		}

		// RESTRICTIONS
		if ($restrictions = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'restriction'))
		{
			foreach ($restrictions as $restriction)
			{
				$restriction_relationship = null;
				$restriction_type = null;
				$restriction_value = null;
				if (isset($restriction['attribs']['']['relationship']))
				{
					$restriction_relationship = $this->sanitize($restriction['attribs']['']['relationship'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($restriction['attribs']['']['type']))
				{
					$restriction_type = $this->sanitize($restriction['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($restriction['data']))
				{
					$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$restrictions_parent[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
			}
		}
		elseif ($restrictions = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'block'))
		{
			foreach ($restrictions as $restriction)
			{
				$restriction_relationship = 'allow';
				$restriction_type = null;
				$restriction_value = 'itunes';
				if (isset($restriction['data']) && strtolower($restriction['data']) === 'yes')
				{
					$restriction_relationship = 'deny';
				}
				$restrictions_parent[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
			}
		}
		elseif ($restrictions = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'restriction'))
		{
			foreach ($restrictions as $restriction)
			{
				$restriction_relationship = null;
				$restriction_type = null;
				$restriction_value = null;
				if (isset($restriction['attribs']['']['relationship']))
				{
					$restriction_relationship = $this->sanitize($restriction['attribs']['']['relationship'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($restriction['attribs']['']['type']))
				{
					$restriction_type = $this->sanitize($restriction['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($restriction['data']))
				{
					$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				$restrictions_parent[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
			}
		}
		elseif ($restrictions = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'block'))
		{
			foreach ($restrictions as $restriction)
			{
				$restriction_relationship = 'allow';
				$restriction_type = null;
				$restriction_value = 'itunes';
				if (isset($restriction['data']) && strtolower($restriction['data']) === 'yes')
				{
					$restriction_relationship = 'deny';
				}
				$restrictions_parent[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
			}
		}
		if (is_array($restrictions_parent))
		{
			$restrictions_parent = array_values(array_unique($restrictions_parent));
		}
		else
		{
			$restrictions_parent = array(new SimplePie_Restriction('allow', null, 'default'));
		}

		// THUMBNAILS
		if ($thumbnails = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'thumbnail'))
		{
			foreach ($thumbnails as $thumbnail)
			{
				if (isset($thumbnail['attribs']['']['url']))
				{
					$thumbnails_parent[] = $this->sanitize($thumbnail['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
				}
			}
		}
		elseif ($thumbnails = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'thumbnail'))
		{
			foreach ($thumbnails as $thumbnail)
			{
				if (isset($thumbnail['attribs']['']['url']))
				{
					$thumbnails_parent[] = $this->sanitize($thumbnail['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
				}
			}
		}

		// TITLES
		if ($title_parent = $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'title'))
		{
			if (isset($title_parent[0]['data']))
			{
				$title_parent = $this->sanitize($title_parent[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
		}
		elseif ($title_parent = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'title'))
		{
			if (isset($title_parent[0]['data']))
			{
				$title_parent = $this->sanitize($title_parent[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
			}
		}

		// Clear the memory
		unset($parent);

		// Attributes
		$bitrate = null;
		$channels = null;
		$duration = null;
		$expression = null;
		$framerate = null;
		$height = null;
		$javascript = null;
		$lang = null;
		$length = null;
		$medium = null;
		$samplingrate = null;
		$type = null;
		$url = null;
		$width = null;

		// Elements
		$captions = null;
		$categories = null;
		$copyrights = null;
		$credits = null;
		$description = null;
		$hashes = null;
		$keywords = null;
		$player = null;
		$ratings = null;
		$restrictions = null;
		$thumbnails = null;
		$title = null;

		// If we have media:group tags, loop through them.
		foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'group') as $group)
		{
			if(isset($group['child']) && isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['content']))
			{
				// If we have media:content tags, loop through them.
				foreach ((array) $group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['content'] as $content)
				{
					if (isset($content['attribs']['']['url']))
					{
						// Attributes
						$bitrate = null;
						$channels = null;
						$duration = null;
						$expression = null;
						$framerate = null;
						$height = null;
						$javascript = null;
						$lang = null;
						$length = null;
						$medium = null;
						$samplingrate = null;
						$type = null;
						$url = null;
						$width = null;

						// Elements
						$captions = null;
						$categories = null;
						$copyrights = null;
						$credits = null;
						$description = null;
						$hashes = null;
						$keywords = null;
						$player = null;
						$ratings = null;
						$restrictions = null;
						$thumbnails = null;
						$title = null;

						// Start checking the attributes of media:content
						if (isset($content['attribs']['']['bitrate']))
						{
							$bitrate = $this->sanitize($content['attribs']['']['bitrate'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['channels']))
						{
							$channels = $this->sanitize($content['attribs']['']['channels'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['duration']))
						{
							$duration = $this->sanitize($content['attribs']['']['duration'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						else
						{
							$duration = $duration_parent;
						}
						if (isset($content['attribs']['']['expression']))
						{
							$expression = $this->sanitize($content['attribs']['']['expression'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['framerate']))
						{
							$framerate = $this->sanitize($content['attribs']['']['framerate'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['height']))
						{
							$height = $this->sanitize($content['attribs']['']['height'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['lang']))
						{
							$lang = $this->sanitize($content['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['fileSize']))
						{
							$length = ceil($content['attribs']['']['fileSize']);
						}
						if (isset($content['attribs']['']['medium']))
						{
							$medium = $this->sanitize($content['attribs']['']['medium'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['samplingrate']))
						{
							$samplingrate = $this->sanitize($content['attribs']['']['samplingrate'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['type']))
						{
							$type = $this->sanitize($content['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['attribs']['']['width']))
						{
							$width = $this->sanitize($content['attribs']['']['width'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						$url = $this->sanitize($content['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);

						// Checking the other optional media: elements. Priority: media:content, media:group, item, channel

						// CAPTIONS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['text']))
						{
							foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['text'] as $caption)
							{
								$caption_type = null;
								$caption_lang = null;
								$caption_startTime = null;
								$caption_endTime = null;
								$caption_text = null;
								if (isset($caption['attribs']['']['type']))
								{
									$caption_type = $this->sanitize($caption['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['attribs']['']['lang']))
								{
									$caption_lang = $this->sanitize($caption['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['attribs']['']['start']))
								{
									$caption_startTime = $this->sanitize($caption['attribs']['']['start'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['attribs']['']['end']))
								{
									$caption_endTime = $this->sanitize($caption['attribs']['']['end'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['data']))
								{
									$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$captions[] = $this->registry->create('Caption', array($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text));
							}
							if (is_array($captions))
							{
								$captions = array_values(array_unique($captions));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['text']))
						{
							foreach ($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['text'] as $caption)
							{
								$caption_type = null;
								$caption_lang = null;
								$caption_startTime = null;
								$caption_endTime = null;
								$caption_text = null;
								if (isset($caption['attribs']['']['type']))
								{
									$caption_type = $this->sanitize($caption['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['attribs']['']['lang']))
								{
									$caption_lang = $this->sanitize($caption['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['attribs']['']['start']))
								{
									$caption_startTime = $this->sanitize($caption['attribs']['']['start'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['attribs']['']['end']))
								{
									$caption_endTime = $this->sanitize($caption['attribs']['']['end'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($caption['data']))
								{
									$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$captions[] = $this->registry->create('Caption', array($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text));
							}
							if (is_array($captions))
							{
								$captions = array_values(array_unique($captions));
							}
						}
						else
						{
							$captions = $captions_parent;
						}

						// CATEGORIES
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category']))
						{
							foreach ((array) $content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category'] as $category)
							{
								$term = null;
								$scheme = null;
								$label = null;
								if (isset($category['data']))
								{
									$term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($category['attribs']['']['scheme']))
								{
									$scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$scheme = 'http://search.yahoo.com/mrss/category_schema';
								}
								if (isset($category['attribs']['']['label']))
								{
									$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$categories[] = $this->registry->create('Category', array($term, $scheme, $label));
							}
						}
						if (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category']))
						{
							foreach ((array) $group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category'] as $category)
							{
								$term = null;
								$scheme = null;
								$label = null;
								if (isset($category['data']))
								{
									$term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($category['attribs']['']['scheme']))
								{
									$scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$scheme = 'http://search.yahoo.com/mrss/category_schema';
								}
								if (isset($category['attribs']['']['label']))
								{
									$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$categories[] = $this->registry->create('Category', array($term, $scheme, $label));
							}
						}
						if (is_array($categories) && is_array($categories_parent))
						{
							$categories = array_values(array_unique(array_merge($categories, $categories_parent)));
						}
						elseif (is_array($categories))
						{
							$categories = array_values(array_unique($categories));
						}
						elseif (is_array($categories_parent))
						{
							$categories = array_values(array_unique($categories_parent));
						}

						// COPYRIGHTS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright']))
						{
							$copyright_url = null;
							$copyright_label = null;
							if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['attribs']['']['url']))
							{
								$copyright_url = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data']))
							{
								$copyright_label = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$copyrights = $this->registry->create('Copyright', array($copyright_url, $copyright_label));
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright']))
						{
							$copyright_url = null;
							$copyright_label = null;
							if (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['attribs']['']['url']))
							{
								$copyright_url = $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data']))
							{
								$copyright_label = $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$copyrights = $this->registry->create('Copyright', array($copyright_url, $copyright_label));
						}
						else
						{
							$copyrights = $copyrights_parent;
						}

						// CREDITS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['credit']))
						{
							foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['credit'] as $credit)
							{
								$credit_role = null;
								$credit_scheme = null;
								$credit_name = null;
								if (isset($credit['attribs']['']['role']))
								{
									$credit_role = $this->sanitize($credit['attribs']['']['role'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($credit['attribs']['']['scheme']))
								{
									$credit_scheme = $this->sanitize($credit['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$credit_scheme = 'urn:ebu';
								}
								if (isset($credit['data']))
								{
									$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$credits[] = $this->registry->create('Credit', array($credit_role, $credit_scheme, $credit_name));
							}
							if (is_array($credits))
							{
								$credits = array_values(array_unique($credits));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['credit']))
						{
							foreach ($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['credit'] as $credit)
							{
								$credit_role = null;
								$credit_scheme = null;
								$credit_name = null;
								if (isset($credit['attribs']['']['role']))
								{
									$credit_role = $this->sanitize($credit['attribs']['']['role'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($credit['attribs']['']['scheme']))
								{
									$credit_scheme = $this->sanitize($credit['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$credit_scheme = 'urn:ebu';
								}
								if (isset($credit['data']))
								{
									$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$credits[] = $this->registry->create('Credit', array($credit_role, $credit_scheme, $credit_name));
							}
							if (is_array($credits))
							{
								$credits = array_values(array_unique($credits));
							}
						}
						else
						{
							$credits = $credits_parent;
						}

						// DESCRIPTION
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['description']))
						{
							$description = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['description'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['description']))
						{
							$description = $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['description'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						else
						{
							$description = $description_parent;
						}

						// HASHES
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['hash']))
						{
							foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['hash'] as $hash)
							{
								$value = null;
								$algo = null;
								if (isset($hash['data']))
								{
									$value = $this->sanitize($hash['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($hash['attribs']['']['algo']))
								{
									$algo = $this->sanitize($hash['attribs']['']['algo'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$algo = 'md5';
								}
								$hashes[] = $algo.':'.$value;
							}
							if (is_array($hashes))
							{
								$hashes = array_values(array_unique($hashes));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['hash']))
						{
							foreach ($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['hash'] as $hash)
							{
								$value = null;
								$algo = null;
								if (isset($hash['data']))
								{
									$value = $this->sanitize($hash['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($hash['attribs']['']['algo']))
								{
									$algo = $this->sanitize($hash['attribs']['']['algo'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$algo = 'md5';
								}
								$hashes[] = $algo.':'.$value;
							}
							if (is_array($hashes))
							{
								$hashes = array_values(array_unique($hashes));
							}
						}
						else
						{
							$hashes = $hashes_parent;
						}

						// KEYWORDS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords']))
						{
							if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords'][0]['data']))
							{
								$temp = explode(',', $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
								foreach ($temp as $word)
								{
									$keywords[] = trim($word);
								}
								unset($temp);
							}
							if (is_array($keywords))
							{
								$keywords = array_values(array_unique($keywords));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords']))
						{
							if (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords'][0]['data']))
							{
								$temp = explode(',', $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
								foreach ($temp as $word)
								{
									$keywords[] = trim($word);
								}
								unset($temp);
							}
							if (is_array($keywords))
							{
								$keywords = array_values(array_unique($keywords));
							}
						}
						else
						{
							$keywords = $keywords_parent;
						}

						// PLAYER
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player']))
						{
							$player = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player'][0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player']))
						{
							$player = $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player'][0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
						}
						else
						{
							$player = $player_parent;
						}

						// RATINGS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['rating']))
						{
							foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['rating'] as $rating)
							{
								$rating_scheme = null;
								$rating_value = null;
								if (isset($rating['attribs']['']['scheme']))
								{
									$rating_scheme = $this->sanitize($rating['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$rating_scheme = 'urn:simple';
								}
								if (isset($rating['data']))
								{
									$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$ratings[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
							}
							if (is_array($ratings))
							{
								$ratings = array_values(array_unique($ratings));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['rating']))
						{
							foreach ($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['rating'] as $rating)
							{
								$rating_scheme = null;
								$rating_value = null;
								if (isset($rating['attribs']['']['scheme']))
								{
									$rating_scheme = $this->sanitize($rating['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								else
								{
									$rating_scheme = 'urn:simple';
								}
								if (isset($rating['data']))
								{
									$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$ratings[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
							}
							if (is_array($ratings))
							{
								$ratings = array_values(array_unique($ratings));
							}
						}
						else
						{
							$ratings = $ratings_parent;
						}

						// RESTRICTIONS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['restriction']))
						{
							foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['restriction'] as $restriction)
							{
								$restriction_relationship = null;
								$restriction_type = null;
								$restriction_value = null;
								if (isset($restriction['attribs']['']['relationship']))
								{
									$restriction_relationship = $this->sanitize($restriction['attribs']['']['relationship'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($restriction['attribs']['']['type']))
								{
									$restriction_type = $this->sanitize($restriction['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($restriction['data']))
								{
									$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$restrictions[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
							}
							if (is_array($restrictions))
							{
								$restrictions = array_values(array_unique($restrictions));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['restriction']))
						{
							foreach ($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['restriction'] as $restriction)
							{
								$restriction_relationship = null;
								$restriction_type = null;
								$restriction_value = null;
								if (isset($restriction['attribs']['']['relationship']))
								{
									$restriction_relationship = $this->sanitize($restriction['attribs']['']['relationship'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($restriction['attribs']['']['type']))
								{
									$restriction_type = $this->sanitize($restriction['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								if (isset($restriction['data']))
								{
									$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
								}
								$restrictions[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
							}
							if (is_array($restrictions))
							{
								$restrictions = array_values(array_unique($restrictions));
							}
						}
						else
						{
							$restrictions = $restrictions_parent;
						}

						// THUMBNAILS
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['thumbnail']))
						{
							foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['thumbnail'] as $thumbnail)
							{
								$thumbnails[] = $this->sanitize($thumbnail['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
							}
							if (is_array($thumbnails))
							{
								$thumbnails = array_values(array_unique($thumbnails));
							}
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['thumbnail']))
						{
							foreach ($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['thumbnail'] as $thumbnail)
							{
								$thumbnails[] = $this->sanitize($thumbnail['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
							}
							if (is_array($thumbnails))
							{
								$thumbnails = array_values(array_unique($thumbnails));
							}
						}
						else
						{
							$thumbnails = $thumbnails_parent;
						}

						// TITLES
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['title']))
						{
							$title = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['title'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['title']))
						{
							$title = $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['title'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						else
						{
							$title = $title_parent;
						}

						$this->data['enclosures'][] = $this->registry->create('Enclosure', array($url, $type, $length, null, $bitrate, $captions, $categories, $channels, $copyrights, $credits, $description, $duration, $expression, $framerate, $hashes, $height, $keywords, $lang, $medium, $player, $ratings, $restrictions, $samplingrate, $thumbnails, $title, $width));
					}
				}
			}
		}

		// If we have standalone media:content tags, loop through them.
		if (isset($this->data['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['content']))
		{
			foreach ((array) $this->data['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['content'] as $content)
			{
				if (isset($content['attribs']['']['url']) || isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player']))
				{
					// Attributes
					$bitrate = null;
					$channels = null;
					$duration = null;
					$expression = null;
					$framerate = null;
					$height = null;
					$javascript = null;
					$lang = null;
					$length = null;
					$medium = null;
					$samplingrate = null;
					$type = null;
					$url = null;
					$width = null;

					// Elements
					$captions = null;
					$categories = null;
					$copyrights = null;
					$credits = null;
					$description = null;
					$hashes = null;
					$keywords = null;
					$player = null;
					$ratings = null;
					$restrictions = null;
					$thumbnails = null;
					$title = null;

					// Start checking the attributes of media:content
					if (isset($content['attribs']['']['bitrate']))
					{
						$bitrate = $this->sanitize($content['attribs']['']['bitrate'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['channels']))
					{
						$channels = $this->sanitize($content['attribs']['']['channels'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['duration']))
					{
						$duration = $this->sanitize($content['attribs']['']['duration'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					else
					{
						$duration = $duration_parent;
					}
					if (isset($content['attribs']['']['expression']))
					{
						$expression = $this->sanitize($content['attribs']['']['expression'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['framerate']))
					{
						$framerate = $this->sanitize($content['attribs']['']['framerate'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['height']))
					{
						$height = $this->sanitize($content['attribs']['']['height'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['lang']))
					{
						$lang = $this->sanitize($content['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['fileSize']))
					{
						$length = ceil($content['attribs']['']['fileSize']);
					}
					if (isset($content['attribs']['']['medium']))
					{
						$medium = $this->sanitize($content['attribs']['']['medium'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['samplingrate']))
					{
						$samplingrate = $this->sanitize($content['attribs']['']['samplingrate'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['type']))
					{
						$type = $this->sanitize($content['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['width']))
					{
						$width = $this->sanitize($content['attribs']['']['width'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					if (isset($content['attribs']['']['url']))
					{
						$url = $this->sanitize($content['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
					}
					// Checking the other optional media: elements. Priority: media:content, media:group, item, channel

					// CAPTIONS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['text']))
					{
						foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['text'] as $caption)
						{
							$caption_type = null;
							$caption_lang = null;
							$caption_startTime = null;
							$caption_endTime = null;
							$caption_text = null;
							if (isset($caption['attribs']['']['type']))
							{
								$caption_type = $this->sanitize($caption['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($caption['attribs']['']['lang']))
							{
								$caption_lang = $this->sanitize($caption['attribs']['']['lang'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($caption['attribs']['']['start']))
							{
								$caption_startTime = $this->sanitize($caption['attribs']['']['start'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($caption['attribs']['']['end']))
							{
								$caption_endTime = $this->sanitize($caption['attribs']['']['end'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($caption['data']))
							{
								$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$captions[] = $this->registry->create('Caption', array($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text));
						}
						if (is_array($captions))
						{
							$captions = array_values(array_unique($captions));
						}
					}
					else
					{
						$captions = $captions_parent;
					}

					// CATEGORIES
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category']))
					{
						foreach ((array) $content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category'] as $category)
						{
							$term = null;
							$scheme = null;
							$label = null;
							if (isset($category['data']))
							{
								$term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($category['attribs']['']['scheme']))
							{
								$scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							else
							{
								$scheme = 'http://search.yahoo.com/mrss/category_schema';
							}
							if (isset($category['attribs']['']['label']))
							{
								$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$categories[] = $this->registry->create('Category', array($term, $scheme, $label));
						}
					}
					if (is_array($categories) && is_array($categories_parent))
					{
						$categories = array_values(array_unique(array_merge($categories, $categories_parent)));
					}
					elseif (is_array($categories))
					{
						$categories = array_values(array_unique($categories));
					}
					elseif (is_array($categories_parent))
					{
						$categories = array_values(array_unique($categories_parent));
					}
					else
					{
						$categories = null;
					}

					// COPYRIGHTS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright']))
					{
						$copyright_url = null;
						$copyright_label = null;
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['attribs']['']['url']))
						{
							$copyright_url = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data']))
						{
							$copyright_label = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
						}
						$copyrights = $this->registry->create('Copyright', array($copyright_url, $copyright_label));
					}
					else
					{
						$copyrights = $copyrights_parent;
					}

					// CREDITS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['credit']))
					{
						foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['credit'] as $credit)
						{
							$credit_role = null;
							$credit_scheme = null;
							$credit_name = null;
							if (isset($credit['attribs']['']['role']))
							{
								$credit_role = $this->sanitize($credit['attribs']['']['role'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($credit['attribs']['']['scheme']))
							{
								$credit_scheme = $this->sanitize($credit['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							else
							{
								$credit_scheme = 'urn:ebu';
							}
							if (isset($credit['data']))
							{
								$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$credits[] = $this->registry->create('Credit', array($credit_role, $credit_scheme, $credit_name));
						}
						if (is_array($credits))
						{
							$credits = array_values(array_unique($credits));
						}
					}
					else
					{
						$credits = $credits_parent;
					}

					// DESCRIPTION
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['description']))
					{
						$description = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['description'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					else
					{
						$description = $description_parent;
					}

					// HASHES
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['hash']))
					{
						foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['hash'] as $hash)
						{
							$value = null;
							$algo = null;
							if (isset($hash['data']))
							{
								$value = $this->sanitize($hash['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($hash['attribs']['']['algo']))
							{
								$algo = $this->sanitize($hash['attribs']['']['algo'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							else
							{
								$algo = 'md5';
							}
							$hashes[] = $algo.':'.$value;
						}
						if (is_array($hashes))
						{
							$hashes = array_values(array_unique($hashes));
						}
					}
					else
					{
						$hashes = $hashes_parent;
					}

					// KEYWORDS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords']))
					{
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords'][0]['data']))
						{
							$temp = explode(',', $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['keywords'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
							foreach ($temp as $word)
							{
								$keywords[] = trim($word);
							}
							unset($temp);
						}
						if (is_array($keywords))
						{
							$keywords = array_values(array_unique($keywords));
						}
					}
					else
					{
						$keywords = $keywords_parent;
					}

					// PLAYER
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player']))
					{
						if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player'][0]['attribs']['']['url'])) {
							$player = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['player'][0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
						}
					}
					else
					{
						$player = $player_parent;
					}

					// RATINGS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['rating']))
					{
						foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['rating'] as $rating)
						{
							$rating_scheme = null;
							$rating_value = null;
							if (isset($rating['attribs']['']['scheme']))
							{
								$rating_scheme = $this->sanitize($rating['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							else
							{
								$rating_scheme = 'urn:simple';
							}
							if (isset($rating['data']))
							{
								$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$ratings[] = $this->registry->create('Rating', array($rating_scheme, $rating_value));
						}
						if (is_array($ratings))
						{
							$ratings = array_values(array_unique($ratings));
						}
					}
					else
					{
						$ratings = $ratings_parent;
					}

					// RESTRICTIONS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['restriction']))
					{
						foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['restriction'] as $restriction)
						{
							$restriction_relationship = null;
							$restriction_type = null;
							$restriction_value = null;
							if (isset($restriction['attribs']['']['relationship']))
							{
								$restriction_relationship = $this->sanitize($restriction['attribs']['']['relationship'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($restriction['attribs']['']['type']))
							{
								$restriction_type = $this->sanitize($restriction['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							if (isset($restriction['data']))
							{
								$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
							}
							$restrictions[] = $this->registry->create('Restriction', array($restriction_relationship, $restriction_type, $restriction_value));
						}
						if (is_array($restrictions))
						{
							$restrictions = array_values(array_unique($restrictions));
						}
					}
					else
					{
						$restrictions = $restrictions_parent;
					}

					// THUMBNAILS
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['thumbnail']))
					{
						foreach ($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['thumbnail'] as $thumbnail)
						{
							if (isset($thumbnail['attribs']['']['url'])) {
								$thumbnails[] = $this->sanitize($thumbnail['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI);
							}
						}
						if (is_array($thumbnails))
						{
							$thumbnails = array_values(array_unique($thumbnails));
						}
					}
					else
					{
						$thumbnails = $thumbnails_parent;
					}

					// TITLES
					if (isset($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['title']))
					{
						$title = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['title'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
					}
					else
					{
						$title = $title_parent;
					}

					$this->data['enclosures'][] = $this->registry->create('Enclosure', array($url, $type, $length, null, $bitrate, $captions, $categories, $channels, $copyrights, $credits, $description, $duration, $expression, $framerate, $hashes, $height, $keywords, $lang, $medium, $player, $ratings, $restrictions, $samplingrate, $thumbnails, $title, $width));
				}
			}
		}

		foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'link') as $link)
		{
			if (isset($link['attribs']['']['href']) && !empty($link['attribs']['']['rel']) && $link['attribs']['']['rel'] === 'enclosure')
			{
				// Attributes
				$bitrate = null;
				$channels = null;
				$duration = null;
				$expression = null;
				$framerate = null;
				$height = null;
				$javascript = null;
				$lang = null;
				$length = null;
				$medium = null;
				$samplingrate = null;
				$type = null;
				$url = null;
				$width = null;

				$url = $this->sanitize($link['attribs']['']['href'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($link));
				if (isset($link['attribs']['']['type']))
				{
					$type = $this->sanitize($link['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($link['attribs']['']['length']))
				{
					$length = ceil($link['attribs']['']['length']);
				}
				if (isset($link['attribs']['']['title']))
				{
					$title = $this->sanitize($link['attribs']['']['title'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				else
				{
					$title = $title_parent;
				}

				// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
				$this->data['enclosures'][] = $this->registry->create('Enclosure', array($url, $type, $length, null, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title, $width));
			}
		}

		foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'link') as $link)
		{
			if (isset($link['attribs']['']['href']) && !empty($link['attribs']['']['rel']) && $link['attribs']['']['rel'] === 'enclosure')
			{
				// Attributes
				$bitrate = null;
				$channels = null;
				$duration = null;
				$expression = null;
				$framerate = null;
				$height = null;
				$javascript = null;
				$lang = null;
				$length = null;
				$medium = null;
				$samplingrate = null;
				$type = null;
				$url = null;
				$width = null;

				$url = $this->sanitize($link['attribs']['']['href'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($link));
				if (isset($link['attribs']['']['type']))
				{
					$type = $this->sanitize($link['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($link['attribs']['']['length']))
				{
					$length = ceil($link['attribs']['']['length']);
				}

				// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
				$this->data['enclosures'][] = $this->registry->create('Enclosure', array($url, $type, $length, null, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width));
			}
		}

		if ($enclosure = $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'enclosure'))
		{
			if (isset($enclosure[0]['attribs']['']['url']))
			{
				// Attributes
				$bitrate = null;
				$channels = null;
				$duration = null;
				$expression = null;
				$framerate = null;
				$height = null;
				$javascript = null;
				$lang = null;
				$length = null;
				$medium = null;
				$samplingrate = null;
				$type = null;
				$url = null;
				$width = null;

				$url = $this->sanitize($enclosure[0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($enclosure[0]));
				if (isset($enclosure[0]['attribs']['']['type']))
				{
					$type = $this->sanitize($enclosure[0]['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT);
				}
				if (isset($enclosure[0]['attribs']['']['length']))
				{
					$length = ceil($enclosure[0]['attribs']['']['length']);
				}

				// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
				$this->data['enclosures'][] = $this->registry->create('Enclosure', array($url, $type, $length, null, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width));
			}
		}

		if (sizeof($this->data['enclosures']) === 0 && ($url || $type || $length || $bitrate || $captions_parent || $categories_parent || $channels || $copyrights_parent || $credits_parent || $description_parent || $duration_parent || $expression || $framerate || $hashes_parent || $height || $keywords_parent || $lang || $medium || $player_parent || $ratings_parent || $restrictions_parent || $samplingrate || $thumbnails_parent || $title_parent || $width))
		{
			// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
			$this->data['enclosures'][] = $this->registry->create('Enclosure', array($url, $type, $length, null, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width));
		}

		$this->data['enclosures'] = array_values(array_unique($this->data['enclosures']));
	}
	if (!empty($this->data['enclosures']))
	{
		return $this->data['enclosures'];
	}

	return null;
}