Всем доброго времени суток. Помогите разобраться в модуле JW player.
Создал поле (файл) с расширением jwplayer(playlist). Плеер работает. Всё бы хорошо, работает если оставлять поле пустым не закрепляя видео. То выдает ошибку
"Notice: Undefined offset: 0 в функции jw_player_field_formatter_view() (строка 250 в файле /sites/all/modules/jw_player/jw_player.module)." И выводится плеер с ошибкой («Error loading player: No playable sources found»)
Как сделать так чтобы не выводился плеер (скрыть), если не файл закреплена? Спасибо.
Вот сам модуль:
<?php
function jw_player_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
$element = array();
// Exclude files without a supported media format (if enabled).
if (!empty($display['settings']['check_support'])) {
$items = array_filter($items, 'jw_player_supports');
}
// Support for transcoded videos in Video a field.
if ($field['type'] == 'video') {
foreach ($items as $delta => $item) {
if (!empty($file['playablefiles'])) {
$items[$delta] = reset($file['playablefiles']);
}
}
}
if (
$display['type'] == 'jw_player') {
// Process files for the theme function.
foreach ($items as $delta => $item) {
// Give each instance of the player a unique id. The combination
// of fid and preset are considered to be save even in cases where
// the entire theme functions output is cached.
// Prefixing the id makes sure that the id does not start with a
// invalid numeric value.
$id = $item['fid'] . $display['settings']['jwplayer_preset'];
$element[$delta] = array(
'#theme' => 'jw_player',
'#file' => $item,
'#preset' => $display['settings']['jwplayer_preset'],
'#html_id' => drupal_html_id('jwplayer' . $id),
);
}
}
if (
$display['type'] == 'jw_player_playlist') {
$id = $items[0]['fid'] . $display['settings']['jwplayer_preset']; // -- 250 СТРОКА .
$element = array(
'#theme' => 'jw_player',
'#playlist' => $items,
'#preset' => $display['settings']['jwplayer_preset'],
'#html_id' => drupal_html_id('jwplayer' . $id),
'#playlist_size' => $display['settings']['playlist_size'],
'#playlist_position' => $display['settings']['playlist_position'],
);
}
if (
$display['type'] == 'jw_player_sources') {
$id = $items[0]['fid'] . $display['settings']['jwplayer_preset'];
$element = array(
'#theme' => 'jw_player',
'#sources' => $items,
'#preset' => $display['settings']['jwplayer_preset'],
'#html_id' => drupal_html_id('jwplayer' . $id),
);
if (
$images = field_get_items($entity_type, $entity, 'field_video_thumbnail')) {
$element['#image'] = $images[0];
}
}
return $element;
}
?>
Комментарии
Нашел аналогичную проблему в англоязычном сайте Drupal.org . Но это не решил проблему. Мне очень важно. Готов отдать некую сумму за решению проблемы. Благодарю