You are here

function template_preprocess_imagezoom_image in Image Zoom 8.3

Same name and namespace in other branches
  1. 8.2 imagezoom.module \template_preprocess_imagezoom_image()
  2. 7.2 imagezoom.module \template_preprocess_imagezoom_image()

Preprocess function for imagezoom_image.

File

./imagezoom.module, line 57
Provides an Image Zoom field formatter for Image fields.

Code

function template_preprocess_imagezoom_image(&$variables) {
  if ($item = $variables['item']) {

    /** @var Drupal\Core\Image\Image $image */
    if ($variables['display_style']) {
      $image_style = ImageStyle::load($variables['display_style']);
      $variables['image'] = $image_style
        ->buildUrl($item->entity
        ->getFileUri());
      $image = \Drupal::service('image.factory')
        ->get($image_style
        ->buildUri($item->entity
        ->getFileUri()));
    }
    else {
      $variables['image'] = file_create_url($item->entity
        ->getFileUri());
      $image = \Drupal::service('image.factory')
        ->get($item->entity
        ->getFileUri());
    }
    $variables['width'] = $image
      ->getWidth();
    $variables['height'] = $image
      ->getHeight();
    $variables['alt'] = $item->alt;
    $variables['title'] = $item->title;
    if ($variables['zoom_style']) {
      $image_style = ImageStyle::load($variables['zoom_style']);
      $variables['zoom'] = $image_style
        ->buildUrl($item->entity
        ->getFileUri());
    }
    else {
      $variables['zoom'] = file_create_url($item->entity
        ->getFileUri());
    }
  }
}