diff --git a/cms/static/js/views/video_transcripts.js b/cms/static/js/views/video_transcripts.js index ca09a91ab6..9b155f5f21 100644 --- a/cms/static/js/views/video_transcripts.js +++ b/cms/static/js/views/video_transcripts.js @@ -83,6 +83,20 @@ define( return clientTitle.substring(0, 20); }, + /* + Returns transcript download link. + */ + getTranscriptDownloadLink: function(edxVideoID, transcriptLanguageCode, transcriptDownloadHandlerUrl) { + return StringUtils.interpolate( + '{transcriptDownloadHandlerUrl}?edx_video_id={edxVideoID}&language_code={transcriptLanguageCode}', + { + transcriptDownloadHandlerUrl: transcriptDownloadHandlerUrl, + edxVideoID: edxVideoID, + transcriptLanguageCode: transcriptLanguageCode + } + ); + }, + /* Toggles Show/Hide transcript button and transcripts container. */ @@ -169,6 +183,15 @@ define( $transcriptContainer = this.$el.find('.show-video-transcript-content[data-language-code="' + languageCode + '"]'); // eslint-disable-line max-len $transcriptContainer.attr('data-language-code', newLanguageCode); + $transcriptContainer.find('.download-transcript-button').attr( + 'href', + this.getTranscriptDownloadLink( + this.edxVideoID, + newLanguageCode, + this.videoTranscriptSettings.transcript_download_handler_url + ) + ); + HtmlUtils.setHtml( $transcriptContainer.find('.transcript-title'), StringUtils.interpolate(gettext('{transcriptClientTitle}_{transcriptLanguageCode}.{fileExtension}'), @@ -256,6 +279,7 @@ define( edxVideoID: this.edxVideoID, transcriptClientTitle: this.getTranscriptClientTitle(), transcriptFileFormat: this.videoTranscriptSettings.trancript_download_file_format, + getTranscriptDownloadLink: this.getTranscriptDownloadLink, transcriptDownloadHandlerUrl: this.videoTranscriptSettings.transcript_download_handler_url }) ); diff --git a/cms/templates/js/video-transcripts.underscore b/cms/templates/js/video-transcripts.underscore index 2bf4f79824..e863868e3c 100644 --- a/cms/templates/js/video-transcripts.underscore +++ b/cms/templates/js/video-transcripts.underscore @@ -29,14 +29,7 @@