You are here

function context_admin_node_menu_access_check in Contextual Administration 7

Check for access.

1 string reference to 'context_admin_node_menu_access_check'
node_menu.inc in plugins/access/node_menu.inc
Plugin to provide access control based upon existence in a particular menu.

File

plugins/access/node_menu.inc, line 59
Plugin to provide access control based upon existence in a particular menu.

Code

function context_admin_node_menu_access_check($conf, $context) {

  // Per the example in node type in core ctools
  if (empty($context) || empty($context->data) || empty($context->data->nid)) {
    return FALSE;
  }

  //$results = db_query("SELECT mlid, p1, p2, p3, p4, p5, p6, p7, p8, p9 FROM {menu_links} WHERE link_path = 'node/%d' AND module = 'menu' AND menu_name = '%s'", $context->data->nid, $conf['menu']);
  $query = db_select('menu_links', 'ml')
    ->fields('ml', array(
    'mlid',
    'p1',
    'p2',
    'p3',
    'p4',
    'p5',
    'p6',
    'p7',
    'p8',
    'p9',
  ))
    ->condition('link_path', 'node/' . $context->data->nid, '=')
    ->condition('module', 'menu', '=')
    ->condition('menu_name', $conf['menu'], '=');
  $result = $query
    ->execute()
    ->fetchObject();
  if ($result) {
    return TRUE;
  }
  return FALSE;
}