song = Song.by_id(songid)
if song.userid != userid:
abort(404)
-
+
+ user_data = query_db("select * from users where userid = ?", [userid], one=True)
return render_template(
"song.html",
- song_list=render_template("song-list.html", songs=[song]), song=song)
+ song_list=render_template("song-list.html", songs=[song]),
+ song=song,
+ user_bgcolor=user_data["bgcolor"],
+ user_fgcolor=user_data["fgcolor"],
+ user_accolor=user_data["accolor"])
except ValueError:
abort(404)
else:
private=plist_data["private"],
userid=plist_data["userid"],
username=plist_data["username"],
+ user_bgcolor=plist_data["bgcolor"],
+ user_fgcolor=plist_data["fgcolor"],
+ user_accolor=plist_data["accolor"],
songs=songs,
song_list=render_template("song-list.html", songs=songs))
{% block title %}{{ name }}{% endblock %}
+{% block head -%}
+<meta property="og:title" content="{{ name }}" />
+<meta property="og:description" content="Playlist by {{ username }}" />
+<script>
+ // Apply user colors
+ document.addEventListener("DOMContentLoaded", (event) => {
+ var rootStyle = document.documentElement.style;
+ {% if user_bgcolor %} rootStyle.setProperty("--yellow", "{{ user_bgcolor }}"); {% endif %}
+ {% if user_fgcolor %} rootStyle.setProperty("--black", "{{ user_fgcolor }}"); {% endif %}
+ {% if user_accolor %} rootStyle.setProperty("--purple", "{{ user_accolor }}"); {% endif %}
+ });
+</script>
+{%- endblock %}
+
{% block body -%}
<h1>{{ name }}</h1>
{% block head %}
<meta property="og:title" content="{{ song.title }}" />
<meta property="og:description" content="Song by {{ song.username }}" />
+<script>
+ // Apply user colors
+ document.addEventListener("DOMContentLoaded", (event) => {
+ var rootStyle = document.documentElement.style;
+ {% if user_bgcolor %} rootStyle.setProperty("--yellow", "{{ user_bgcolor }}"); {% endif %}
+ {% if user_fgcolor %} rootStyle.setProperty("--black", "{{ user_fgcolor }}"); {% endif %}
+ {% if user_accolor %} rootStyle.setProperty("--purple", "{{ user_accolor }}"); {% endif %}
+ });
+</script>
{% endblock %}
{% block title %}{{ song.title }}{% endblock %}