/** * Return the value of a field in the current changeset * * @param Tracker_FormElement_Field $field The field * * @return Tracker_Artifact_ChangesetValue, or null if not found */ public function getValue(Tracker_FormElement_Field $field) { $values = $this->getValues(); if (isset($values[$field->getId()])) { return $values[$field->getId()]; } return null; }
/** * The Id of the (text) field used for initial_effort semantic * * @return int The Id of the (numeric) field used for initial_effort semantic, or 0 if no field */ public function getFieldId() { if ($this->initial_effort_field) { return $this->initial_effort_field->getId(); } else { return 0; } }
/** * @return array of Cardwall_OnTop_Config_ValueMapping */ public function getMappings(Tracker $tracker, Tracker $mapping_tracker, Tracker_FormElement_Field $mapping_field) { // Why does we return a collection indexed on value_id in the case of freestyle mappings, and a collection // indexed on column_id in the case of status mappings @see getStatusMappings????????? // Shouldn't we let TrackerMapping do the indexing so that code in TrackerMapping might exploit that? $mappings = $this->getMappingFieldValuesIndexedByTracker($tracker); if (isset($mappings[$mapping_tracker->getId()][$mapping_field->getId()])) { return $mappings[$mapping_tracker->getId()][$mapping_field->getId()]; } return array(); }
/** * * @return int */ public function getTargetFieldId() { if ($this->target_field_obj instanceof Tracker_FormElement_Field) { return $this->target_field_obj->getId(); } return $this->target_field; }
protected function getFullRESTRepresentation($value) { $classname_with_namespace = 'Tuleap\\Tracker\\REST\\Artifact\\ArtifactFieldValueFullRepresentation'; $artifact_field_value_full_representation = new $classname_with_namespace(); $artifact_field_value_full_representation->build($this->field->getId(), Tracker_FormElementFactory::instance()->getType($this->field), $this->field->getLabel(), $value); return $artifact_field_value_full_representation; }
private function getStaticListDataValue(Tracker_FormElement_Field $field, $value) { if (isset($value['format']) && (string) $value['format'] === self::FORMAT_ID) { return $this->xml_fields_mapping->getNewValueId((int) $value); } $result = $this->static_value_dao->searchValueByLabel($field->getId(), (string) $value); $row = $result->getRow(); return (int) $row['id']; }
/** * @return \Tracker_Artifact_Changeset|null */ public function getLastChangesetWithFieldValue(Tracker_Artifact $artifact, Tracker_FormElement_Field $field) { $dar = $this->dao->searchLastChangesetAndValueForArtifactField($artifact->getId(), $field->getId()); if ($dar) { $row = $dar->getRow(); $changeset = $this->getChangesetFromRow($artifact, $row); $value = $field->getChangesetValue($changeset, $row['value_id'], $row['has_changed']); $changeset->setFieldValue($field, $value); return $changeset; } return null; }
/** * @return bool */ private function isRequiredFieldsValid(Tracker $tracker, Tracker_FormElement_Field $title_field, Tracker_FormElement_Field $description_field) { $is_required_fields_valid = true; $form_elements = $tracker->getFormElementFields(); reset($form_elements); while ($is_required_fields_valid && (list(, $form_element) = each($form_elements))) { if ($form_element->isRequired()) { $is_required_fields_valid = $form_element->getId() === $title_field->getId() || $form_element->getId() === $description_field->getId(); } } return $is_required_fields_valid; }
private function pushDefaultValueInSubmittedValues(Tracker_FormElement_Field $field, array &$fields_data) { $fields_data[$field->getId()] = $field->getDefaultValue(); }
private function getFieldValue($fields_data, Tracker_Artifact $artifact, Tracker_FormElement_Field $field) { $field_id = $field->getId(); if (isset($fields_data[$field_id])) { return $fields_data[$field_id]; } return $this->getFieldValueFromLastChangeset($artifact, $field); }
/** @return bool */ public function isFieldUsedInConditions(Tracker_FormElement_Field $field) { return $this->dao->isFieldUsed($field->getId()); }
/** * Get the value of bypass_permissions * * @param Tracker_FormElement_Field $field * * @return boolean */ public function bypassPermissions(Tracker_FormElement_Field $field) { return $this->getFieldId() == $field->getId() && $this->bypass_permissions; }
/** * @return bool */ protected function isFieldSubmitted(Tracker_FormElement_Field $field, array $fields_data) { return isset($fields_data[$field->getId()]); }
/** * Set field * * @param Tracker_FormElement_Field $field Field */ public function setField(Tracker_FormElement_Field $field) { $this->field = $field; $this->field_id = $field->getId(); }
/** * Say if a field is used to define a workflow * * @param Tracker_FormElement_Field $field The field * * @return bool */ public function isWorkflowField(Tracker_FormElement_Field $field) { $workflow = $this->getWorkflowByTrackerId($field->getTracker()->getId()); if ($workflow) { return $field->getId() == $workflow->getFieldId(); } return false; }
/** * Get the value of bypass_permissions * * @param Tracker_FormElement_Field $field * * @return boolean */ public function bypassPermissions($field) { return $this->getFieldId() == $field->getId() && $this->bypass_permissions; }
/** * Set field * * @param Tracker_FormElement_Field $field Field * * @return Void */ protected function setField(Tracker_FormElement_Field $field) { $this->field = $field; $this->fieldId = $field->getId(); }
/** * @see Transition_PostActionSubFactory::isFieldUsedInPostActions() */ public function isFieldUsedInPostActions(Tracker_FormElement_Field $field) { foreach (array_keys($this->post_actions_classes) as $shortname) { if ($this->getDao($shortname)->countByFieldId($field->getId()) > 0) { return true; } } return false; }
private function fetchAddAggregatesButton($read_only, Tracker_FormElement_Field $field, PFUser $current_user, array $used_aggregates, $is_first) { $aggregate_functions = $field->getAggregateFunctions(); if ($read_only || !$this->report->userCanUpdate($current_user)) { return; } if (!$aggregate_functions) { return; } $html = ''; $html .= '<div class="btn-group">'; $html .= '<a href="#" class="btn btn-mini dropdown-toggle" title="' . $GLOBALS['Language']->getText('plugin_tracker_aggregate', 'toggle') . '" data-toggle="dropdown">'; $html .= '<i class="icon-plus"></i> '; $html .= '<span class="caret"></span>'; $html .= '</a>'; $html .= '<ul class="dropdown-menu ' . ($is_first ? '' : 'pull-right') . '">'; foreach ($aggregate_functions as $function) { $is_used = isset($used_aggregates[$field->getId()]) && in_array($function, $used_aggregates[$field->getId()]); $url = $this->getAggregateURL($field, $function); $html .= '<li>'; $html .= '<a href="' . $url . '">'; if ($is_used) { $html .= '<i class="icon-ok"></i> '; } $html .= $GLOBALS['Language']->getText('plugin_tracker_aggregate', $function); $html .= '</a>'; $html .= '</li>'; } $html .= '</ul>'; $html .= '</div>'; return $html; }
public function setFieldValue(Tracker_FormElement_Field $field, Tracker_Artifact_ChangesetValue $value = null) { $this->values[$field->getId()] = $value; }
private function getSelectedValues(Tracker_FormElement_Field $field, $request_criteria) { $current_value = array(); if (isset($request_criteria[$field->getId()]['values'])) { $current_value = $request_criteria[$field->getId()]['values']; } return $current_value; }