diff --git a/README.md b/README.md index ce6e172..b27b9ea 100644 --- a/README.md +++ b/README.md @@ -8,13 +8,11 @@ Software Developer currently working on cool projects at [Cast](https://blacktrax.cast-soft.com/showcase/). Everything here is available under the [Unlicense](https://choosealicense.com/licenses/unlicense/)! -

- [![Website](https://img.shields.io/badge/website-dev-2a8?style=flat-square&logo=safari&logoColor=white)](https://novac.dev) - [![E-Mail](https://img.shields.io/badge/email-reveal-369?style=flat-square&logo=gmail&logoColor=white)](https://mailhide.io/e/5ck1H)
- [![Spotify](https://img.shields.io/badge/spotify-omni-1DB954?style=flat-square&logo=spotify&logoColor=white)](https://open.spotify.com/user/omnitenebris) - [![Visits](https://badges.pufler.dev/visits/novatorem/novatorem?logo=GitHub&label=github%20visits&color=blue&logoColor=white&style=flat-square)](https://github.com/novatorem) -

+

+ [![Website](https://img.shields.io/badge/website-dev-2a8?style=flat-square&logo=safari&logoColor=white)](https://novac.dev) + [![E-Mail](https://img.shields.io/badge/email-reveal-369?style=flat-square&logo=gmail&logoColor=white)](https://mailhide.io/e/5ck1H)
+ [![Spotify](https://img.shields.io/badge/spotify-omni-1DB954?style=flat-square&logo=spotify&logoColor=white)](https://open.spotify.com/user/omnitenebris) + [![Visits](https://badges.pufler.dev/visits/novatorem/novatorem?logo=GitHub&label=github%20visits&color=blue&logoColor=white&style=flat-square)](https://github.com/novatorem) +

- - -[//]: <> (The ` ` is to have Aphelion take up more space) + \ No newline at end of file diff --git a/api/spotify-playing.py b/api/spotify-playing.py index e34e153..207975c 100644 --- a/api/spotify-playing.py +++ b/api/spotify-playing.py @@ -1,31 +1,30 @@ -from flask import Flask, Response, jsonify, render_template -from base64 import b64encode - -from dotenv import load_dotenv, find_dotenv -load_dotenv(find_dotenv()) - -import requests -import json import os +import json import random +import requests + +from base64 import b64encode +from dotenv import load_dotenv, find_dotenv +from flask import Flask, Response, jsonify, render_template + +load_dotenv(find_dotenv()) SPOTIFY_CLIENT_ID = os.getenv("SPOTIFY_CLIENT_ID") SPOTIFY_SECRET_ID = os.getenv("SPOTIFY_SECRET_ID") SPOTIFY_REFRESH_TOKEN = os.getenv("SPOTIFY_REFRESH_TOKEN") -# scope user-read-currently-playing/user-read-recently-played +# Scopes: +# user-read-currently-playing +# user-read-recently-played SPOTIFY_URL_REFRESH_TOKEN = "https://accounts.spotify.com/api/token" SPOTIFY_URL_NOW_PLAYING = "https://api.spotify.com/v1/me/player/currently-playing" SPOTIFY_URL_RECENTLY_PLAY = "https://api.spotify.com/v1/me/player/recently-played?limit=10" - app = Flask(__name__) - def getAuth(): return b64encode(f"{SPOTIFY_CLIENT_ID}:{SPOTIFY_SECRET_ID}".encode()).decode("ascii") - def refreshToken(): data = { "grant_type": "refresh_token", @@ -48,11 +47,8 @@ def recentlyPlayed(): return response.json() def nowPlaying(): - token = refreshToken() - headers = {"Authorization": f"Bearer {token}"} - response = requests.get(SPOTIFY_URL_NOW_PLAYING, headers=headers) if response.status_code == 204: @@ -82,24 +78,24 @@ def makeSVG(data): barCSS = barGen(barCount) if data == {}: - content_bar = "" - recent_plays = recentlyPlayed() - size_recent_play = len(recent_plays["items"]) - idx = random.randint(0, size_recent_play - 1) - item = recent_plays["items"][idx]["track"] + #contentBar = "" + recentlyPlayed = recentlyPlayed() + recentLength = len(recentlyPlayed["items"]) + itemIndex = random.randint(0, recentLength - 1) + item = recentlyPlayed["items"][itemIndex]["track"] else: item = data["item"] - img = loadImageB64(item["album"]["images"][1]["url"]) + image = loadImageB64(item["album"]["images"][1]["url"]) artistName = item["artists"][0]["name"].replace("&", "&") songName = item["name"].replace("&", "&") dataDict = { - "content_bar": contentBar, - "css_bar": barCSS, - "artist_name": artistName, - "song_name": songName, - "img": img, + "contentBar": contentBar, + "barCSS": barCSS, + "artistName": artistName, + "songName": songName, + "image": image } return render_template("spotify.html.j2", **dataDict) @@ -107,7 +103,6 @@ def makeSVG(data): @app.route("/", defaults={"path": ""}) @app.route("/") def catch_all(path): - data = nowPlaying() svg = makeSVG(data) diff --git a/api/templates/preview.html b/api/templates/preview.html index a6c12e0..f9449a2 100644 --- a/api/templates/preview.html +++ b/api/templates/preview.html @@ -61,9 +61,11 @@ } .cover { + position: absolute; border-radius: 5px; height: 100px; width: 100px; + z-index: -1; } #bars { @@ -99,16 +101,14 @@
- +
Song
Arist
-
- {{content_bar|safe}} -
+
Bars
diff --git a/api/templates/spotify.html.j2 b/api/templates/spotify.html.j2 index d9d9a5d..299144c 100644 --- a/api/templates/spotify.html.j2 +++ b/api/templates/spotify.html.j2 @@ -43,9 +43,9 @@ color: #666; text-align: center; margin-top: 3px; - white-space:nowrap; - overflow:hidden; - text-overflow:ellipsis; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } .artist { @@ -53,6 +53,7 @@ color: #b3b3b3; text-align: center; margin-bottom: 5px; + margin-top: 5px; } .logo { @@ -97,19 +98,19 @@ {{css_bar|safe}} - +
- +
-
{{song_name}}
-
{{artist_name}}
+
{{songName}}
+
{{artistName}}
- {{content_bar|safe}} + {{contentBar|safe}}