fatal_error("Error: No Project ID specified!\n"); }else{ $task->project_id = $_REQUEST['project_id']; if($project->get($task->project_id) === FALSE){ fatal_error("Could not retreive project!"); debug_message($project->getLastError()); } if(!$project->hasRights(PROJECT_RIGHT_EDIT)){ fatal_error('Insufficent access rights for this project!'); } } if($_POST['save']){ $_POST['due_ts'] = getTSFromInput($_POST['due_ts']); $task->updateFromAssocArray($_POST); if($task->add() !== false){ if($project->sendUpdateNotification(array("Added task ".$_POST['name'])) === FALSE){ $error_msg .= "Error sending update notification!\n"; debug_message($project->getLastError()); } if($_POST['save'] != "Add"){ goBack(); } }else{ $error_msg .= "Error adding Task!\n"; } } }else if($_REQUEST['mode'] == 'edit'){ $title = "Edit Task"; if(empty($_REQUEST['id'])){
$project = new SI_Project(); $title = "Create Project"; if ($_POST['save']) { $project->owner_id = $loggedin_user->id; $_POST['due_ts'] = getTSFromInput($_POST['due_ts']); $project->updateFromAssocArray($_POST); if ($project->add()) { foreach ($_POST['tasks'] as $task_data) { if (!empty($task_data['name'])) { $task = new SI_Task(); $task->name = $task_data['name']; $task->billable = 'D'; $task->task_status_id = $task_data['status']; $task->task_priority_id = $task_data['priority']; $task->project_id = $project->id; if (!$task->add()) { $error_msg .= "Error adding task {$task_data['name']} to project\n"; debug_message($task->getLastError()); } } } if (empty($error_msg)) { goBack(); } } else { $error_msg .= "Error adding Project!\n"; debug_message($project->getLastError()); } } require 'header.php'; ?>