You are here

function smartqueue_get_subqueues_by_term in Nodequeue 7.2

Fetches info about all subqueues for a term.

Parameters

$term: The fully loaded taxonomy term that will be loaded by the hook_menu.

Return value

array Array of all subqueues for this term keyed by Queue ID.

2 calls to smartqueue_get_subqueues_by_term()
smartqueue_term_tab in modules/smartqueue/smartqueue.admin.inc
Display the queue controls for a taxonomy term.
smartqueue_term_tab_access in modules/smartqueue/smartqueue.module
Access callback for smartqueue_term_tab().

File

modules/smartqueue/smartqueue.module, line 82

Code

function smartqueue_get_subqueues_by_term($term) {

  // SELECT nq.reference AS reference, sq.reference AS sqref, sq.sqid as id FROM nodequeue_queue nq INNER JOIN nodequeue_subqueue sq ON nq.qid = sq.qid WHERE nq.owner = 'smartqueue_taxonomy' AND sq.reference = 717;
  $result = db_query("SELECT\n      nq.title as title,\n      nq.qid as queue_id,\n      nq.reference AS field_name,\n      sq.reference AS subqueue_ref,\n      sq.sqid as subqueue_id\n    FROM {nodequeue_queue} nq\n    INNER JOIN {nodequeue_subqueue} sq ON nq.qid = sq.qid\n    WHERE nq.owner = 'smartqueue_taxonomy'\n    AND (sq.reference = :tid\n      OR sq.reference LIKE :like2\n      OR sq.reference LIKE :like3\n      OR sq.reference LIKE :like4)", array(
    ':tid' => $term->tid,
    ':like2' => '%-' . $term->tid,
    ':like3' => $term->tid . '-%',
    ':like4' => '%-' . $term->tid . '-%',
  ))
    ->fetchAll();
  $subqueues = array();
  foreach ($result as $row) {
    $subqueues[$row->queue_id] = array(
      'title' => $row->title,
      'qid' => $row->queue_id,
      'subqueue_id' => $row->subqueue_id,
      'path' => 'admin/structure/nodequeue/' . $row->queue_id . '/view/' . $row->subqueue_id,
    );
  }
  return $subqueues;
}