function ctools_context_get_context_from_arguments
Load the contexts for a given list of arguments.
Parameters
array $arguments: The array of argument definitions.
array &$contexts: The array of existing contexts. New contexts will be added to this array.
array $args: The arguments to load.
Return value
bool TRUE if all is well, FALSE if an argument wants to 404.
See also
ctools_context_get_context_from_argument()
1 call to ctools_context_get_context_from_arguments()
- ctools_context_handler_get_task_contexts in includes/
context-task-handler.inc - Load the contexts for a task, using arguments.
File
-
includes/
context.inc, line 1259
Code
function ctools_context_get_context_from_arguments($arguments, &$contexts, $args) {
foreach ($arguments as $argument) {
// Pull the argument off the list.
$arg = array_shift($args);
$id = ctools_context_id($argument, 'argument');
// For % arguments embedded in the URL, our context is already loaded.
// There is no need to go and load it again.
if (empty($contexts[$id])) {
if ($context = ctools_context_get_context_from_argument($argument, $arg)) {
$contexts[$id] = $context;
}
}
else {
$context = $contexts[$id];
}
if ((empty($context) || empty($context->data)) && !empty($argument['default']) && $argument['default'] === '404') {
return FALSE;
}
}
return TRUE;
}