if($_POST['save']){ $expense->updateFromAssocArray($_POST); if($expense->add()){ goBack(); }else{ $error_msg .= "Error adding Expense!\n"; debug_message($expense->getLastError()); } } }else if($_REQUEST['mode'] == 'edit'){ $title = "Edit Expense"; if(empty($_REQUEST['id'])){ $error_msg .= "Error: No ID specified!\n"; }else{ if(!$expense->get($_REQUEST['id'])){ $error_msg .= "Error retrieving payment information!\n"; debug_message($expense->getLastError()); } } if($expense->task_id > 0){ if($task->get($expense->task_id) === FALSE){ $error_msg .= "Error getting task information!\n"; debug_message($task->getLastError()); } if($project->get($task->project_id) === FALSE){ $error_msg .= "Error getting project information!\n"; debug_message($project->getLastError()); }
function getUnitPrice(){ if($this->task_activity_id > 0){ $ta = new SI_TaskActivity(); if($ta->get($this->task_activity_id) === FALSE){ $this->error = 'SI_InvoiceLineLink::getUnitPrice(): Error getting task activity: '.$ta->getLastError(); return FALSE; } return $ta->hourly_rate; }elseif($this->expense_id > 0){ $ex = new SI_Expense(); if($ex->get($this->expense_id) === FALSE){ $this->error = 'SI_InvoiceLineLink::getPrice(): Error getting expense: '.$ex->getLastError(); return FALSE; } return $ex->price; }elseif($this->payment_schedule_id > 0){ $ps = new SI_PaymentSchedule(); if($ps->get($this->payment_schedule_id) === FALSE){ $this->error = 'SI_InvoiceLineLink::getPrice(): Error getting scheduled payment: '.$ps->getLastError(); return FALSE; } return $ps->amount; } return 'Unknown'; }