You are here

function field_kaltura_build_embed in Kaltura 7.3

Same name and namespace in other branches
  1. 7.2 plugins/field_kaltura/field_kaltura.module \field_kaltura_build_embed()

Builds the flush embed or the image from the entry to be rendered.

Parameters

mixed $item:

mixed $type:

mixed $settings:

mixed $path:

mixed $uid:

mixed $thumb_url:

Return value

array embed code

2 calls to field_kaltura_build_embed()
field_kaltura_field_formatter_view in plugins/field_kaltura/field_kaltura.module
Implements hook_field_formatter_view().
kaltura_views_handler_field_kaltura_media::render in plugins/kaltura_views/kaltura_views_handler_field_kaltura_media.inc
Render the field.

File

plugins/field_kaltura/field_kaltura.module, line 1045
Kaltura as a field primary module file.

Code

function field_kaltura_build_embed($item, $type, $settings, $path, $uid, $thumb_url, $seometa) {
  $embed['html'] = '';
  $width = $settings['player_width'];
  $height = $settings['player_height'];
  if ($type == KALTURA_MEDIA_TYPE_VIDEO || $type == KALTURA_MEDIA_TYPE_AUDIO) {
    $settings['entry_widget'] = !empty($settings['entry_widget']) ? $settings['entry_widget'] : NULL;
    $uiconf = !empty($settings['custom_player']) ? $settings['custom_player'] : $settings['entry_widget'];
    $partner_id = variable_get('kaltura_partner_id', 0);
    $kaltura_server = variable_get('kaltura_server_url', KALTURASETTINGS_SERVER_URL);
    $html_id = drupal_html_id('js-kaltura-media-' . $item);
    $js_settings['embedKWidget'][$html_id] = array(
      'targetId' => $html_id,
      'wid' => '_' . $partner_id,
      'uiconf_id' => $uiconf,
      'entry_id' => $item,
    );
    $build = array(
      '#theme' => 'kaltura_embed_player',
      '#html_id' => $html_id,
      '#height' => $height,
      '#width' => $width,
    );
    $kaltura_html5_lib = $kaltura_server . '/p/' . $partner_id . '/sp/' . $partner_id . '00/embedIframeJs/uiconf_id/' . $uiconf . '/partner_id/' . $partner_id;
    $build['#attached']['js'][$kaltura_html5_lib] = array(
      'type' => 'external',
    );
    $build['#attached']['js'][] = drupal_get_path('module', 'field_kaltura') . '/js/field_kaltura.js';
    $build['#attached']['js'][] = array(
      'data' => array(
        'kaltura' => $js_settings,
      ),
      'type' => 'setting',
    );
    $embed['html'] = $build;
  }
  elseif ($type == KALTURA_MEDIA_TYPE_IMAGE) {
    $vars['path'] = $thumb_url . '/width/' . $width . '/height/' . $height . '/type/1/quality/100';
    $embed['html'] = theme('image', $vars);
  }
  return $embed;
}