Пример #1
0
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['custom_langcode_key'] = $fields['langcode'];
     unset($fields['langcode']);
     return $fields;
 }
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['name']->setDisplayOptions('form', array('type' => 'string', 'weight' => 0));
     $fields['name']->addConstraint('FieldWidgetConstraint', array());
     return $fields;
 }
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['name']->setDisplayOptions('form', array('type' => 'string', 'weight' => 0));
     $fields['type']->setDisplayOptions('form', array('type' => 'entity_reference_autocomplete', 'weight' => 0));
     return $fields;
 }
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['test_no_display'] = BaseFieldDefinition::create('text')->setLabel(t('Field with no display'));
     $fields['test_display_configurable'] = BaseFieldDefinition::create('text')->setLabel(t('Field with configurable display'))->setDisplayOptions('view', array('type' => 'text_default', 'weight' => 10))->setDisplayConfigurable('view', TRUE)->setDisplayOptions('form', array('type' => 'text_textfield', 'weight' => 10))->setDisplayConfigurable('form', TRUE);
     $fields['test_display_non_configurable'] = BaseFieldDefinition::create('text')->setLabel(t('Field with non-configurable display'))->setDisplayOptions('view', array('type' => 'text_default', 'weight' => 11))->setDisplayOptions('form', array('type' => 'text_textfield', 'weight' => 11));
     return $fields;
 }
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['test_no_display'] = BaseFieldDefinition::create('text')->setLabel(t('Field with no display'));
     $fields['test_display_configurable'] = BaseFieldDefinition::create('text')->setLabel(t('Field with configurable display'))->setDisplayOptions('view', array('type' => 'text_default', 'weight' => 10))->setDisplayConfigurable('view', TRUE)->setDisplayOptions('form', array('type' => 'text_textfield', 'weight' => 10))->setDisplayConfigurable('form', TRUE);
     $fields['test_display_non_configurable'] = BaseFieldDefinition::create('text')->setLabel(t('Field with non-configurable display'))->setDisplayOptions('view', array('type' => 'text_default', 'weight' => 11))->setDisplayOptions('form', array('type' => 'text_textfield', 'weight' => 11));
     $fields['test_display_multiple'] = BaseFieldDefinition::create('text')->setLabel(t('A field with multiple values'))->setCardinality(FieldStorageDefinition::CARDINALITY_UNLIMITED)->setDisplayOptions('view', array('type' => 'text_default', 'weight' => 12))->setDisplayOptions('form', array('type' => 'text_textfield', 'weight' => 12));
     return $fields;
 }
Пример #6
0
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['revision_id'] = FieldDefinition::create('integer')->setLabel(t('Revision ID'))->setDescription(t('The version id of the test entity.'))->setReadOnly(TRUE)->setSetting('unsigned', TRUE);
     $fields['langcode']->setRevisionable(TRUE);
     $fields['name']->setRevisionable(TRUE);
     $fields['user_id']->setRevisionable(TRUE);
     return $fields;
 }
Пример #7
0
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['revision_id'] = BaseFieldDefinition::create('integer')->setLabel(t('Revision ID'))->setDescription(t('The version id of the test entity.'))->setReadOnly(TRUE)->setSetting('unsigned', TRUE);
     $fields['langcode']->setRevisionable(TRUE);
     $fields['name']->setRevisionable(TRUE);
     $fields['user_id']->setRevisionable(TRUE);
     $fields['non_rev_field'] = BaseFieldDefinition::create('string')->setLabel(t('Non Revisionable Field'))->setDescription(t('A non-revisionable test field.'))->setRevisionable(FALSE)->setTranslatable(TRUE)->setCardinality(1)->setReadOnly(TRUE);
     return $fields;
 }
Пример #8
0
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['id'] = BaseFieldDefinition::create('string')->setLabel(t('ID'))->setDescription(t('The ID of the test entity.'))->setReadOnly(TRUE)->setSetting('is_ascii', TRUE);
     return $fields;
 }
Пример #9
0
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['changed'] = BaseFieldDefinition::create('changed')->setLabel(t('Changed'));
     return $fields;
 }
Пример #10
0
 /**
  * Tests fields on the base table.
  */
 public function testBaseTableFields()
 {
     $base_field_definitions = $this->setupBaseFields(EntityTest::baseFieldDefinitions($this->baseEntityType));
     $user_base_field_definitions = ['uid' => BaseFieldDefinition::create('integer')->setLabel('ID')->setDescription('The ID of the user entity.')->setReadOnly(TRUE)->setSetting('unsigned', TRUE)];
     $this->entityManager->expects($this->any())->method('getBaseFieldDefinitions')->will($this->returnValueMap([['user', $user_base_field_definitions], ['entity_test', $base_field_definitions]]));
     // Setup the table mapping.
     $table_mapping = $this->getMock('Drupal\\Core\\Entity\\Sql\\TableMappingInterface');
     $table_mapping->expects($this->any())->method('getTableNames')->willReturn(['entity_test']);
     $table_mapping->expects($this->any())->method('getColumnNames')->willReturnMap([['id', ['value' => 'id']], ['uuid', ['value' => 'uuid']], ['type', ['value' => 'type']], ['langcode', ['value' => 'langcode']], ['name', ['value' => 'name']], ['description', ['value' => 'description__value', 'format' => 'description__format']], ['homepage', ['value' => 'homepage']], ['user_id', ['target_id' => 'user_id']]]);
     $table_mapping->expects($this->any())->method('getFieldNames')->willReturnMap([['entity_test', ['id', 'uuid', 'type', 'langcode', 'name', 'description', 'homepage', 'user_id']]]);
     $this->entityStorage->expects($this->once())->method('getTableMapping')->willReturn($table_mapping);
     $this->setupFieldStorageDefinition();
     $data = $this->viewsData->getViewsData();
     $this->assertNumericField($data['entity_test']['id']);
     $this->assertField($data['entity_test']['id'], 'id');
     $this->assertUuidField($data['entity_test']['uuid']);
     $this->assertField($data['entity_test']['uuid'], 'uuid');
     $this->assertStringField($data['entity_test']['type']);
     $this->assertEquals('type', $data['entity_test']['type']['entity field']);
     $this->assertLanguageField($data['entity_test']['langcode']);
     $this->assertField($data['entity_test']['langcode'], 'langcode');
     $this->assertEquals('Original language', $data['entity_test']['langcode']['title']);
     $this->assertStringField($data['entity_test']['name']);
     $this->assertField($data['entity_test']['name'], 'name');
     $this->assertLongTextField($data['entity_test'], 'description');
     $this->assertField($data['entity_test']['description__value'], 'description');
     $this->assertField($data['entity_test']['description__format'], 'description');
     $this->assertUriField($data['entity_test']['homepage']);
     $this->assertField($data['entity_test']['homepage'], 'homepage');
     $this->assertEntityReferenceField($data['entity_test']['user_id']);
     $this->assertField($data['entity_test']['user_id'], 'user_id');
     $relationship = $data['entity_test']['user_id']['relationship'];
     $this->assertEquals('users_field_data', $relationship['base']);
     $this->assertEquals('uid', $relationship['base field']);
 }
Пример #11
0
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['description'] = BaseFieldDefinition::create('shape')->setLabel(t('Some custom description'))->setDefaultValueCallback('entity_test_field_default_value');
     return $fields;
 }
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['name']->setDescription('The default description.');
     return $fields;
 }
 /**
  * Tests fields on the base table.
  */
 public function testBaseTableFields()
 {
     $base_field_definitions = $this->setupBaseFields(EntityTest::baseFieldDefinitions($this->baseEntityType));
     $user_base_field_definitions = ['uid' => BaseFieldDefinition::create('integer')->setLabel('ID')->setDescription('The ID of the user entity.')->setReadOnly(TRUE)->setSetting('unsigned', TRUE)];
     $this->entityManager->expects($this->any())->method('getBaseFieldDefinitions')->will($this->returnValueMap([['user', $user_base_field_definitions], ['entity_test', $base_field_definitions]]));
     // Setup the table mapping.
     $table_mapping = $this->getMockBuilder(DefaultTableMapping::class)->disableOriginalConstructor()->getMock();
     $table_mapping->expects($this->any())->method('getTableNames')->willReturn(['entity_test', 'entity_test__string']);
     $table_mapping->expects($this->any())->method('getColumnNames')->willReturnMap([['id', ['value' => 'id']], ['uuid', ['value' => 'uuid']], ['type', ['value' => 'type']], ['langcode', ['value' => 'langcode']], ['name', ['value' => 'name']], ['description', ['value' => 'description__value', 'format' => 'description__format']], ['homepage', ['value' => 'homepage']], ['user_id', ['target_id' => 'user_id']], ['string', ['value' => 'value']]]);
     $table_mapping->expects($this->any())->method('getFieldNames')->willReturnMap([['entity_test', ['id', 'uuid', 'type', 'langcode', 'name', 'description', 'homepage', 'user_id']], ['entity_test__string', ['string']]]);
     $table_mapping->expects($this->any())->method('requiresDedicatedTableStorage')->willReturnCallback(function (BaseFieldDefinition $base_field) {
         return $base_field->getName() === 'string';
     });
     $table_mapping->expects($this->any())->method('getDedicatedDataTableName')->willReturnCallback(function (BaseFieldDefinition $base_field) {
         if ($base_field->getName() === 'string') {
             return 'entity_test__string';
         }
     });
     $this->entityStorage->expects($this->once())->method('getTableMapping')->willReturn($table_mapping);
     $this->setupFieldStorageDefinition();
     $data = $this->viewsData->getViewsData();
     $this->assertNumericField($data['entity_test']['id']);
     $this->assertField($data['entity_test']['id'], 'id');
     $this->assertUuidField($data['entity_test']['uuid']);
     $this->assertField($data['entity_test']['uuid'], 'uuid');
     $this->assertStringField($data['entity_test']['type']);
     $this->assertEquals('type', $data['entity_test']['type']['entity field']);
     $this->assertLanguageField($data['entity_test']['langcode']);
     $this->assertField($data['entity_test']['langcode'], 'langcode');
     $this->assertEquals('Original language', $data['entity_test']['langcode']['title']);
     $this->assertStringField($data['entity_test']['name']);
     $this->assertField($data['entity_test']['name'], 'name');
     $this->assertLongTextField($data['entity_test'], 'description');
     $this->assertField($data['entity_test']['description__value'], 'description');
     $this->assertField($data['entity_test']['description__format'], 'description');
     $this->assertUriField($data['entity_test']['homepage']);
     $this->assertField($data['entity_test']['homepage'], 'homepage');
     $this->assertEntityReferenceField($data['entity_test']['user_id']);
     $this->assertField($data['entity_test']['user_id'], 'user_id');
     $relationship = $data['entity_test']['user_id']['relationship'];
     $this->assertEquals('users_field_data', $relationship['base']);
     $this->assertEquals('uid', $relationship['base field']);
     $this->assertStringField($data['entity_test__string']['string']);
     $this->assertField($data['entity_test__string']['string'], 'string');
     $this->assertEquals(['left_field' => 'id', 'field' => 'entity_id', 'extra' => [['field' => 'deleted', 'value' => 0, 'numeric' => TRUE]]], $data['entity_test__string']['table']['join']['entity_test']);
 }
 /**
  * {@inheritdoc}
  */
 public static function baseFieldDefinitions(EntityTypeInterface $entity_type)
 {
     $fields = parent::baseFieldDefinitions($entity_type);
     $fields['name']->setCardinality(2);
     return $fields;
 }