private function getSemanticTitle(Tracker $tracker) { $semantic = Tracker_Semantic_Title::load($tracker); if (!$semantic->getFieldId()) { return; } return $semantic; }
/** * @return Tracker_SemanticCollection */ public function getSemantics() { $semantics = new Tracker_SemanticCollection(); $title_semantic = Tracker_Semantic_Title::load($this->tracker); $semantics->add($title_semantic->getShortName(), $title_semantic); $status_semantic = Tracker_Semantic_Status::load($this->tracker); $semantics->add($status_semantic->getShortName(), $status_semantic); $contributor_semantic = Tracker_Semantic_Contributor::load($this->tracker); $semantics->add($contributor_semantic->getShortName(), $contributor_semantic); $tooltip_semantic = $this->tracker->getTooltip(); $semantics->add($tooltip_semantic->getShortName(), $tooltip_semantic); $this->addOtherSemantics($semantics); return $semantics; }
public function getByTracker(Tracker $tracker) { return Tracker_Semantic_Title::load($tracker); }
/** * * @param <type> $recipient * @param <type> $ignore_perms * @return <type> */ public function fetchMailTitle($recipient, $format = 'text', $ignore_perms = false) { $output = ''; if ($title_field = Tracker_Semantic_Title::load($this->getTracker())->getField()) { if ($ignore_perms || $title_field->userCanRead($recipient)) { if ($value = $this->getLastChangeset()->getValue($title_field)) { if ($title = $value->getText()) { $output .= $title; } } } } return $output; }
/** * Returns the "open" artifacts * - assigned to user $user_id OR * - submitted by user $user_id OR * - submitted by or assigned to user $user_id. * regarding the callback method (respectively * - searchOpenAssignedToUserId, * - searchOpenSubmittedByUserId * - searchOpenSubmittedByOrAssignedToUserId) * * in an array of the form: * array( * $tracker_id => array( * 'tracker' => $tracker (Tracker), * 'artifacts' => array( * 'artifact' => $artifact (Tracker_Artifact), * 'title' => $title (string) * ) * ) * ) * * @param int $user_id the id of the user * @param string $callback the callback method * * @return array Complex array of artifacts group by trackers (see above) */ protected function getUserOpenArtifacts($user_id, $callback) { $tf = TrackerFactory::instance(); $artifacts = array(); foreach ($this->getDao()->{$callback}($user_id) as $row) { if (!isset($artifacts[$row['tracker_id']])) { $tracker = $tf->getTrackerById($row['tracker_id']); $with_title = false; if ($title_field = Tracker_Semantic_Title::load($tracker)->getField()) { if ($title_field->userCanRead()) { $with_title = true; } } $artifacts[$row['tracker_id']] = array('tracker' => $tracker, 'with_title' => $with_title, 'artifacts' => array()); } if (!isset($artifacts[$row['tracker_id']]['artifacts'][$row['id']])) { $artifact = $this->getInstanceFromRow($row); if ($artifact->userCanView()) { $artifacts[$row['tracker_id']]['artifacts'][$row['id']] = array('artifact' => $artifact, 'title' => $artifacts[$row['tracker_id']]['with_title'] ? $row['title'] : ''); } } } return $artifacts; }
/** * Return the title field, or null if no title field defined * * @return Tracker_FormElement_Text the title field, or null if not defined */ public function getTitleField() { $title_field = Tracker_Semantic_Title::load($this)->getField(); if ($title_field) { return $title_field; } else { return null; } }
private function getSemanticTitle(Tracker $tracker) { $semantic = Tracker_Semantic_Title::load($tracker); if (!$semantic->getFieldId()) { throw new Kanban_SemanticTitleNotDefinedException(); } return $semantic; }
/** * @return array of Tracker_Semantic */ public function getSemantics() { $semantics = array(); $t = Tracker_Semantic_Title::load($this->tracker); $semantics[$t->getShortName()] = $t; $t = Tracker_Semantic_Status::load($this->tracker); $semantics[$t->getShortName()] = $t; $t = Tracker_Semantic_Contributor::load($this->tracker); $semantics[$t->getShortName()] = $t; $t = $this->tracker->getTooltip(); $semantics[$t->getShortName()] = $t; return $semantics; }
protected function userCanReadBacklogTitleField(PFUser $user, Tracker $tracker) { if (!isset($this->cache_read_title[$tracker->getId()])) { $field = Tracker_Semantic_Title::load($tracker)->getField(); if (!$field) { $this->cache_read_title[$tracker->getId()] = false; } else { $this->cache_read_title[$tracker->getId()] = $field->userCanRead($user); } } return $this->cache_read_title[$tracker->getId()]; }