You are here

protected function Instagram::matchRegexp in Media entity Instagram 8

Runs preg_match on embed code/URL.

Parameters

\Drupal\media_entity\MediaInterface $media: Media object.

Return value

array|bool Array of preg matches or FALSE if no match.

See also

preg_match()

1 call to Instagram::matchRegexp()
Instagram::getField in src/Plugin/MediaEntity/Type/Instagram.php
Gets a media-related field/value.

File

src/Plugin/MediaEntity/Type/Instagram.php, line 247

Class

Instagram
Provides media type plugin for Instagram.

Namespace

Drupal\media_entity_instagram\Plugin\MediaEntity\Type

Code

protected function matchRegexp(MediaInterface $media) {
  $matches = [];
  if (isset($this->configuration['source_field'])) {
    $source_field = $this->configuration['source_field'];
    if ($media
      ->hasField($source_field)) {
      $property_name = $media->{$source_field}
        ->first()
        ->mainPropertyName();
      foreach (static::$validationRegexp as $pattern => $key) {
        if (preg_match($pattern, $media->{$source_field}->{$property_name}, $matches)) {
          return $matches;
        }
      }
    }
  }
  return FALSE;
}