From 479b71232be6634e59868d72471d798c4fbabfce Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Sun, 22 Aug 2010 16:11:12 +0000 Subject: - Patch #860180 by chx, dixon_, jhodgdon: entity listing and loading does not allow for node access. --- modules/node/tests/node_access_test.module | 40 ++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'modules/node/tests/node_access_test.module') diff --git a/modules/node/tests/node_access_test.module b/modules/node/tests/node_access_test.module index eaae6b80a..ac71667ef 100644 --- a/modules/node/tests/node_access_test.module +++ b/modules/node/tests/node_access_test.module @@ -58,6 +58,12 @@ function node_access_test_menu() { 'access arguments' => array('access content'), 'type' => MENU_SUGGESTED_ITEM, ); + $items['node_access_entity_test_page'] = array( + 'title' => 'Node access test', + 'page callback' => 'node_access_entity_test_page', + 'access arguments' => array('access content'), + 'type' => MENU_SUGGESTED_ITEM, + ); return $items; } @@ -100,3 +106,37 @@ function node_access_test_page() { return $output; } + +/** + * Page callback for node access entity test page. + * + * Page should say "No nodes" if there are no nodes, and "Yes, # nodes" (with + * the number filled in) if there were nodes the user could access. Also, the + * database query is shown, and a list of the node IDs, for debugging purposes. + * And if there is a query exception, the page says "Exception" and gives the + * error. + */ +function node_access_entity_test_page() { + $output = ''; + try { + $query = new EntityFieldQuery; + $result = $query->fieldCondition('body', 'value', 'A', 'STARTS_WITH')->execute(); + if (!empty($result['node'])) { + $output .= '

Yes, ' . count($result['node']) . ' nodes

'; + $output .= ''; + } + else { + $output .= '

No nodes

'; + } + } + catch (Exception $e) { + $output = '

Exception

'; + $output .= '

' . $e->getMessage() . '

'; + } + + return $output; +} -- cgit v1.2.3