function node_limit_access in Node Limit 8
Same name and namespace in other branches
- 7 node_limit.module \node_limit_access()
Custom access callback for node/add/TYPE pages.
Parameters
string $type: Content type to check.
object $account: User account to check (default to current user).
2 calls to node_limit_access()
- node_limit_node_prepare in old/
node_limit.module - Implements hook_node_prepare().
- _node_limit_add_access in old/
node_limit.module - Rewriten access callback for node/add page.
1 string reference to 'node_limit_access'
- node_limit_menu_alter in old/
node_limit.module - Implements hook_menu_alter().
File
- old/
node_limit.module, line 142
Code
function node_limit_access($type, $account = NULL) {
global $user;
if (empty($account)) {
$account = $user;
}
$access =& drupal_static(__FUNCTION__, array());
if (!array_key_exists($account->uid, $access)) {
$access[$account->uid] = array();
}
if (!array_key_exists($type, $access[$account->uid])) {
$node = new stdClass();
$node->uid = $account->uid;
$node->type = $type;
$oldCallback = variable_get('node_limit_' . $type . '_access_callback');
$oldArguments = variable_get('node_limit_' . $type . '_access_arguments', array());
$oldAccess = function_exists($oldCallback) ? call_user_func_array($oldCallback, $oldArguments) : TRUE;
$access[$account->uid][$type] = !_node_limit_violates_limit($node) && $oldAccess;
}
return $access[$account->uid][$type];
}