diff options
Diffstat (limited to 'engine/classes')
| -rw-r--r-- | engine/classes/ElggPlugin.php | 1 | ||||
| -rw-r--r-- | engine/classes/ElggPluginManifest.php | 16 | 
2 files changed, 15 insertions, 2 deletions
| diff --git a/engine/classes/ElggPlugin.php b/engine/classes/ElggPlugin.php index fb9138ab9..eac98da57 100644 --- a/engine/classes/ElggPlugin.php +++ b/engine/classes/ElggPlugin.php @@ -83,6 +83,7 @@ class ElggPlugin extends ElggObject {  			$this->manifest = $this->package->getManifest();  		} catch (Exception $e) {  			// we always have to allow the entity to load. +			elgg_log("Failed to load $this->guid as a plugin. " . $e->getMessage(), 'WARNING');  		}  	} diff --git a/engine/classes/ElggPluginManifest.php b/engine/classes/ElggPluginManifest.php index 9fcdaaf55..290a59a0c 100644 --- a/engine/classes/ElggPluginManifest.php +++ b/engine/classes/ElggPluginManifest.php @@ -330,7 +330,12 @@ class ElggPluginManifest {  	 * @return array  	 */  	public function getProvides() { -		$provides = $this->parser->getAttribute('provides'); +		// normalize for 1.7 +		if ($this->getApiVersion() < 1.8) { +			$provides = array(); +		} else { +			$provides = $this->parser->getAttribute('provides'); +		}  		if (!$provides) {  			$provides = array(); @@ -370,6 +375,8 @@ class ElggPluginManifest {  						'comparison' => 'ge'  					)  				); +			} else { +				$reqs = array();  			}  		} else {  			$reqs = $this->parser->getAttribute('requires'); @@ -465,7 +472,12 @@ class ElggPluginManifest {  	 * @return array  	 */  	public function getConflicts() { -		$conflicts = $this->parser->getAttribute('conflicts'); +		// normalize for 1.7 +		if ($this->getApiVersion() < 1.8) { +			$conflicts = array(); +		} else { +			$conflicts = $this->parser->getAttribute('conflicts'); +		}  		if (!$conflicts) {  			$conflicts = array(); | 
