diff --git a/files/views/pages.py b/files/views/pages.py index 9041208f..cb9e89e9 100644 --- a/files/views/pages.py +++ b/files/views/pages.py @@ -244,8 +244,6 @@ def history(request): @csrf_exempt @login_required def video_chapters(request, friendly_token): - # this is not ready... - return False if not request.method == "POST": return HttpResponseRedirect("/") @@ -358,8 +356,6 @@ def publish_media(request): @login_required def edit_chapters(request): """Edit chapters""" - # not implemented yet - return False friendly_token = request.GET.get("m", "").strip() if not friendly_token: return HttpResponseRedirect("/") @@ -371,10 +367,11 @@ def edit_chapters(request): if not (request.user == media.user or is_mediacms_editor(request.user)): return HttpResponseRedirect("/") + chapters = media.chapter_data return render( request, "cms/edit_chapters.html", - {"media_object": media, "add_subtitle_url": media.add_subtitle_url, "media_file_path": helpers.url_from_path(media.media_file.path), "media_id": media.friendly_token}, + {"media_object": media, "add_subtitle_url": media.add_subtitle_url, "media_file_path": helpers.url_from_path(media.media_file.path), "media_id": media.friendly_token, "chapters": chapters}, ) diff --git a/frontend-tools/video-js/src/components/video-player/VideoJSPlayer.jsx b/frontend-tools/video-js/src/components/video-player/VideoJSPlayer.jsx index 7c987f46..81f0e314 100644 --- a/frontend-tools/video-js/src/components/video-player/VideoJSPlayer.jsx +++ b/frontend-tools/video-js/src/components/video-player/VideoJSPlayer.jsx @@ -570,17 +570,12 @@ function VideoJSPlayer() { // Define chapters as JSON object // Note: The sample-chapters.vtt file is no longer needed as chapters are now loaded from this JSON - const chaptersData = [ - { startTime: 0, endTime: 5, text: 'Start111' }, - { startTime: 5, endTime: 10, text: 'Introduction - EuroHPC' }, - { startTime: 10, endTime: 15, text: 'Planning - EuroHPC' }, - { startTime: 15, endTime: 20, text: 'Parcel Discounts - EuroHPC' }, - { startTime: 20, endTime: 25, text: 'Class Studies - EuroHPC' }, - { startTime: 25, endTime: 30, text: 'Sustainability - EuroHPC' }, - { startTime: 30, endTime: 31, text: 'Funding and - EuroHPC' } /* - { startTime: 35, endTime: 40, text: 'Virtual HPC Academy - EuroHPC' }, - { startTime: 40, endTime: 45, text: 'Wrapping up - EuroHPC' }, */, - ]; + const chaptersData = mediaData.chaptersData; +// [ +// { startTime: 0, endTime: 5, text: 'Start111' }, +// { startTime: 5, endTime: 10, text: 'Introduction - EuroHPC' }, +// { startTime: 10, endTime: 15, text: 'Planning - EuroHPC' }, +// ]; // Get video data from mediaData const currentVideo = useMemo( diff --git a/templates/cms/edit_chapters.html b/templates/cms/edit_chapters.html index 6c1b852c..92cbceea 100644 --- a/templates/cms/edit_chapters.html +++ b/templates/cms/edit_chapters.html @@ -1,8 +1,8 @@ -{% extends "base.html" %} -{% load crispy_forms_tags %} -{% load static %} +{% extends "base.html" %} +{% load crispy_forms_tags %} +{% load static %} -{% block headtitle %}Edit video chapters - {{PORTAL_NAME}}{% endblock headtitle %} +{% block headtitle %}Edit video chapters - {{PORTAL_NAME}}{% endblock headtitle %} {% block topimports %} @@ -16,23 +16,7 @@ mediaId: "{{ media_object.friendly_token }}", redirectURL: "{{ media_object.get_absolute_url }}", redirectUserMediaURL: "{{ media_object.user.get_absolute_url }}", - chapters: [ - { - name: 'Chapter AAA', - from: '00:00:00.000', - to: '00:00:01.357', - }, - { - name: 'Chapter BBB', - from: '00:00:01.999', - to: '00:00:02.714', - }, - { - name: 'Chapter CCC', - from: '00:00:02.714', - to: '00:00:03.071', - }, - ], + chapters: "{{ chapters }}", }; {%endblock topimports %}