You've already forked joomla_test
							
							first commit
This commit is contained in:
		
							
								
								
									
										206
									
								
								libraries/joomla/feed/parser/atom.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										206
									
								
								libraries/joomla/feed/parser/atom.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,206 @@ | ||||
| <?php | ||||
| /** | ||||
|  * @package     Joomla.Platform | ||||
|  * @subpackage  Feed | ||||
|  * | ||||
|  * @copyright   Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved. | ||||
|  * @license     GNU General Public License version 2 or later; see LICENSE | ||||
|  */ | ||||
|  | ||||
| defined('JPATH_PLATFORM') or die; | ||||
|  | ||||
| /** | ||||
|  * ATOM Feed Parser class. | ||||
|  * | ||||
|  * @package     Joomla.Platform | ||||
|  * @subpackage  Feed | ||||
|  * @link        http://www.atomenabled.org/developers/syndication/ | ||||
|  * @since       12.3 | ||||
|  */ | ||||
| class JFeedParserAtom extends JFeedParser | ||||
| { | ||||
| 	/** | ||||
| 	 * @var    string  The feed format version. | ||||
| 	 * @since  12.3 | ||||
| 	 */ | ||||
| 	protected $version; | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <author> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleAuthor(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		// Set the author information from the XML element. | ||||
| 		$feed->setAuthor((string) $el->name, (string) $el->email, (string) $el->uri); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <contributor> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleContributor(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->addContributor((string) $el->name, (string) $el->email, (string) $el->uri); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <generator> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleGenerator(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->generator = (string) $el; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <id> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleId(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->uri = (string) $el; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <link> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleLink(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$link = new JFeedLink; | ||||
| 		$link->uri      = (string) $el['href']; | ||||
| 		$link->language = (string) $el['hreflang']; | ||||
| 		$link->length   = (int) $el['length']; | ||||
| 		$link->relation = (string) $el['rel']; | ||||
| 		$link->title    = (string) $el['title']; | ||||
| 		$link->type     = (string) $el['type']; | ||||
|  | ||||
| 		$feed->link = $link; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <rights> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleRights(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->copyright = (string) $el; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <subtitle> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleSubtitle(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->description = (string) $el; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <title> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleTitle(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->title = (string) $el; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the <updated> element for the feed. | ||||
| 	 * | ||||
| 	 * @param   JFeed             $feed  The JFeed object being built from the parsed feed. | ||||
| 	 * @param   SimpleXMLElement  $el    The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function handleUpdated(JFeed $feed, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$feed->updatedDate = (string) $el; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to initialise the feed for parsing.  Here we detect the version and advance the stream | ||||
| 	 * reader so that it is ready to parse feed elements. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function initialise() | ||||
| 	{ | ||||
| 		// Read the version attribute. | ||||
| 		$this->version = ($this->stream->getAttribute('version') == '0.3') ? '0.3' : '1.0'; | ||||
|  | ||||
| 		// We want to move forward to the first element after the root element. | ||||
| 		$this->moveToNextElement(); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Method to handle the feed entry element for the feed: <entry>. | ||||
| 	 * | ||||
| 	 * @param   JFeedEntry        $entry  The JFeedEntry object being built from the parsed feed entry. | ||||
| 	 * @param   SimpleXMLElement  $el     The current XML element object to handle. | ||||
| 	 * | ||||
| 	 * @return  void | ||||
| 	 * | ||||
| 	 * @since   12.3 | ||||
| 	 */ | ||||
| 	protected function processFeedEntry(JFeedEntry $entry, SimpleXMLElement $el) | ||||
| 	{ | ||||
| 		$entry->uri         = (string) $el->id; | ||||
| 		$entry->title       = (string) $el->title; | ||||
| 		$entry->updatedDate = (string) $el->updated; | ||||
| 		$entry->content     = (string) $el->summary; | ||||
| 	} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 alazhar
					alazhar