/** * @return boolean */ private function hasUsableBurndownField(PFUser $user, Planning_ArtifactMilestone $milestone) { $tracker = $milestone->getArtifact()->getTracker(); $factory = $this->formelement_factory; $duration_field = $factory->getFormElementByName($tracker->getId(), Planning_Milestone::DURATION_FIELD_NAME); $initial_effort_field = AgileDashBoard_Semantic_InitialEffort::load($tracker)->getField(); return $factory->getABurndownField($user, $tracker) && $initial_effort_field && $initial_effort_field->isUsed() && $duration_field && $duration_field->isUsed(); }
private function getFieldValue(User $user, Planning_ArtifactMilestone $milestone, $field_name) { $milestone_artifact = $milestone->getArtifact(); $field = $this->formelement_factory->getComputableFieldByNameForUser($milestone_artifact->getTracker()->getId(), $field_name, $user); if ($field) { return $field->getComputedValue($user, $milestone_artifact); } return 0; }
private function getAddItemsToBacklogUrls(PFUser $user, Planning_ArtifactMilestone $milestone, $redirect_to_self) { $submit_urls = array(); foreach ($this->getDescendantTrackers() as $descendant_tracker) { if ($descendant_tracker->userCanSubmitArtifact($user)) { $submit_urls[] = array('tracker_type' => $descendant_tracker->getName(), 'tracker_id' => $descendant_tracker->getId(), 'submit_url' => $milestone->getArtifact()->getSubmitNewArtifactLinkedToMeUri($descendant_tracker) . '&' . $redirect_to_self); } } return $submit_urls; }