From 5bd0fde7098ccfe446e6f40cae05329261de42ba Mon Sep 17 00:00:00 2001 From: j <0x006A@0x2620.org> Date: Tue, 23 Sep 2014 23:56:29 +0200 Subject: [PATCH] fix embed player(subtitles) --- static/js/embedPlayer.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/static/js/embedPlayer.js b/static/js/embedPlayer.js index 23ae10632..5c2aba9c4 100644 --- a/static/js/embedPlayer.js +++ b/static/js/embedPlayer.js @@ -102,7 +102,7 @@ pandora.ui.embedPlayer = function() { resolution: ui.videoResolution, scaleToFill: ui.videoScale == 'fill', showIconOnLoad: true, - subtitles: video.subtitles, + subtitles: getSubtitles(options), timeline: options.playInToOut ? function(size, i) { return pandora.getMediaURL('/' + options.item + '/timelineantialias' @@ -335,6 +335,20 @@ pandora.ui.embedPlayer = function() { return Ox.$('').attr({width: width, height: height})[0].toDataURL(); } + function getSubtitles(options) { + return options.subtitlesLayer ? options.annotations.filter(function(layer) { + return layer.id == options.subtitlesLayer; + })[0].items.map(function(subtitle) { + return { + id: subtitle.id, + 'in': subtitle['in'], + out: subtitle.out, + text: subtitle.value.replace(/\n/g, ' ').replace(//g, '\n'), + tracks: subtitle.languages || [Ox.getLanguageNameByCode(pandora.site.language)] + }; + }) : [] + } + function selectAnnotation(data) { if (data.id) { setPosition(Math.max(data['in'], options['in'] || 0));