function getAllTargetFields($source_id)
 {
     $targets = array();
     $used_fields = $this->form_element_factory->getUsedSbFields($this->tracker);
     foreach ($used_fields as $field) {
         if (!$source_id || !$this->fieldIsAForbiddenTarget($this->tracker->id, $field->getId(), $source_id)) {
             $targets[$field->getId()] = $field;
         }
     }
     return $targets;
 }
Ejemplo n.º 2
0
 private function instantiateMappingFromRow(Tracker $tracker, array &$mappings, array $row, Cardwall_OnTop_Config_ColumnCollection $columns)
 {
     $mapping_tracker = $this->tracker_factory->getTrackerById($row['tracker_id']);
     if ($mapping_tracker && $mapping_tracker != $tracker) {
         //TODO: field is used?
         $available_fields = $this->element_factory->getUsedSbFields($mapping_tracker);
         $mapping_field = $this->element_factory->getFieldById($row['field_id']);
         if ($mapping_field) {
             $mapping = $this->instantiateFreestyleMapping($tracker, $mappings, $mapping_tracker, $available_fields, $mapping_field);
         } else {
             $status_field = $mapping_tracker->getStatusField();
             if ($status_field) {
                 $mapping = $this->instantiateMappingStatus($tracker, $mappings, $mapping_tracker, $available_fields, $columns);
             } else {
                 $mapping = $this->instantiateNoFieldMapping($mapping_tracker, $available_fields);
             }
         }
         $mappings[$mapping_tracker->getId()] = $mapping;
     }
 }