From 396a4a564fc3a1b612208fa4e4e277e2e92688b3 Mon Sep 17 00:00:00 2001
From: Andreas Valder <andreasv@fsmpi.rwth-aachen.de>
Date: Thu, 8 Sep 2016 13:02:10 +0200
Subject: [PATCH] added embed page; fixes #25

---
 server.py             |  4 +++-
 templates/base.html   |  4 ++--
 templates/embed.html  | 16 ++++++++++++++++
 templates/macros.html |  2 +-
 4 files changed, 22 insertions(+), 4 deletions(-)
 create mode 100644 templates/embed.html

diff --git a/server.py b/server.py
index d7721e7..5695d41 100755
--- a/server.py
+++ b/server.py
@@ -196,6 +196,7 @@ def faq():
 	return render_template('faq.html')
 
 @app.route('/play/<int:id>')
+@app.route('/embed/<int:id>', endpoint='embed')
 @handle_errors('course', 'Diese Vorlesung existiert nicht!', 404, IndexError)
 def lecture(id):
 	lectures = query('SELECT * FROM lectures WHERE id = ? AND (? OR visible)', id, ismod())
@@ -206,7 +207,8 @@ def lecture(id):
 	if not courses:
 		return render_endpoint('course', 'Diese Veranstaltung existiert nicht!'), 404
 	chapters = query('SELECT * FROM chapters WHERE lecture_id = ? AND NOT deleted AND (? OR visible) ORDER BY time ASC', id, ismod())
-	return render_template('lecture.html', course=courses[0], lecture=lectures[0], videos=videos, chapters=chapters)
+	return render_template('embed.html' if request.endpoint == 'embed' else 'lecture.html', course=courses[0], lecture=lectures[0], videos=videos, chapters=chapters)
+
 
 @app.route('/search')
 def search():
diff --git a/templates/base.html b/templates/base.html
index 079d5cf..0fc5647 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -24,6 +24,7 @@
 		{%if ismod() %}<script src="{{url_for('static', filename='moderator.js')}}"></script>{% endif %}
 	</head>
 	<body>
+	{% block navbar %}
 		<nav class="navbar navbar-default navbar-static-top">
 			<div class="container-fluid">
 				<div class="row">
@@ -98,6 +99,7 @@
 				</div>
 			</div>
 		</nav>
+		{% endblock %}
 		<div class="container-fluid">
 			<div class="row">
 				{% if page_border == 0 %}
@@ -127,8 +129,6 @@
 					</div>
 					{% endfor %}
 					{% block content %}
-					<h1>This is a Heading</h1>
-					<p>This is a paragraph.</p>
 					{% endblock %}
 				</div>
 			</div>
diff --git a/templates/embed.html b/templates/embed.html
new file mode 100644
index 0000000..2aca631
--- /dev/null
+++ b/templates/embed.html
@@ -0,0 +1,16 @@
+{% from 'macros.html' import player %}
+{% from 'macros.html' import video_download_btn %}
+{% from 'macros.html' import video_embed_btn %}
+{% set page_border = 0 -%}
+
+{% extends "base.html" %}
+{% block navbar %}
+{% endblock %}
+{% block content %}
+<div class="row">
+	<div class="col-xs-12" style="padding: 0px">
+		{{ player(lecture, videos) }}
+	</div>
+</div>
+
+{% endblock %}
diff --git a/templates/macros.html b/templates/macros.html
index 6e1b722..7706485 100644
--- a/templates/macros.html
+++ b/templates/macros.html
@@ -110,7 +110,7 @@
 	<span>Einbetten</span>
 </a>
 <script>
-{% set embedcode = '<iframe width="700" height="394" src="https://videoag.fsmpi.rwth-aachen.de/site/embed.php?lecture='+lectureid|string+'" frameborder="0" allowfullscreen="true"></iframe>' %}
+{% set embedcode = '<iframe width="700" height="394" src="'+url_for('embed', id=lectureid, _external=True)+'" frameborder="0" allowfullscreen="true"></iframe>' %}
 $('#embedcodebtn').popover(
 		{
 			html:true,
-- 
GitLab