/** * @see TRACKER_EVENT_REPORT_SAVE_ADDITIONAL_CRITERIA */ public function tracker_event_report_save_additional_criteria($params) { $dao = new MilestoneReportCriterionDao(); $project = $params['report']->getTracker()->getProject(); $user = $this->getCurrentUser(); $milestone_provider = new AgileDashboard_Milestone_SelectedMilestoneProvider($params['additional_criteria'], $this->getMilestoneFactory(), $user, $project); if ($milestone_provider->getMilestone()) { $dao->save($params['report']->getId(), $milestone_provider->getMilestoneId()); } else { $dao->delete($params['report']->getId()); } }
private function getMilestoneFromCriteria(PFUser $user, Project $project, $additional_criteria) { $milestone_provider = new AgileDashboard_Milestone_SelectedMilestoneProvider($additional_criteria, $this->milestone_factory, $user, $project); return $milestone_provider->getMilestone(); }