You are here

function spaces_controller::del in Spaces 6.3

Same name and namespace in other branches
  1. 7.3 plugins/spaces_controller.inc \spaces_controller::del()
  2. 7 plugins/spaces_controller.inc \spaces_controller::del()

Delete a controller object override for this space.

File

plugins/spaces_controller.inc, line 203

Class

spaces_controller
Abstract base class for a spaces controller. Classes that extend spaces_controller must implement load_original_values().

Code

function del($id = NULL) {
  $query = "{spaces_overrides} WHERE type = '%s' AND id = '%s' AND object_type = '%s'";
  $override = array(
    'type' => $this->space_type,
    'id' => $this->space_id,
    'object_type' => $this->controller,
  );
  if (isset($id)) {
    $query .= " AND object_id = '%s'";
    $override['object_id'] = $id;
  }
  $exists = db_result(db_query("SELECT id FROM {$query}", $override));
  if ($exists) {
    db_query("DELETE FROM {$query}", $override);
    if (isset($this->values['space'][$id])) {
      unset($this->values['space'][$id]);
    }
    return TRUE;
  }
  return FALSE;
}