tmgmt_node_handler_field_jobs.inc 734 B

1234567891011121314151617181920212223242526
  1. <?php
  2. /**
  3. * Field handler which shows all jobs which contains a node.
  4. *
  5. * @TODO: This could probably abstracted into a more generic handler,
  6. * or even api function.
  7. */
  8. class tmgmt_node_ui_handler_field_jobs extends views_handler_field_prerender_list {
  9. function pre_render(&$values) {
  10. $nids = array();
  11. foreach ($values as $row) {
  12. $nid = $this->get_value($row);
  13. $nids[] = $nid;
  14. }
  15. $select = db_select('tmgmt_job', 'tj');
  16. $select->join('tmgmt_job_item', 'tji', "tj.id = %alias.tjid");
  17. $select->join('node', 'n', "tji.item_type = 'node' AND tji.plugin = 'node' AND tji.item_id = node.nid");
  18. $select->addField('n', 'nid');
  19. $select->addExpression('MAX(tj.id)');
  20. dpq($select);
  21. }
  22. }