public function AcceptReceipt(C3op_Projects_Action $action, C3op_Projects_ActionMapper $mapper) { if ($action->GetStatus() == C3op_Projects_ActionStatusConstants::STATUS_RECEIVED) { $action->SetStatus(C3op_Projects_ActionStatusConstants::STATUS_DONE); $action->SetDone(true); $mapper->FetchLastReceiptDate($action); $action->SetRealFinishDate($action->GetReceiptDate($mapper)); $mapper->update($action); } $this->LogDelivery($action); }
public function update(C3op_Projects_Action $a) { if (!isset($this->identityMap[$a])) { throw new C3op_Projects_ActionMapperException('Object has no ID, cannot update.'); } $sql = sprintf('UPDATE projects_actions SET title = \'%s\', project = %d, done = %d, status = %d, description = \'%s\', subordinated_to = %d, responsible = %d, milestone = %d, requirement_for_receiving = %d WHERE id = %d;', $a->GetTitle(), $a->GetProject(), $a->GetDone(), $a->GetStatus(), $a->GetDescription(), $a->GetSubordinatedTo(), $a->GetResponsible(), $a->GetMilestone(), $a->GetRequirementForReceiving(), $this->identityMap[$a]); try { $this->db->exec($sql); } catch (Exception $e) { throw new C3op_Projects_ActionException("{$sql} failed"); } $this->UpdateDates($a); }
private function ManageAcceptanceLink(C3op_Projects_Action $action) { $acceptLink = ""; if ($action->GetStatus() == C3op_Projects_ActionStatusConstants::STATUS_RECEIVED) { $acceptLink = sprintf("javascript:passIdToAjax('/projects/action/accept-receipt', %d, acceptReceiptResponse)", $action->GetId()); } return $acceptLink; }