| 1 |
<?php |
<?php |
| 2 |
// $Id: stormtask.module,v 1.4 2008/06/18 15:25:24 robertogerola Exp $ |
// $Id: stormtask.module,v 1.5 2008/06/23 16:46:36 robertogerola Exp $ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
* @file |
* @file |
| 209 |
'#weight' => -50, |
'#weight' => -50, |
| 210 |
); |
); |
| 211 |
|
|
| 212 |
$s = "SELECT n.nid, n.title FROM {stormorganization} sor INNER JOIN {node} n ON sor.nid=n.nid WHERE n.status=1 AND n.type='stormorganization' ORDER BY n.title"; |
$s = "SELECT n.nid, n.title FROM {node} AS n INNER JOIN {stormorganization} AS sor ON sor.vid=n.vid WHERE n.status=1 AND n.type='stormorganization' ORDER BY n.title"; |
| 213 |
|
$s = db_rewrite_sql($s); |
| 214 |
$r = db_query(stormorganization_access_sql($s)); |
$r = db_query(stormorganization_access_sql($s)); |
| 215 |
$organizations = array(); |
$organizations = array(); |
| 216 |
while ($organization = db_fetch_object($r)) { |
while ($organization = db_fetch_object($r)) { |
| 226 |
'#attributes' => array('onchange' => "stormtask_organization_project_tasks(this, 'edit-project-nid', 'edit-parent-nid', true, '-')"), |
'#attributes' => array('onchange' => "stormtask_organization_project_tasks(this, 'edit-project-nid', 'edit-parent-nid', true, '-')"), |
| 227 |
); |
); |
| 228 |
|
|
| 229 |
$s = "SELECT n.nid, n.title FROM {stormproject} spr INNER JOIN {node} n ON spr.nid=n.nid |
$s = "SELECT n.nid, n.title FROM {node} AS n INNER JOIN {stormproject} AS spr ON spr.vid=n.vid |
| 230 |
WHERE n.status=1 AND spr.organization_nid=%d AND n.type='stormproject' ORDER BY n.title"; |
WHERE n.status=1 AND spr.organization_nid=%d AND n.type='stormproject' ORDER BY n.title"; |
| 231 |
|
$s = db_rewrite_sql($s); |
| 232 |
$r = db_query(stormproject_access_sql($s), $node->organization_nid); |
$r = db_query(stormproject_access_sql($s), $node->organization_nid); |
| 233 |
$projects = array(); |
$projects = array(); |
| 234 |
while ($project = db_fetch_object($r)) { |
while ($project = db_fetch_object($r)) { |
| 315 |
} |
} |
| 316 |
|
|
| 317 |
function stormtask_insert($node) { |
function stormtask_insert($node) { |
| 318 |
$s = "SELECT n.title, p.organization_title |
_stormtask_beforesave($node); |
|
FROM {node} n INNER JOIN {stormproject} p ON n.nid=p.nid |
|
|
WHERE type='stormproject' AND n.nid=%d"; |
|
|
$r = db_query($s, $node->project_nid); |
|
|
$p = db_fetch_object($r); |
|
|
|
|
| 319 |
db_query("INSERT INTO {stormtask} |
db_query("INSERT INTO {stormtask} |
| 320 |
(vid, nid, stepno, taskstatus, |
(vid, nid, stepno, taskstatus, |
| 321 |
organization_nid, organization_title, |
organization_nid, organization_title, |
| 325 |
%d, '%s', |
%d, '%s', |
| 326 |
%d, '%s', %d, %d)", |
%d, '%s', %d, %d)", |
| 327 |
$node->vid, $node->nid, $node->stepno, $node->taskstatus, |
$node->vid, $node->nid, $node->stepno, $node->taskstatus, |
| 328 |
$node->organization_nid, $p->organization_title, $node->project_nid, $p->title, |
$node->organization_nid, $node->organization_title, $node->project_nid, $node->project_title, |
| 329 |
$node->parent_nid, $node->weight); |
$node->parent_nid, $node->weight); |
| 330 |
} |
} |
| 331 |
|
|
| 335 |
stormtask_insert($node); |
stormtask_insert($node); |
| 336 |
} |
} |
| 337 |
else { |
else { |
| 338 |
$s = "SELECT n.title, p.organization_title |
_stormtask_beforesave($node); |
|
FROM {node} n INNER JOIN {stormproject} p ON n.nid=p.nid |
|
|
WHERE n.type='stormproject' AND n.nid=%d"; |
|
|
$r = db_query($s, $node->project_nid); |
|
|
$p = db_fetch_object($r); |
|
|
|
|
| 339 |
db_query("UPDATE {stormtask} SET |
db_query("UPDATE {stormtask} SET |
| 340 |
stepno='%s', taskstatus='%s', |
stepno='%s', taskstatus='%s', |
| 341 |
organization_nid=%d, organization_title='%s', |
organization_nid=%d, organization_title='%s', |
| 342 |
project_nid=%d, project_title='%s', |
project_nid=%d, project_title='%s', |
| 343 |
parent_nid=%d, weight=%d WHERE vid = %d", |
parent_nid=%d, weight=%d WHERE vid = %d", |
| 344 |
$node->stepno, $node->taskstatus, |
$node->stepno, $node->taskstatus, |
| 345 |
$node->organization_nid, $p->organization_title, |
$node->organization_nid, $node->organization_title, |
| 346 |
$node->project_nid, $p->title, |
$node->project_nid, $node->project_title, |
| 347 |
$node->parent_nid, |
$node->parent_nid, |
| 348 |
$node->weight, $node->vid); |
$node->weight, $node->vid); |
| 349 |
if (($node->title != $node->title_old) || ($node->stepno != $node->stepno_old)) { |
if (($node->title != $node->title_old) || ($node->stepno != $node->stepno_old)) { |
| 352 |
} |
} |
| 353 |
} |
} |
| 354 |
|
|
| 355 |
|
function _stormtask_beforesave(&$node) { |
| 356 |
|
$s = "SELECT n.title |
| 357 |
|
FROM {node} n INNER JOIN {stormorganization} o ON n.nid=o.nid |
| 358 |
|
WHERE type='stormorganization' AND n.nid=%d"; |
| 359 |
|
$r = db_query($s, $node->organization_nid); |
| 360 |
|
$o = db_fetch_object($r); |
| 361 |
|
$node->organization_title = $o->title; |
| 362 |
|
|
| 363 |
|
$s = "SELECT n.title, p.organization_title |
| 364 |
|
FROM {node} n INNER JOIN {stormproject} p ON n.nid=p.nid |
| 365 |
|
WHERE type='stormproject' AND n.nid=%d"; |
| 366 |
|
$r = db_query($s, $node->project_nid); |
| 367 |
|
$p = db_fetch_object($r); |
| 368 |
|
$node->project_title = $p->title; |
| 369 |
|
} |
| 370 |
|
|
| 371 |
function stormtask_delete($node) { |
function stormtask_delete($node) { |
| 372 |
// Notice that we're matching all revision, by using the node's nid. |
// Notice that we're matching all revision, by using the node's nid. |
| 373 |
db_query('DELETE FROM {stormtask} WHERE nid = %d', $node->nid); |
db_query('DELETE FROM {stormtask} WHERE nid = %d', $node->nid); |
| 415 |
if (!isset($children[$project_nid])) { |
if (!isset($children[$project_nid])) { |
| 416 |
$children[$project_nid] = array(); |
$children[$project_nid] = array(); |
| 417 |
|
|
| 418 |
$s = "SELECT n.nid, n.title, sta.stepno, sta.parent_nid FROM {stormtask} sta |
$s = "SELECT n.nid, n.title, sta.stepno, sta.parent_nid FROM {node} AS n INNER JOIN {stormtask} AS sta |
| 419 |
INNER JOIN {node} n ON n.nid=sta.nid WHERE n.status=1 AND n.type='stormtask' AND sta.project_nid=%d |
ON n.vid=sta.vid WHERE n.status=1 AND n.type='stormtask' AND sta.project_nid=%d |
| 420 |
ORDER BY sta.weight"; |
ORDER BY sta.weight"; |
| 421 |
|
$s = db_rewrite_sql($s); |
| 422 |
$r = db_query(stormtask_access_sql($s, $where), $project_nid); |
$r = db_query(stormtask_access_sql($s, $where), $project_nid); |
| 423 |
while ($task = db_fetch_object($r)) { |
while ($task = db_fetch_object($r)) { |
| 424 |
$children[$project_nid][$task->parent_nid][] = $task->nid; |
$children[$project_nid][$task->parent_nid][] = $task->nid; |