function views_gantt_update_tasks in Views Gantt 7
Callback for task/project update when we change it in Gantt chart.
1 string reference to 'views_gantt_update_tasks'
- views_gantt_menu in ./
views_gantt.module - Implements hook_menu().
File
- ./
views_gantt.module, line 130 - Module file for Views Gantt
Code
function views_gantt_update_tasks($task_id) {
// tmp.
if ($_POST) {
$_SESSION['views_gantt_save'] = $_POST;
}
if (isset($_SESSION['views_gantt_save'])) {
$data = $_SESSION['views_gantt_save'];
$view_name = $data['view_name'];
$style_options = views_gantt_get_style_options($view_name);
// Update project info.
if (isset($data['fields']['project_date_field'])) {
$project_date = $data['fields']['project_date_field'];
unset($data['fields']['project_date_field']);
$project_id = $data['project_id'];
$project = node_load($project_id);
if ($project) {
views_gantt_update_node($project, array(
'project_date_field' => $project_date,
), $style_options);
}
}
// Update task info.
$task = node_load($task_id);
if ($task) {
if (isset($data['action']) && $data['action'] == 'drag') {
$date_field = $data['fields']['date_field'];
$end_date_field = $data['fields']['end_date_field'];
if ($date_field == $end_date_field) {
$data['fields']['end_date_field'] += 3600 * 24;
}
}
views_gantt_update_node($task, $data['fields'], $style_options);
}
}
// Show empty page in browser.
return NULL;
}