$id = $existing->id;\r
delete_metadata($id);\r
\r
- }
+ }\r
\r
return $id;\r
}\r
\r
$name = add_metastring($name);\r
if (!$name) return false;\r
-
+\r
// If ok then add it\r
$result = update_data("UPDATE {$CONFIG->dbprefix}metadata set value_id='$value', value_type='$value_type', access_id=$access_id, owner_guid=$owner_guid where id=$id and name_id='$name'");\r
if ($result!==false) {\r
\r
$id = (int)$id;\r
$metadata = get_metadata($id);\r
-
+ \r
if ($metadata) {\r
// Tidy up if memcache is enabled.\r
static $metabyname_memcache;\r
if ($metabyname_memcache) $metabyname_memcache->delete("{$metadata->entity_guid}:{$metadata->name_id}");\r
\r
if (($metadata->canEdit()) && (trigger_elgg_event('delete', 'metadata', $metadata)))\r
- return delete_data("DELETE from {$CONFIG->dbprefix}metadata where id=$id");
+ return delete_data("DELETE from {$CONFIG->dbprefix}metadata where id=$id");\r
}\r
-
+ \r
return false;\r
}\r
\r
$entity_subtype = get_subtype_id($entity_type, $entity_subtype);\r
$limit = (int)$limit;\r
$offset = (int)$offset;\r
- if ($order_by == "") $order_by = "e.time_created desc";\r
+ if ($order_by == "") \r
+ $order_by = "e.time_created desc";\r
+ else\r
+ $order_by = "e.time_created {$order_by}";\r
$order_by = sanitise_string($order_by);\r
$site_guid = (int) $site_guid;\r
if ((is_array($owner_guid) && (count($owner_guid)))) {\r
* @param int $offset\r
* @param string $order_by Optional ordering.\r
* @param int $site_guid The site to get entities for. Leave as 0 (default) for the current site; -1 for all sites.\r
- * @param true|false $count If set to true, returns the total number of entities rather than a list. (Default: false)
+ * @param true|false $count If set to true, returns the total number of entities rather than a list. (Default: false)\r
* @param string $meta_array_operator Operator used for joining the metadata array together\r
* @return int|array List of ElggEntities, or the total number if count is set to false\r
*/\r
$where = array();\r
\r
$mindex = 1;\r
- $join = "";
- $metawhere = array();
+ $join = "";\r
+ $metawhere = array();\r
$meta_array_operator = sanitise_string($meta_array_operator);\r
foreach($meta_array as $meta_name => $meta_value) {\r
$meta_n = get_metastring_id($meta_name);\r
/*if ($meta_name!=="")\r
$where[] = "m{$mindex}.name_id='$meta_n'";\r
if ($meta_value!=="")\r
- $where[] = "m{$mindex}.value_id='$meta_v'";*/
+ $where[] = "m{$mindex}.value_id='$meta_v'";*/\r
$metawhere[] = "(m{$mindex}.name_id='$meta_n' AND m{$mindex}.value_id='$meta_v')";\r
$mindex++;\r
- }
+ }\r
$where[] = "(".implode($meta_array_operator, $metawhere).")";\r
\r
$entity_type = sanitise_string($entity_type);\r
$offset = (int)$offset;\r
if ($order_by == "") $order_by = "e.time_created desc";\r
$order_by = sanitise_string($order_by);\r
- if ((is_array($owner_guid) && (count($owner_guid)))) {
- foreach($owner_guid as $key => $guid) {
- $owner_guid[$key] = (int) $guid;
- }
- } else {
- $owner_guid = (int) $owner_guid;
+ if ((is_array($owner_guid) && (count($owner_guid)))) {\r
+ foreach($owner_guid as $key => $guid) {\r
+ $owner_guid[$key] = (int) $guid;\r
+ }\r
+ } else {\r
+ $owner_guid = (int) $owner_guid;\r
}\r
\r
$site_guid = (int) $site_guid;\r
if ($entity_subtype)\r
$where[] = "e.subtype = {$entity_subtype}";\r
if ($site_guid > 0)\r
- $where[] = "e.site_guid = {$site_guid}";
- if (is_array($owner_guid)) {
- $where[] = "e.container_guid in (".implode(",",$owner_guid).")";
- } else if ($owner_guid > 0)
+ $where[] = "e.site_guid = {$site_guid}";\r
+ if (is_array($owner_guid)) {\r
+ $where[] = "e.container_guid in (".implode(",",$owner_guid).")";\r
+ } else if ($owner_guid > 0)\r
$where[] = "e.container_guid = {$owner_guid}";\r
//if ($owner_guid > 0)\r
// $where[] = "e.container_guid = {$owner_guid}";\r
return delete_data("DELETE from {$CONFIG->dbprefix}metadata where entity_guid={$entity_guid}");\r
}\r
return false;\r
- }
-
- /**
- * Clear all annotations belonging to a given owner_guid
- *
- * @param int $owner_guid The owner
- */
- function clear_metadata_by_owner($owner_guid)
- {
- global $CONFIG;
-
- $owner_guid = (int)$owner_guid;
-
- $metas = get_data("SELECT id from {$CONFIG->dbprefix}metadata WHERE owner_guid=$owner_guid");
- $deleted = 0;
-
- foreach ($metas as $id)
- {
- if (delete_metadata($id->id)) // Is this the best way?
- $deleted++;
- }
-
- return $deleted;
+ }\r
+ \r
+ /**\r
+ * Clear all annotations belonging to a given owner_guid\r
+ *\r
+ * @param int $owner_guid The owner\r
+ */\r
+ function clear_metadata_by_owner($owner_guid)\r
+ {\r
+ global $CONFIG;\r
+ \r
+ $owner_guid = (int)$owner_guid;\r
+ \r
+ $metas = get_data("SELECT id from {$CONFIG->dbprefix}metadata WHERE owner_guid=$owner_guid");\r
+ $deleted = 0;\r
+ \r
+ foreach ($metas as $id)\r
+ {\r
+ if (delete_metadata($id->id)) // Is this the best way?\r
+ $deleted++;\r
+ }\r
+ \r
+ return $deleted;\r
}\r
\r
/**\r
\r
if (is_string($string)) {\r
$ar = explode(",",$string);\r
- $ar = array_map('trim', $ar); // trim blank spaces
+ $ar = array_map('trim', $ar); // trim blank spaces\r
$ar = array_map('elgg_strtolower', $ar); // make lower case : [Marcus Povey 20090605 - Using mb wrapper function using UTF8 safe function where available]\r
$ar = array_filter($ar, 'is_not_null'); // Remove null values\r
return $ar;\r