You are here

function smartqueue_taxonomy_term_update in Nodequeue 7.3

Same name and namespace in other branches
  1. 7.2 modules/smartqueue/smartqueue.module \smartqueue_taxonomy_term_update()

Implements hook_taxonomy_term_update().

Updates subqueue title if term name changes.

File

./smartqueue.module, line 236

Code

function smartqueue_taxonomy_term_update($term) {

  // Find subqueues that contain this term.
  $result = db_query("SELECT nq.reference AS reference, sq.reference AS sqref, sq.sqid\n    FROM {nodequeue_queue} nq\n    INNER JOIN {nodequeue_subqueue} sq ON nq.name = sq.name\n    WHERE nq.owner = 'smartqueue_taxonomy'\n    AND (sq.reference = ?\n      OR sq.reference LIKE ?\n      OR sq.reference LIKE ?\n      OR sq.reference LIKE ?)", array(
    $term->tid,
    '%-' . $term->tid,
    $term->tid . '-%',
    '%-' . $term->tid . '-%',
  ))
    ->fetchAll();
  foreach ($result as $row) {

    // Note that $row already contains the needed $row->reference.
    $title = smartqueue_taxonomy_nodequeue_subqueue_title($row, $row->sqref);
    nodequeue_subqueue_update_title($row->sqid, $title);
  }
}