You are here

function better_social_sharing_buttons_node_view in Better Social Sharing Buttons 8.3

Implements hook_ENTITY_TYPE_view().

Throws

\Drupal\Core\Entity\EntityMalformedException

File

./better_social_sharing_buttons.module, line 51
Add template file for the social buttons.

Code

function better_social_sharing_buttons_node_view(array &$build, EntityInterface $entity, EntityViewDisplayInterface $display, $view_mode) {
  if ($display
    ->getComponent('sharing_buttons')) {
    $config = \Drupal::config('better_social_sharing_buttons.settings');
    $items = [];
    global $base_url;
    $items['page_url'] = $entity
      ->toUrl('canonical', [
      'absolute' => TRUE,
    ]);
    $items['description'] = '';
    $items['title'] = $entity
      ->get('title')->value;
    $items['width'] = $config
      ->get('width');
    $items['radius'] = $config
      ->get('radius');
    $items['facebook_app_id'] = $config
      ->get('facebook_app_id');
    $items['print_css'] = $config
      ->get('print_css');
    $items['iconset'] = $config
      ->get('iconset');
    $items['services'] = $config
      ->get('services');
    $items['base_url'] = $base_url;
    $build['sharing_buttons'] = [
      '#theme' => 'better_social_sharing_buttons',
      '#items' => $items,
    ];
  }
}