You are here

class RegistrationGroupViewsData in RNG - Events and Registrations 8.2

Same name and namespace in other branches
  1. 8 src/Views/RegistrationGroupViewsData.php \Drupal\rng\Views\RegistrationGroupViewsData
  2. 3.x src/Views/RegistrationGroupViewsData.php \Drupal\rng\Views\RegistrationGroupViewsData

Provides views data for registration group entities.

Hierarchy

Expanded class hierarchy of RegistrationGroupViewsData

File

src/Views/RegistrationGroupViewsData.php, line 10

Namespace

Drupal\rng\Views
View source
class RegistrationGroupViewsData extends EntityViewsData {

  /**
   * {@inheritdoc}
   */
  public function getViewsData() {
    $data = parent::getViewsData();

    // Add base field reference for groups.
    $registration_definition = \Drupal::entityTypeManager()
      ->getDefinition('registration');
    $group_definition = \Drupal::entityTypeManager()
      ->getDefinition('registration_group');
    $t_args = [
      '@origin_label' => $group_definition
        ->getLabel(),
      '@target_label' => $registration_definition
        ->getLabel(),
    ];

    // Target ID can be NULL.
    $data['registration_group_field_data']['event__target_id']['filter']['allow empty'] = TRUE;

    // Reverse relationship (Target to Origin).
    $psuedo_field = 'rng_registration_group__registration';
    $data['registration_group_field_data'][$psuedo_field]['relationship'] = [
      'title' => t('@target_labels', $t_args),
      'label' => t('@target_labels', $t_args),
      'group' => $group_definition
        ->getLabel(),
      'help' => t('References to the @target_labels of a @origin_label.', $t_args),
      'entity_type' => $registration_definition
        ->id(),
      'id' => 'entity_reverse',
      'base' => $registration_definition
        ->getDataTable() ?: $registration_definition
        ->getBaseTable(),
      'base field' => $registration_definition
        ->getKey('id'),
      'field_name' => 'groups',
      'field table' => 'registration__groups',
      'field field' => 'groups_target_id',
      'relationship field' => $group_definition
        ->getKey('id'),
    ];
    return $data;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
DeprecatedServicePropertyTrait::__get public function Allows to access deprecated/removed properties.
EntityViewsData::$deprecatedProperties protected property
EntityViewsData::$entityFieldManager protected property The entity field manager.
EntityViewsData::$entityType protected property Entity type for this views data handler instance.
EntityViewsData::$entityTypeManager protected property The entity type manager.
EntityViewsData::$fieldStorageDefinitions protected property The field storage definitions for all base fields of the entity type.
EntityViewsData::$moduleHandler protected property The module handler.
EntityViewsData::$storage protected property The storage used for this entity type.
EntityViewsData::$translationManager protected property The translation manager.
EntityViewsData::addEntityLinks protected function Sets the entity links in case corresponding link templates exist.
EntityViewsData::createInstance public static function Instantiates a new instance of this entity handler. Overrides EntityHandlerInterface::createInstance
EntityViewsData::getFieldStorageDefinitions protected function Gets the field storage definitions.
EntityViewsData::getViewsTableForEntityType public function Gets the table of an entity type to be used as base table in views. Overrides EntityViewsDataInterface::getViewsTableForEntityType
EntityViewsData::mapFieldDefinition protected function Puts the views data for a single field onto the views data.
EntityViewsData::mapSingleFieldViewsData protected function Provides the views data for a given data type and schema field.
EntityViewsData::processViewsDataForEntityReference protected function Processes the views data for an entity reference field.
EntityViewsData::processViewsDataForLanguage protected function Processes the views data for a language field.
EntityViewsData::processViewsDataForTextLong protected function Processes the views data for a text field with formatting.
EntityViewsData::processViewsDataForUuid protected function Processes the views data for a UUID field.
EntityViewsData::__construct public function Constructs an EntityViewsData object.
RegistrationGroupViewsData::getViewsData public function Returns views data for the entity type. Overrides EntityViewsData::getViewsData
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.