$value) { if ($key == 'v') { continue; } $query[$key] = $value; } } } // Domain changes based on settings. $domain = ($privacy) ? 'youtube-nocookie.com' : 'youtube.com'; $path = 'https://www.' . $domain . '/embed/' . $video_id; $src = url($path, array('query' => $query)); $player_title = t('Embedded video'); if (!empty($variables['entity_title'])) { $player_title .= ' ' . t('for @entity_title', array( '@entity_title' => $variables['entity_title'], )); } // Alternative content for browsers that don't understand iframes (WCAG). $alternative_content = l($player_title, $src); $attributes = array( 'id' => drupal_html_id($player_class), 'class' => $player_class, 'width' => $dimensions['width'], 'height' => $dimensions['height'], 'src' => $src, 'title' => $player_title, 'frameborder' => "0", 'allowfullscreen' => "", "allow" => implode('; ', $allow), ); $output = ''; if ($size == 'responsive') { $output = '
' . $output . '
'; } return $output; } /** * Theme function for thumbnails. */ function theme_youtube_thumbnail($variables) { $video_id = $variables['video_id']; $style = $variables['image_style']; $uri = youtube_build_thumbnail_uri($video_id); // Check to see if a thumbnail exists locally. if (!file_exists($uri)) { // Retrieve the image from YouTube. if (!youtube_get_remote_image($video_id)) { // Use the remote source if local copy fails. $src = youtube_build_remote_image_path($video_id); return theme('image', array('path' => $src)); } } $alt = t('Embedded thumbnail'); if (!empty($variables['entity_title'])) { $alt .= ' ' . t('for @entity_title', array( '@entity_title' => $variables['entity_title'], )); } if ($style) { $image = theme('image_style', array( 'style_name' => $style, 'path' => $uri, 'alt' => $alt, )); } else { $image = theme('image', array( 'path' => $uri, 'alt' => $alt, )); } // Check if a URL path is provided. if ($variables['image_link'] != NULL) { $url_path = $variables['image_link']['path']; $options = $variables['image_link']['options']; $image = l($image, $url_path, $options); } return $image; }