You are here

public function SharethisBlock::build in ShareThis 8.2

Builds and returns the renderable array for this block plugin.

If a block should not be rendered because it has no content, then this method must also ensure to return no content: it must then only return an empty array, or an empty array with #cache set (with cacheability metadata indicating the circumstances for it being empty).

Return value

array A renderable array representing the content of the block.

Overrides BlockPluginInterface::build

See also

\Drupal\block\BlockViewBuilder

File

src/Plugin/Block/SharethisBlock.php, line 71

Class

SharethisBlock
Provides an 'Sharethis Logout info' block.

Namespace

Drupal\sharethis\Plugin\Block

Code

public function build() {
  if ($this->sharethisSettings
    ->get('location') === 'block') {
    $st_js = $this->sharethisManager
      ->sharethisIncludeJs();
    $markup = $this->sharethisManager
      ->blockContents();
    return [
      '#theme' => 'sharethis_block',
      '#content' => $markup,
      '#attached' => [
        'library' => [
          'sharethis/sharethispickerexternalbuttonsws',
          'sharethis/sharethispickerexternalbuttons',
          'sharethis/sharethis',
        ],
        'drupalSettings' => [
          'sharethis' => $st_js,
        ],
      ],
      '#cache' => [
        'contexts' => [
          'url.path',
        ],
      ],
    ];
  }
}