Security update for permissions_by_term
[yaffs-website] / vendor / drupal / drupal-driver / src / Drupal / Driver / Fields / Drupal8 / TaxonomyTermReferenceHandler.php
1 <?php
2
3 namespace Drupal\Driver\Fields\Drupal8;
4
5 /**
6  * Field handler for taxonomy term references in Drupal 8.
7  */
8 class TaxonomyTermReferenceHandler extends AbstractHandler {
9
10   /**
11    * {@inheritdoc}
12    */
13   public function expand($values) {
14     $return = array();
15     foreach ($values as $name) {
16       $terms = \Drupal::entityManager()
17         ->getStorage('taxonomy_term')
18         ->loadByProperties(array('name' => $name));
19       if ($terms) {
20         $return[] = array_shift($terms)->id();
21       }
22       else {
23         throw new \Exception(sprintf("No term '%s' exists.", $name));
24       }
25     }
26     return $return;
27   }
28
29 }