Ejemplo n.º 1
0
 /**
  * @param array $reverseRelationTypes
  *
  * @return array
  */
 protected function getFieldTypeChoices($reverseRelationTypes)
 {
     $fieldTypes = $relationTypes = [];
     foreach ($this->fieldTypeProvider->getSupportedFieldTypes() as $type) {
         $fieldTypes[$type] = $this->translator->trans(self::TYPE_LABEL_PREFIX . $type);
     }
     foreach ($this->fieldTypeProvider->getSupportedRelationTypes() as $type) {
         $relationTypes[$type] = $this->translator->trans(self::TYPE_LABEL_PREFIX . $type);
     }
     uasort($fieldTypes, 'strcasecmp');
     uasort($relationTypes, 'strcasecmp');
     if (!empty($reverseRelationTypes)) {
         uasort($reverseRelationTypes, 'strcasecmp');
         $relationTypes = array_merge($relationTypes, $reverseRelationTypes);
     }
     $result = [$this->translator->trans(self::GROUP_TYPE_PREFIX . self::GROUP_FIELDS) => $fieldTypes, $this->translator->trans(self::GROUP_TYPE_PREFIX . self::GROUP_RELATIONS) => $relationTypes];
     return $result;
 }
Ejemplo n.º 2
0
 public function testGetSupportedRelationTypes()
 {
     $relations = ['oneToMany', 'manyToOne', 'manyToMany'];
     $provider = new FieldTypeProvider($this->configManager, [], $relations);
     $this->assertEquals($relations, $provider->getSupportedRelationTypes());
 }