function workbench_scheduler_features_export_render in Workbench Scheduler 7.2
Same name and namespace in other branches
- 7 workbench_scheduler.features.inc \workbench_scheduler_features_export_render()
Implements COMPONENT_features_export_render().
Render workbench schedules as code.
File
- ./
workbench_scheduler.features.inc, line 54 - Features file for the workbench_scheduler module.
Code
function workbench_scheduler_features_export_render($module_name, $data) {
$items = array();
foreach ($data as $schedule) {
// TODO: refactor this, pass it sid. (but still save machine name in feature).
$items[$schedule] = workbench_scheduler_machine_name_schedules_load($schedule);
// Unset SID to prevent overridden state.
unset($items[$schedule]->sid);
}
// Get transition info.
// Include workbench moderation.
module_load_include('module', 'workbench_moderation');
$transitions = workbench_moderation_transitions();
foreach ($items as $key => $schedule) {
// Get transition state info.
if (!empty($schedule->transition)) {
foreach ($transitions as $transition) {
if ($transition->id == $schedule->transition) {
$schedule->from_name = $transition->from_name;
$schedule->to_name = $transition->to_name;
break;
}
}
}
}
foreach ($items as $key => $schedule) {
// Unset SID to prevent overridden state.
unset($items[$key]->sid);
// Unset transition ID because this is mutable between databases.
unset($items[$key]->transition);
}
$code = " \$items = " . features_var_export($items, ' ') . ";\n";
$code .= ' return $items;';
return array(
'workbench_scheduler_export_schedules' => $code,
);
}