aboutsummaryrefslogtreecommitdiff
path: root/engine/classes/XmlElement.php
diff options
context:
space:
mode:
authorBrett Profitt <brett.profitt@gmail.com>2012-12-05 18:30:10 -0500
committerBrett Profitt <brett.profitt@gmail.com>2012-12-05 18:30:10 -0500
commit6676577386c72d4a024c5c61a948589db8aaf9c7 (patch)
treec465f11d41998f11c9ad0c3fb07fa03cfe92ffbf /engine/classes/XmlElement.php
parent00b2501721a25acec48c9c9561844e2db86e39dd (diff)
downloadelgg-6676577386c72d4a024c5c61a948589db8aaf9c7.tar.gz
elgg-6676577386c72d4a024c5c61a948589db8aaf9c7.tar.bz2
Renamed XmlElement changes to ElggXMLElement. Fixed plugin manifest parsing.
Diffstat (limited to 'engine/classes/XmlElement.php')
-rw-r--r--engine/classes/XmlElement.php112
1 files changed, 10 insertions, 102 deletions
diff --git a/engine/classes/XmlElement.php b/engine/classes/XmlElement.php
index eb7987731..280bba664 100644
--- a/engine/classes/XmlElement.php
+++ b/engine/classes/XmlElement.php
@@ -6,107 +6,15 @@
* @subpackage XML
*/
class XmlElement {
- /**
- * @var SimpleXMLElement
- */
- private $_element;
-
- /**
- * Creates XmlElement from string or existing SimpleXMLElement
- * @param string|SimpleXMLElement $xml
- */
- public function __construct($xml) {
- if ($xml instanceof SimpleXMLElement) {
- $this->_element = $xml;
- } else {
- $this->_element = new SimpleXMLElement($xml);
- }
- }
-
- /**
- * @return string The name of the element
- */
- public function getName() {
- return $this->_element->getName();
- }
-
- /**
- * @return array:string The attributes
- */
- public function getAttributes() {
- //include namespace declarations as attributes
- $xmlnsRaw = $this->_element->getNamespaces();
- $xmlns = array();
- foreach ($xmlnsRaw as $key => $val) {
- $label = 'xmlns'.($key?":$key":$key);
- $xmlns[$label] = $val;
- }
- //get attributes and merge with namespaces
- $attrRaw = $this->_element->attributes();
- $attr = array();
- foreach ($attrRaw as $key => $val) {
- $attr[$key] = $val;
- }
- $attr = array_merge((array)$xmlns, (array)$attr);
- $result = array();
- foreach ($attr as $key => $val) {
- $result[$key] = (string)$val;
- }
- return $result;
- }
-
- /**
- * @return string CData
- */
- public function getContent() {
- return (string)$this->_element;
- }
-
- /**
- * @return array:XmlElement Child elements
- */
- public function getChildren() {
- $children = $this->_element->children();
- $result = array();
- foreach ($children as $val) {
- $result[] = new XmlElement($val);
- }
- return $result;
- }
+ /** The name of the element */
+ public $name;
- function __get($name) {
- switch ($name) {
- case 'name':
- return $this->getName();
- break;
- case 'attributes':
- return $this->getAttributes();
- break;
- case 'content':
- return $this->getContent();
- break;
- case 'children':
- return $this->getChildren();
- break;
- }
- return null;
- }
-
- function __isset($name) {
- switch ($name) {
- case 'name':
- return $this->getName()!==null;
- break;
- case 'attributes':
- return $this->getAttributes()!==null;
- break;
- case 'content':
- return $this->getContent()!==null;
- break;
- case 'children':
- return $this->getChildren()!==null;
- break;
- }
- return false;
- }
+ /** The attributes */
+ public $attributes;
+
+ /** CData */
+ public $content;
+
+ /** Child elements */
+ public $children;
};