$project) {
$rows[] = array(
storm_icon('projectcategory_'. $project->projectcategory, $project->projectcategory),
l($project->organization_title, 'node/'. $project->organization_nid),
l($project->title, 'node/'. $project->nid) . theme('mark', node_mark($project->nid, $project->changed)),
storm_icon('status_'. check_plain($project->projectstatus), check_plain($project->projectstatus)),
storm_icon('priority_'. check_plain($project->projectpriority), check_plain($project->projectpriority)),
array(
'data' => storm_icon_edit_node($project, $_GET) .' '. storm_icon_delete_node($project, $_GET),
'class' => 'storm_list_operations',
),
);
}
$o = theme('table', $header, $rows);
return $o;
}
function theme_stormproject_view($node, $teaser = FALSE, $page = FALSE) {
drupal_add_css(drupal_get_path('module', 'storm') . '/storm-node.css', 'module');
$node = node_prepare($node, $teaser);
$l_pos = 1; // Used to increase the link position number (see issue 814820)
$node->content['links'] = array(
'#prefix' => '
',
'#weight' => -25,
);
$node->content['links']['expenses'] = theme('storm_link', 'stormproject', 'stormexpense', $node->nid, $l_pos++);
$node->content['links']['invoices'] = theme('storm_link', 'stormproject', 'storminvoice', $node->nid, $l_pos++);
$node->content['links']['notes'] = theme('storm_link', 'stormproject', 'stormnote', $node->nid, $l_pos++);
$node->content['links']['tasks'] = theme('storm_link', 'stormproject', 'stormtask', $node->nid, $l_pos++);
$node->content['links']['tickets'] = theme('storm_link', 'stormproject', 'stormticket', $node->nid, $l_pos++);
$node->content['links']['timetrackings'] = theme('storm_link', 'stormproject', 'stormtimetracking', $node->nid, $l_pos++);
// Code to create invoice auto_add link
if (module_exists('storminvoice')) {
$node->content['links']['auto_invoice'] = array(
'#prefix' => variable_get('storm_icons_display', TRUE) ? '' : '',
'#suffix' => '',
'#value' => theme('storminvoice_autoadd_links', $node->nid, $node->billable, $node->billed),
'#weight' => $l_pos++,
);
}
$node->content['group1'] = array(
'#prefix' => '',
'#suffix' => '
',
'#weight' => module_exists('content') ? content_extra_field_weight($node->type, 'group1') : -20,
);
$node->content['group1']['organization'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Organization'), l($node->organization_title, 'node/'. $node->organization_nid)),
'#weight' => 1,
);
$node->content['group2'] = array(
'#prefix' => '',
'#suffix' => '
',
'#weight' => module_exists('content') ? content_extra_field_weight($node->type, 'group2') : -19,
);
$node->content['group2']['projectcategory'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Category'), check_plain(stormattribute_value('Project category', $node->projectcategory))),
'#weight' => 1,
);
$node->content['group2']['projectstatus'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Status'), check_plain(stormattribute_value('Project status', $node->projectstatus))),
'#weight' => 2,
);
$node->content['group2']['projectpriority'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Priority'), check_plain(stormattribute_value('Project priority', $node->projectpriority))),
'#weight' => 3,
);
$node->content['group5'] = array(
'#prefix' => '',
'#suffix' => '
',
'#weight' => module_exists('content') ? content_extra_field_weight($node->type, 'group5') : -16,
);
$node->content['group5']['manager'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Project Manager'), l($node->manager_title, 'node/'. $node->manager_nid)),
'#weight' => 1,
);
$node->content['group5']['assigned'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Assigned to'), l($node->assigned_title, 'node/'. $node->assigned_nid)),
'#weight' => 2,
);
$node->content['body_field'] = array(
'#prefix' => '',
'#suffix' => '
',
'#value' => theme('storm_view_item', t('Description'), $node->content['body']['#value']),
'#weight' => module_exists('content') ? content_extra_field_weight($node->type, 'body_field') : -18,
);
unset($node->content['body']);
return $node;
}