You are here

function workbench_scheduler_delete_node_schedule in Workbench Scheduler 7.2

Same name and namespace in other branches
  1. 7 workbench_scheduler.module \workbench_scheduler_delete_node_schedule()

Delete the schedule(s) for a node.

Parameters

int $nid: The node_id.

int $vid: Optional node revision id.

int $sid: Optional schedule id.

Return value

bool Boolean result of delete query.

6 calls to workbench_scheduler_delete_node_schedule()
workbench_scheduler_admin_edit_revision_schedule_submit in ./workbench_scheduler.admin.inc
Submit function for editing the schedule applied to a node's revision.
workbench_scheduler_admin_manage_node_schedules_submit in ./workbench_scheduler.admin.inc
Submit function for deleting the schedule(s) set for a node's vid.
workbench_scheduler_node_delete in ./workbench_scheduler.module
Implements hook_node_delete().
workbench_scheduler_node_form_submit in ./workbench_scheduler.module
Submit function for editing a scheduled node.
workbench_scheduler_node_revision_delete in ./workbench_scheduler.module
Implements hook_node_revision_delete().

... See full list

File

./workbench_scheduler.module, line 965
Content scheduling for Workbench.

Code

function workbench_scheduler_delete_node_schedule($nid, $vid = 0, $sid = 0) {

  // Build the delete query.
  $delete = db_delete('workbench_scheduler_nodes')
    ->condition('nid', $nid);

  // Deleting for a specific revision?
  if ($vid) {
    $delete
      ->condition('vid', $vid);
  }

  // Deleting for a specific schedule.
  if ($sid) {
    $delete
      ->condition('sid', $sid);
  }
  $delete = $delete
    ->execute();
  if ($delete) {
    module_invoke_all('workbench_scheduler_post_delete_node_schedule', $nid, $vid, $sid);

    // Clear the cache to ensure the node edit form is accurate.
    entity_get_controller('node')
      ->resetCache(array(
      $nid,
    ));
    return $delete;
  }
}