elasticsearch_search_api-1.0.x-dev/src/Search/Facet/ChildOf.php

src/Search/Facet/ChildOf.php
<?php

namespace Drupal\elasticsearch_search_api\Search\Facet;

/**
 * Facet filter which only includes children of the specific parent.
 */
class ChildOf {

  /**
   * The parent.
   *
   * @var \Drupal\elasticsearch_search_api\Search\Facet\FacetValueInterface
   */
  private $parent;

  /**
   * Constructor.
   *
   * @param \Drupal\elasticsearch_search_api\Search\Facet\FacetValueInterface $parent
   *   The parent.
   */
  public function __construct(FacetValueInterface $parent) {
    $this->parent = $parent;
  }

  /**
   * {@inheritdoc}
   */
  public function __invoke(FacetValueInterface $facetValue) {
    if (!$facetValue instanceof HierarchicalFacetValue) {
      return FALSE;
    }

    $parent = $facetValue->parent();

    if (!$parent) {
      return FALSE;
    }

    return $parent->value() == $this->parent->value();
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc