You are here

function views_handler_filter_uid_touched in Views (for Drupal 7) 5

1 string reference to 'views_handler_filter_uid_touched'
node_views_tables in modules/views_node.inc
This include file implements views functionality on behalf of node.module

File

modules/views_user.inc, line 377

Code

function views_handler_filter_uid_touched($op, $filter, $filterinfo, &$query) {
  if (!module_exists('comment')) {

    // not much to do in this case
    $query
      ->add_where("node.uid = '%s'", $filter['value']);
    return;
  }
  $table_data = _views_get_tables();
  $joininfo = $table_data['comments']['join'];
  $joininfo['extra'] = array(
    'uid' => $filter['value'],
  );
  $tblnum = $query
    ->add_table('comments', false, 1, $joininfo);
  $table = $query
    ->get_table_name('comments', $tblnum);
  $query
    ->set_distinct();

  // once you do this, there's just one node.
  $query
    ->add_where("node.uid = '%s' OR {$table}.uid = '%s'", $filter['value'], $filter['value']);
}