function commerce_registration_administer_registrations_access in Commerce Registration 7.2
Same name and namespace in other branches
- 7.3 commerce_registration.module \commerce_registration_administer_registrations_access()
Access callback. Callback for modifying settings and sending emails for a given product display.
Parameters
$type:
$node:
Return value
bool
1 string reference to 'commerce_registration_administer_registrations_access'
- commerce_registration_menu_alter in ./
commerce_registration.module - Implements hook_menu_alter().
File
- ./
commerce_registration.module, line 135 - Commerce Registration module code.
Code
function commerce_registration_administer_registrations_access($type, $node) {
// Loop through each product on the node, and if it contains a registration
// type and the user can administer them, then we allow it.
$fields = field_read_fields(array(
'type' => 'commerce_product_reference',
));
foreach ($fields as $field) {
if (isset($node->{$field['field_name']})) {
foreach ($node->{$field['field_name']} as $product) {
$product = commerce_product_load($product[0]['product_id']);
if (registration_get_entity_registration_type('commerce_product', $product) && !commerce_registration_hide_tab($node)) {
$registration_type = registration_get_entity_registration_type('commerce_product', $product);
if ($registration_type && !commerce_registration_hide_tab($node)) {
return user_access('administer registration') || user_access("administer {$registration_type} registration");
}
}
}
}
}
return registration_administer_registrations_access($type, $node);
}