diff --git a/template_helper.py b/template_helper.py index 1fee370a167d70f362375d9221fb0de9f1639e2d..cfe252be18a56cf0a1f11b47dbc6825912f6d18e 100644 --- a/template_helper.py +++ b/template_helper.py @@ -156,6 +156,10 @@ def human_time(d): def rfc3339(d): return d.strftime('%Y-%m-%dT%H:%M:%S+02:00') +@app.template_filter() +def time_offset(s): + return '%02d:%02d:%02d'%(s//3600, (s//60)%60, s%60) + @app.template_filter() def rfc822(d): return formatdate(mktime(d.timetuple())) diff --git a/templates/feed.rss b/templates/feed.rss index 4dd51930991a300ce1fb1f1fd9cf4503005cc2d5..25d078a3e17885c9e609df3fd2b7dfba29e6fbbf 100644 --- a/templates/feed.rss +++ b/templates/feed.rss @@ -12,7 +12,7 @@ {%- if chapters|selectattr('lecture_id','equalto',item.id)|list %} <ul> {% for chapter in chapters|selectattr('lecture_id','equalto',item.id) %} -<li>{{ '%02d:%02d:%02d'|format( chapter.time//3600, (chapter.time//60)%60, chapter.time%60) }}: {{ chapter.text }}</li> +<li>{{ chapter.time|time_offset }}: {{ chapter.text }}</li> {% endfor %} </ul> {% endif %} @@ -49,11 +49,11 @@ <dc:creator>{{ item.speaker|e }}</dc:creator> {% endif %} {% if item.video.duration > 0 %} - <itunes:duration>{{ item.video.duration }}</itunes:duration> + <itunes:duration>{{ item.video.duration|time_offset }}</itunes:duration> {% endif %} <psc:chapters xmlns:psc="http://podlove.org/simple-chapters" version="1.2"> {% for chapter in chapters|selectattr('lecture_id','equalto',item.id) %} - <psc:chapter start="{{ chapter.time }}" title="{{ chapter.text }}"/> + <psc:chapter start="{{ chapter.time|time_offset }}" title="{{ chapter.text }}"/> {% endfor %} </psc:chapters> <enclosure url="{{ url_for('files', filename=item.video.path, _external=True) }}" length="{{ item.video.file_size }}" type="{{ format.mimetype }}"/> diff --git a/templates/lecture.html b/templates/lecture.html index f5c780c536504076a37f4bd731fcf80817b5cb4e..e3b8eb637324b0cfb3a5a67ee3de66cecb756e8d 100644 --- a/templates/lecture.html +++ b/templates/lecture.html @@ -55,7 +55,7 @@ {% for c in chapters|sort(attribute='time') %} <tr> <td> - <a class="chapterlink" href="{{url_for('lecture', course=course.handle, id=lecture.id, t=c['time'])}}" data-seek-time="{{c['time']}}">{{ '%02d:%02d:%02d'|format( c['time']//3600, (c['time']//60)%60, c['time']%60) }}</a> + <a class="chapterlink" href="{{url_for('lecture', course=course.handle, id=lecture.id, t=c['time'])}}" data-seek-time="{{c['time']}}">{{ c.time|time_offset }}</a> <br> {% if ismod() %} {{ moderator_editor(['chapters',c.id,'time'],c['time'],true) }} diff --git a/templates/macros.html b/templates/macros.html index ea67c2a75544349d59f2664c1051fada3dac478e..70fed19e9dc75d3873d0a397f3ef12dbe8ba2e6e 100644 --- a/templates/macros.html +++ b/templates/macros.html @@ -358,7 +358,7 @@ $('#embedcodebtn').popover( {% endmacro %} -{% macro vtttime(time) %}{{ '%02d:%02d:%02d.000'|format( time//3600, (time//60)%60, time%60) }}{% endmacro %} +{% macro vtttime(time) %}{{ time|time_offset }}.000{% endmacro %} {% macro stats_viewsperday(id, req, title, type="scatter", param=None, maxtraces=7) %} <script>