/** * Purges a record from the database * * @param string $revision_id * @param string $table * @return boolean */ public static function purge_revision($object_id, $revision_id, $table) { $revision = self::get_revision($object_id, $table, $revision_id); if (argent_error::check($revision)) { return $revision; } $error = new argent_error(); if (!argent_meta::object_registered($object_id)) { $error->add('1038', 'Object does not exist', $object_id, 'argent_uauth'); } if (!self::object_exists($user_id)) { $error->add('1013', 'Invalid user account', $user_id, 'argent_uauth'); } if (!argent_uauth::has_permission(AG_PERMISSION_DELETE, $object_id)) { $error->add('1024', 'Access denied', $object_id, 'argent_meta'); } if ($error->has_errors()) { return $error; } $db = new argent_database(); $sql = "\r\n DELETE FROM\r\n `{$table}`\r\n WHERE\r\n `meta_guid` = '{$db->escape_value($revision_id)}'\r\n "; return $db->query($sql); }