class Field in Open Social 8.8
Same name and namespace in other branches
- 8.9 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8.2 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8.3 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8.4 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8.5 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8.6 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 - 8.7 themes/socialbase/src/Plugin/Preprocess/Field.php \Drupal\socialbase\Plugin\Preprocess\Field
 
Pre-processes variables for the "field" theme hook.
Plugin annotation
@BootstrapPreprocess("field");
  Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\bootstrap\Plugin\PluginBase
- class \Drupal\bootstrap\Plugin\Preprocess\PreprocessBase implements PreprocessInterface
- class \Drupal\socialbase\Plugin\Preprocess\Field
 
 
 - class \Drupal\bootstrap\Plugin\Preprocess\PreprocessBase implements PreprocessInterface
 
 - class \Drupal\bootstrap\Plugin\PluginBase
 
 - class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
 
Expanded class hierarchy of Field
See also
File
- themes/
socialbase/ src/ Plugin/ Preprocess/ Field.php, line 19  
Namespace
Drupal\socialbase\Plugin\PreprocessView source
class Field extends PreprocessBase {
  /**
   * {@inheritdoc}
   */
  protected function preprocessElement(Element $element, Variables $variables) {
    // For each field that doesn't need a div to wrap the content in.
    switch ($element['#field_name']) {
      case 'field_profile_image':
      case 'field_profile_function':
      case 'field_profile_organization':
      case 'field_group_description':
      case 'field_group_address':
      case 'field_group_location':
      case 'field_group_image':
      case 'field_topic_image':
      case 'field_comment_body':
      case 'field_activity_output_text':
      case 'field_activity_entity':
      case 'field_profile_first_name':
      case 'field_profile_last_name':
        $variables['bare'] = TRUE;
        break;
      case 'field_call_to_action_link':
        $url_options = [
          'attributes' => [
            'class' => [
              'btn btn-primary',
            ],
          ],
        ];
        if (isset($element[0])) {
          $element[0]['#url']
            ->setOptions($url_options);
        }
        $url_options_1 = [
          'attributes' => [
            'class' => [
              'btn btn-default',
            ],
          ],
        ];
        if (isset($element[1])) {
          $element[1]['#url']
            ->setOptions($url_options_1);
        }
        break;
    }
    if ($element['#view_mode'] == 'teaser') {
      $variables['part_of_teaser'] = TRUE;
    }
    // Adds the comment title with the amount of comments, done in here
    // so Ajax can also update this title. Node preprocess doesn't get called
    // when Ajax updates the below fields.
    if ($element['#field_type'] === 'comment') {
      // Grab the attached Event or Topic.
      $attached = $element
        ->getArray();
      $node = !empty($attached['#object']) ? $attached['#object'] : NULL;
      // Count the amount of comments placed on a Node..
      if ($node instanceof Node) {
        $comment_count = _socialbase_node_get_comment_count($node, $element['#field_name']);
        // Add it to the title.
        $variables['comment_count'] = $comment_count;
      }
    }
    switch ($element['#entity_type']) {
      case 'node':
      case 'post':
        $variables['bare'] = TRUE;
        break;
    }
  }
}Members
| 
            Name | 
                  Modifiers | Type | Description | Overrides | 
|---|---|---|---|---|
| 
            DependencySerializationTrait:: | 
                  protected | property | An array of entity type IDs keyed by the property name of their storages. | |
| 
            DependencySerializationTrait:: | 
                  protected | property | An array of service IDs keyed by property name used for serialization. | |
| 
            DependencySerializationTrait:: | 
                  public | function | 1 | |
| 
            DependencySerializationTrait:: | 
                  public | function | 2 | |
| 
            Field:: | 
                  protected | function | 
            Preprocess the variables array if an element is present. Overrides PreprocessBase:: | 
                  |
| 
            MessengerTrait:: | 
                  protected | property | The messenger. | 29 | 
| 
            MessengerTrait:: | 
                  public | function | Gets the messenger. | 29 | 
| 
            MessengerTrait:: | 
                  public | function | Sets the messenger. | |
| 
            PluginBase:: | 
                  protected | property | Configuration information passed into the plugin. | 1 | 
| 
            PluginBase:: | 
                  protected | property | The plugin implementation definition. | 1 | 
| 
            PluginBase:: | 
                  protected | property | The plugin_id. | |
| 
            PluginBase:: | 
                  protected | property | The currently set theme object. | |
| 
            PluginBase:: | 
                  constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
| 
            PluginBase:: | 
                  public | function | 
            Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: | 
                  |
| 
            PluginBase:: | 
                  public | function | 
            Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: | 
                  |
| 
            PluginBase:: | 
                  public | function | 
            Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: | 
                  3 | 
| 
            PluginBase:: | 
                  public | function | 
            Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: | 
                  |
| 
            PluginBase:: | 
                  public | function | Determines if the plugin is configurable. | |
| 
            PluginBase:: | 
                  public | function | 
            Constructs a \Drupal\Component\Plugin\PluginBase object. Overrides PluginBase:: | 
                  1 | 
| 
            PreprocessBase:: | 
                  protected | property | The theme hook invoked. | |
| 
            PreprocessBase:: | 
                  protected | property | The theme hook info array from the theme registry. | |
| 
            PreprocessBase:: | 
                  protected | property | The Variables object. | |
| 
            PreprocessBase:: | 
                  public | function | 
            Preprocess theme hook variables. Overrides PreprocessInterface:: | 
                  |
| 
            PreprocessBase:: | 
                  protected | function | Ensures all attributes have been converted to an Attribute object. | |
| 
            PreprocessBase:: | 
                  protected | function | Converts any set description variable into a traversable array. | |
| 
            PreprocessBase:: | 
                  protected | function | Preprocess the variables array. | 15 | 
| 
            StringTranslationTrait:: | 
                  protected | property | The string translation service. | 1 | 
| 
            StringTranslationTrait:: | 
                  protected | function | Formats a string containing a count of items. | |
| 
            StringTranslationTrait:: | 
                  protected | function | Returns the number of plurals supported by a given language. | |
| 
            StringTranslationTrait:: | 
                  protected | function | Gets the string translation service. | |
| 
            StringTranslationTrait:: | 
                  public | function | Sets the string translation service to use. | 2 | 
| 
            StringTranslationTrait:: | 
                  protected | function | Translates a string to the current language or to a given language. |