/**
  * 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);
 }