function workbench_access_feeds_set_target in Workbench Access 7
Feeds target callback for setting the current workbench state.
1 string reference to 'workbench_access_feeds_set_target'
File
- ./
workbench_access.feeds.inc, line 23 - Feeds mappers for Workbench Access.
Code
function workbench_access_feeds_set_target($source, $entity, $target, $value) {
$tree = workbench_access_get_active_tree();
if (empty($tree['active'])) {
return;
}
$sections = array();
$current_section = FALSE;
// In some cases $value is an array. We need only the first value.
if (is_array($value)) {
$value = $value[0];
}
$value = trim($value);
foreach ($tree['active'] as $id => $data) {
$sections[$id] = $tree['tree'][$id]['name'];
}
if (isset($sections[$value])) {
$current_section = $value;
}
else {
foreach ($sections as $id => $name) {
if ($name == trim($value)) {
$current_section = $id;
break;
}
}
}
// Only set a new current state if we have a valid new state.
if ($current_section !== FALSE) {
$entity->workbench_access = $current_section;
}
}