0 && stormproject_access('update', $form['project']['#value'])) {
drupal_add_tabledrag('tasks', 'match', 'parent', 'task-parent-nid', 'task-parent-nid', 'task-nid', TRUE);
drupal_add_tabledrag('tasks', 'order', 'sibling', 'task-weight');
}
$header = array();
$row = array();
$header = $form['header']['#value'];
unset($form['header']);
foreach (element_children($form['tasks']) as $key) {
$form['tasks'][$key]['task_parent-nid_'. $key]['#attributes']['class'] = 'task-parent-nid';
$form['tasks'][$key]['task_nid_'. $key]['#attributes']['class'] = 'task-nid';
$form['tasks'][$key]['task_weight_'. $key]['#attributes']['class'] = 'task-weight';
$durationunit = $form['tasks'][$key]['task_durationunit_'. $key]['#value'];
$data = array(
theme('indentation', $form['tasks'][$key]['task_depth_'. $key]['#value']) . drupal_render($form['tasks'][$key]['task_description_'. $key]),
drupal_render($form['tasks'][$key]['task_category_'. $key]),
drupal_render($form['tasks'][$key]['task_status_'. $key]),
drupal_render($form['tasks'][$key]['task_priority_'. $key]),
drupal_render($form['tasks'][$key]['task_datebegin_'. $key]),
drupal_render($form['tasks'][$key]['task_dateend_'. $key]),
array(
'data' => sprintf('%.2f', drupal_render($form['tasks'][$key]['task_duration_'. $key])) .' '. substr($durationunit, 0, 1),
'style' => 'text-align: right'),
drupal_render($form['tasks'][$key]['task_parent-nid_'. $key]) . drupal_render($form['tasks'][$key]['task_nid_'. $key]),
drupal_render($form['tasks'][$key]['task_weight_'. $key]),
array(
'data' => drupal_render($form['tasks'][$key]['task_operations_'. $key]),
'class' => 'storm_list_operations',
),
);
if (!stormproject_access('update', $form['project']['#value'])) {
unset($data[7]);
unset($data[8]);
}
$row['data'] = $data;
$row['class'] = stormproject_access('update', $form['project']['#value']) ? 'draggable' : '';
$row_group = strpos($form['tasks'][$key]['task_category_'. $key]['#value'], 'category_tasks_group') ? 'row-group' : '';
$row['class'] = empty($row['class']) ? $row_group : $row['class'] .' '. $row_group;
$rows[] = $row;
}
$o = theme('table', $header, $rows, array('id' => 'tasks'));
return $o;
}
function theme_stormtask_list($header, $tasks) {
$rows = array();
foreach ($tasks as $task) {
$datebegin = !empty($task->datebegin) ? _format_short_date($task->datebegin) . '
' : ' ';
$dateend = !empty($task->dateend) ? _format_short_date($task->dateend) : '';
$rows[] = array(
// Add classes to each row in table.
// Allows customisation of row via css depending on the task's attributes (category, status, priority)
'class' =>
'storm_category_'. preg_replace('/[^a-zA-Z]/', '', $task->taskcategory) . ' ' .
'storm_status_'. preg_replace('/[^a-zA-Z]/', '', $task->taskstatus) . ' ' .
'storm_priority_'. preg_replace('/[^a-zA-Z]/', '', $task->taskpriority),
'data' => array(
storm_icon('category_'. $task->taskcategory, storm_attribute_value('Task category', $task->taskcategory)),
storm_icon('status_'. $task->taskstatus, storm_attribute_value('Task status', $task->taskstatus)),
'' . l($task->title, 'node/'. $task->nid) . theme('mark', node_mark($task->nid, $task->changed)) . '
' .
l($task->organization_title, 'node/'. $task->organization_nid) .' ยป '.
l($task->project_title, 'node/'. $task->project_nid),
$datebegin . $dateend,
$task->clip ? storm_icon('attached', t('Has attached files')) : ' ',
_format_small_date($task->changed),
storm_icon('priority_'. $task->taskpriority, storm_attribute_value('Task priority', $task->taskpriority)),
array(
'data' => $task->comment_count,
'class' => 'stormtask-list-comments',
),
array(
'data' => storm_icon_comment_node($task, $_GET) . storm_icon_gantt_task($task, $_GET) . storm_icon_edit_node($task, $_GET) . storm_icon_delete_node($task, $_GET),
'class' => 'storm_list_operations',
),
),
);
}
$o = theme('table', $header, $rows, array('id' => 'stormtasks'));
return $o;
}
function theme_stormtask_view($node, $teaser = FALSE, $page = FALSE) {
$node = node_prepare($node, $teaser);
$l_pos = 1; // Used to increase the link position number (see issue 814820)
$node->content['links'] = array(
'#prefix' => '