You are here

ViewsReferenceLimit.php in Views Reference Field 8.2

File

src/Plugin/ViewsReferenceSetting/ViewsReferenceLimit.php
View source
<?php

namespace Drupal\viewsreference\Plugin\ViewsReferenceSetting;

use Drupal\Component\Plugin\PluginBase;
use Drupal\Core\StringTranslation\StringTranslationTrait;
use Drupal\views\ViewExecutable;
use Drupal\viewsreference\Plugin\ViewsReferenceSettingInterface;

/**
 * The views reference setting limit results plugin.
 *
 * @ViewsReferenceSetting(
 *   id = "limit",
 *   label = @Translation("Limit results"),
 *   default_value = "",
 * )
 */
class ViewsReferenceLimit extends PluginBase implements ViewsReferenceSettingInterface {
  use StringTranslationTrait;

  /**
   * {@inheritdoc}
   */
  public function alterFormField(array &$form_field) {
    $form_field['#title'] = $this
      ->t('Items per page');
    $form_field['#type'] = 'number';
    $form_field['#weight'] = 25;
  }

  /**
   * {@inheritdoc}
   */
  public function alterView(ViewExecutable $view, $value) {
    if ($value !== "") {
      $view
        ->setItemsPerPage($value);
    }
  }

}

Classes

Namesort descending Description
ViewsReferenceLimit The views reference setting limit results plugin.