You are here

public function FacebookAlbumBlock::blockForm in Facebook Album 8

Overrides BlockPluginTrait::blockForm

File

src/Plugin/Block/FacebookAlbumBlock.php, line 26
Contains \Drupal\facebook_album\Plugin\Block\FacebookAlbumBlock.

Class

FacebookAlbumBlock
Defines a facebook album block block type.

Namespace

Drupal\facebook_album\Plugin\Block

Code

public function blockForm($form, FormStateInterface $form_state) {
  $config = $this
    ->getConfiguration();
  $form['page_id'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Facebook Page ID'),
    '#default_value' => $config['page_id'],
    '#required' => TRUE,
    '#description' => $this
      ->t('The page ID of the page you want to pull the albums from. For example, if your page is https://facebook.com/acromediainc, you would enter acromediainc.'),
  ];
  $form['display'] = [
    '#type' => 'fieldset',
    '#title' => $this
      ->t('Display settings'),
  ];
  $form['display']['album_visibility'] = [
    '#type' => 'select',
    '#title' => $this
      ->t('Album Visibility'),
    '#default_value' => $config['album_visibility'],
    '#options' => [
      0 => $this
        ->t('Exclude the listed albums'),
      1 => $this
        ->t('Only show the specified albums'),
    ],
  ];
  $form['display']['albums'] = [
    '#type' => 'textarea',
    '#default_value' => implode("\n", $config['albums']),
    '#description' => $this
      ->t('Leave blank to show all albums. Specify albums by using their album IDs. Enter one ID per line.'),
  ];
  $form['display']['album_limit'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Album Limit'),
    '#default_value' => $config['album_limit'],
    '#description' => $this
      ->t('Leave blank or set to 0 if you want to load all albums'),
  ];
  $form['display']['show_title'] = [
    '#type' => 'checkbox',
    '#title' => $this
      ->t('Show Album Title'),
    '#default_value' => $config['show_title'],
  ];
  $form['display']['show_description'] = [
    '#type' => 'checkbox',
    '#title' => $this
      ->t('Show Album Description'),
    '#default_value' => $config['show_description'],
  ];
  $form['display']['show_location'] = [
    '#type' => 'checkbox',
    '#title' => $this
      ->t('Show Album Location'),
    '#default_value' => $config['show_location'],
  ];
  $form['display']['album_thumb_width'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Album Thumbnail Width'),
    '#default_value' => $config['album_thumb_width'],
    '#required' => TRUE,
  ];
  $form['display']['album_thumb_height'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Album Thumbnail Height'),
    '#default_value' => $config['album_thumb_height'],
    '#required' => TRUE,
  ];
  $form['display']['thumb_width'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Photo Thumbnail Width'),
    '#default_value' => $config['thumb_width'],
    '#required' => TRUE,
  ];
  $form['display']['thumb_height'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Photo Thumbnail Height'),
    '#default_value' => $config['thumb_height'],
    '#required' => TRUE,
  ];
  $form['display']['colorbox'] = [
    '#type' => 'textarea',
    '#title' => $this
      ->t('Colorbox Options'),
    '#default_value' => $config['colorbox'],
    '#description' => $this
      ->t('Specify any additional Colorbox options here. i.e. "transition:\'elastic\', speed:350"'),
  ];
  return $form;
}