| 1 |
<?php |
<?php |
| 2 |
// $Id: stormtask.module,v 1.6.4.11 2008/08/11 08:48:30 robertogerola Exp $ |
// $Id: stormtask.module,v 1.6.4.12 2008/08/25 09:04:46 robertogerola Exp $ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
* @file |
* @file |
| 10 |
|
|
| 11 |
switch ($section) { |
switch ($section) { |
| 12 |
case "admin/help#stormtask": |
case "admin/help#stormtask": |
| 13 |
$o = '<p>'. t("Provides task support for Storm") .'</p>'; |
$o = '<p>'. storm_t("Provides task support for Storm", 'task') .'</p>'; |
| 14 |
break; |
break; |
| 15 |
} |
} |
| 16 |
|
|
| 153 |
|
|
| 154 |
function stormtask_menu() { |
function stormtask_menu() { |
| 155 |
$items['node/%node/tasks'] = array( |
$items['node/%node/tasks'] = array( |
| 156 |
'title' => t('Tasks'), |
'title' => storm_t('Tasks', 'task'), |
| 157 |
'page callback' => 'stormtask_tasks', |
'page callback' => 'stormtask_tasks', |
| 158 |
'page arguments' => array(1), |
'page arguments' => array(1), |
| 159 |
'access callback' => '_stormtask_tasks_access', |
'access callback' => '_stormtask_tasks_access', |
| 163 |
'weight' => 3 |
'weight' => 3 |
| 164 |
); |
); |
| 165 |
$items['storm/project_tasks_js/%'] = array( |
$items['storm/project_tasks_js/%'] = array( |
| 166 |
'title' => t('Tasks'), |
'title' => storm_t('Tasks', 'task'), |
| 167 |
'page callback' => '_stormtask_project_tasks_js', |
'page callback' => '_stormtask_project_tasks_js', |
| 168 |
'page arguments' => array(2), |
'page arguments' => array(2), |
| 169 |
'access arguments' => array('Storm task: access'), |
'access arguments' => array('Storm task: access'), |
| 171 |
'type' => MENU_CALLBACK, |
'type' => MENU_CALLBACK, |
| 172 |
); |
); |
| 173 |
$items['storm/tasks'] = array( |
$items['storm/tasks'] = array( |
| 174 |
'title' => t('Tasks'), |
'title' => storm_t('Tasks', 'task'), |
| 175 |
'description' => t('Storm Tasks'), |
'description' => storm_t('Storm Tasks', 'task'), |
| 176 |
'page callback' => 'stormtask_list', |
'page callback' => 'stormtask_list', |
| 177 |
'access arguments' => array('Storm task: access'), |
'access arguments' => array('Storm task: access'), |
| 178 |
'type' => MENU_NORMAL_ITEM, |
'type' => MENU_NORMAL_ITEM, |
| 191 |
'file' => 'stormtask.theme.inc', |
'file' => 'stormtask.theme.inc', |
| 192 |
'arguments' => array('header', 'tasks'), |
'arguments' => array('header', 'tasks'), |
| 193 |
), |
), |
| 194 |
|
'stormtask_view' => array( |
| 195 |
|
'file' => 'stormtask.theme.inc', |
| 196 |
|
'arguments' => array('node', 'teaser', 'page'), |
| 197 |
|
), |
| 198 |
); |
); |
| 199 |
} |
} |
| 200 |
|
|
| 201 |
function stormtask_node_info() { |
function stormtask_node_info() { |
| 202 |
return array( |
return array( |
| 203 |
'stormtask' => array( |
'stormtask' => array( |
| 204 |
'name' => t('Task'), |
'name' => storm_t('Task', 'task'), |
| 205 |
'module' => 'stormtask', |
'module' => 'stormtask', |
| 206 |
'description' => t("A task for Storm."), |
'description' => storm_t("A task for Storm.", 'task'), |
| 207 |
'title_label' => t("Title"), |
'title_label' => storm_t("Title", 'task'), |
| 208 |
'body_label' => t("Description"), |
'body_label' => storm_t("Description", 'task'), |
| 209 |
) |
) |
| 210 |
); |
); |
| 211 |
} |
} |
| 212 |
|
|
| 213 |
function stormtask_storm_indexpage() { |
function stormtask_storm_indexpage() { |
| 214 |
$o = array(); |
$o = array(); |
| 215 |
$o['stormtask']['title'] = l(t('Tasks'), 'storm/tasks'); |
$o['stormtask']['title'] = l(storm_t('Tasks', 'task'), 'storm/tasks'); |
| 216 |
return $o; |
return $o; |
| 217 |
} |
} |
| 218 |
|
|
| 269 |
} |
} |
| 270 |
$form['group1']['organization_nid'] = array( |
$form['group1']['organization_nid'] = array( |
| 271 |
'#type' => 'select', |
'#type' => 'select', |
| 272 |
'#title' => t('Organization'), |
'#title' => storm_t('Organization', 'task'), |
| 273 |
'#default_value' => $node->organization_nid, |
'#default_value' => $node->organization_nid, |
| 274 |
'#options' => $organizations, |
'#options' => $organizations, |
| 275 |
'#required' => true, |
'#required' => true, |
| 288 |
} |
} |
| 289 |
$form['group1']['project_nid'] = array( |
$form['group1']['project_nid'] = array( |
| 290 |
'#type' => 'select', |
'#type' => 'select', |
| 291 |
'#title' => t('Project'), |
'#title' => storm_t('Project', 'task'), |
| 292 |
'#default_value' => $node->project_nid, |
'#default_value' => $node->project_nid, |
| 293 |
'#options' => $projects, |
'#options' => $projects, |
| 294 |
'#process' => array('storm_dependent_select_process'), |
'#process' => array('storm_dependent_select_process'), |
| 300 |
$parent_tasks = _stormtask_plain_tree($tree); |
$parent_tasks = _stormtask_plain_tree($tree); |
| 301 |
$form['group1']['parent_nid'] = array( |
$form['group1']['parent_nid'] = array( |
| 302 |
'#type' => 'select', |
'#type' => 'select', |
| 303 |
'#title' => t('Parent task'), |
'#title' => storm_t('Parent task', 'task'), |
| 304 |
'#default_value' => $node->parent_nid, |
'#default_value' => $node->parent_nid, |
| 305 |
'#options' => array(0 => '-') + $parent_tasks, |
'#options' => array(0 => '-') + $parent_tasks, |
| 306 |
'#process' => array('storm_dependent_select_process'), |
'#process' => array('storm_dependent_select_process'), |
| 308 |
|
|
| 309 |
$form['group1']['weight'] = array( |
$form['group1']['weight'] = array( |
| 310 |
'#type' => 'weight', |
'#type' => 'weight', |
| 311 |
'#title' => t('Weight'), |
'#title' => storm_t('Weight', 'task'), |
| 312 |
'#default_value' => $node->weight, |
'#default_value' => $node->weight, |
| 313 |
); |
); |
| 314 |
|
|
| 320 |
|
|
| 321 |
$form['group2']['stepno'] = array( |
$form['group2']['stepno'] = array( |
| 322 |
'#type' => 'textfield', |
'#type' => 'textfield', |
| 323 |
'#title' => t('Step no.'), |
'#title' => storm_t('Step no.', 'task'), |
| 324 |
'#size' => 15, |
'#size' => 15, |
| 325 |
'#required' => FALSE, |
'#required' => FALSE, |
| 326 |
'#default_value' => $node->stepno, |
'#default_value' => $node->stepno, |
| 341 |
|
|
| 342 |
$form['group3']['taskcategory'] = array( |
$form['group3']['taskcategory'] = array( |
| 343 |
'#type' => 'select', |
'#type' => 'select', |
| 344 |
'#title' => t('Category'), |
'#title' => storm_t('Category', 'task'), |
| 345 |
'#default_value' => $node->taskcategory, |
'#default_value' => $node->taskcategory, |
| 346 |
'#options' => stormattribute_attributes_bydomain('Task category'), |
'#options' => stormattribute_attributes_bydomain('Task category'), |
| 347 |
); |
); |
| 348 |
|
|
| 349 |
$form['group3']['taskstatus'] = array( |
$form['group3']['taskstatus'] = array( |
| 350 |
'#type' => 'select', |
'#type' => 'select', |
| 351 |
'#title' => t('Status'), |
'#title' => storm_t('Status', 'task'), |
| 352 |
'#default_value' => $node->taskstatus, |
'#default_value' => $node->taskstatus, |
| 353 |
'#options' => stormattribute_attributes_bydomain('Task status'), |
'#options' => stormattribute_attributes_bydomain('Task status'), |
| 354 |
); |
); |
| 355 |
|
|
| 356 |
$form['group3']['taskpriority'] = array( |
$form['group3']['taskpriority'] = array( |
| 357 |
'#type' => 'select', |
'#type' => 'select', |
| 358 |
'#title' => t('Priority'), |
'#title' => storm_t('Priority', 'task'), |
| 359 |
'#default_value' => $node->taskpriority, |
'#default_value' => $node->taskpriority, |
| 360 |
'#options' => stormattribute_attributes_bydomain('Task priority'), |
'#options' => stormattribute_attributes_bydomain('Task priority'), |
| 361 |
); |
); |
| 451 |
|
|
| 452 |
function stormtask_validate(&$node) { |
function stormtask_validate(&$node) { |
| 453 |
if (($node->nid == $node->parent_nid) && $node->parent_nid) { |
if (($node->nid == $node->parent_nid) && $node->parent_nid) { |
| 454 |
form_set_error('parent_nid', t('Impossible to assign itself as parent.')); |
form_set_error('parent_nid', storm_t('Impossible to assign itself as parent.', 'task')); |
| 455 |
} |
} |
| 456 |
} |
} |
| 457 |
|
|
| 458 |
function stormtask_view($node, $teaser = FALSE, $page = FALSE) { |
function stormtask_view($node, $teaser = FALSE, $page = FALSE) { |
| 459 |
$node = node_prepare($node, $teaser); |
return theme('stormtask_view', $node, $teaser, $page); |
|
$project = node_load($node->project_nid); |
|
|
$node->content['project'] = array( |
|
|
'#value' => t('Project') .' : '. l($project->title, 'node/'. $project->nid) .'<br />', |
|
|
'#weight' => 1, |
|
|
); |
|
|
$node->content['stepno'] = array( |
|
|
'#value' => t('Step no.') .' : '. $node->stepno .'<br />', |
|
|
'#weight' => 2, |
|
|
); |
|
|
return $node; |
|
| 460 |
} |
} |
| 461 |
|
|
| 462 |
function _stormtask_tasks_access($node=NULL) { |
function _stormtask_tasks_access($node=NULL) { |