diff options
Diffstat (limited to 'engine/classes')
| -rw-r--r-- | engine/classes/ElggAnnotation.php | 22 | ||||
| -rw-r--r-- | engine/classes/ElggEntity.php | 5 | ||||
| -rw-r--r-- | engine/classes/ElggMetadata.php | 24 | 
3 files changed, 45 insertions, 6 deletions
diff --git a/engine/classes/ElggAnnotation.php b/engine/classes/ElggAnnotation.php index 10f4269cf..274cbb923 100644 --- a/engine/classes/ElggAnnotation.php +++ b/engine/classes/ElggAnnotation.php @@ -78,7 +78,27 @@ class ElggAnnotation extends ElggExtender {  	 * @return bool  	 */  	function delete() { -		return delete_annotation($this->id); +		return elgg_delete_metastring_based_object_by_id($this->id, 'annotations'); +	} + +	/** +	 * Disable the annotation. +	 * +	 * @return bool +	 * @since 1.8 +	 */ +	function disable() { +		return elgg_set_metastring_based_object_enabled_by_id($this->id, 'no', 'annotations'); +	} + +	/** +	 * Enable the annotation. +	 * +	 * @return bool +	 * @since 1.8 +	 */ +	function enable() { +		return elgg_set_metastring_based_object_enabled_by_id($this->id, 'yes', 'annotations');  	}  	/** diff --git a/engine/classes/ElggEntity.php b/engine/classes/ElggEntity.php index ea2a329d9..4e1bc586c 100644 --- a/engine/classes/ElggEntity.php +++ b/engine/classes/ElggEntity.php @@ -292,9 +292,9 @@ abstract class ElggEntity extends ElggData implements  	public function setMetaData($name, $value, $value_type = "", $multiple = false) {  		if (is_array($value)) {  			unset($this->temp_metadata[$name]); -			remove_metadata($this->getGUID(), $name);  			foreach ($value as $v) {  				if ((int) $this->guid > 0) { +					elgg_delete_metadata(array('guid' => $this->guid, 'metadata_name' => $name));  					$multiple = true;  					if (!create_metadata($this->getGUID(), $name, $v, $value_type,  					$this->getOwnerGUID(), $this->getAccessID(), $multiple)) { @@ -349,7 +349,7 @@ abstract class ElggEntity extends ElggData implements  	 *  	 * @return mixed bool  	 */ -	public function clearMetaData($name = "") { +	public function clearMetaData($name = '') {  		if (empty($name)) {  			return clear_metadata($this->getGUID());  		} else { @@ -357,7 +357,6 @@ abstract class ElggEntity extends ElggData implements  		}  	} -  	/**  	 * Get a piece of volatile (non-persisted) data on this entity.  	 * diff --git a/engine/classes/ElggMetadata.php b/engine/classes/ElggMetadata.php index 9c13e936e..f85bac6ce 100644 --- a/engine/classes/ElggMetadata.php +++ b/engine/classes/ElggMetadata.php @@ -75,12 +75,32 @@ class ElggMetadata extends ElggExtender {  	}  	/** -	 * Delete a given metadata. +	 * Delete the metadata  	 *  	 * @return bool  	 */  	function delete() { -		return delete_metadata($this->id); +		return elgg_delete_metastring_based_object_by_id($this->id, 'metadata'); +	} + +	/** +	 * Disable the metadata +	 * +	 * @return bool +	 * @since 1.8 +	 */ +	function disable() { +		return elgg_set_metastring_based_object_enabled_by_id($this->id, 'no', 'metadata'); +	} + +	/** +	 * Disable the metadata +	 * +	 * @return bool +	 * @since 1.8 +	 */ +	function enable() { +		return elgg_set_metastring_based_object_enabled_by_id($this->id, 'yes', 'metadata');  	}  	/**  | 
