From 327e0f95d13af04392c4d9096028d6dc2225be90 Mon Sep 17 00:00:00 2001 From: EduardSkibidiEdger Date: Mon, 20 Jan 2025 00:05:29 +0200 Subject: [PATCH] asf --- .cache | 2 +- __pycache__/app.cpython-312.pyc | Bin 3916 -> 4320 bytes app.py | 24 +++++++++++++++--------- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/.cache b/.cache index 9fe3df5..a3eb2a1 100644 --- a/.cache +++ b/.cache @@ -1 +1 @@ -{"access_token": "BQBCjzsh0Tm5K8GnkwtrmvavDRuUoGAOCl8yfKyjt6oeatCjmLY8fqMk5Wx66rZHNqf-YQiMBofXHershMVVHxea-Exh2mwMwp9z5kFf56LsWqwIcsUZbOxzEJjm-JjK37fKfR9KpM5NLeZ9bcGuWKnfpKjWj1qJfQmhei8eKs9n-QjG-wt1dTLB1ujRk2ROwah4XkxMkewXNaSVhW_y5aDL3lk", "token_type": "Bearer", "expires_in": 3600, "refresh_token": "AQAKTdSkH3SoqppmeSMvp52V_25lCRFgZPTv4wTXcJLqV7uU1-SJWK6mpW0n2NivNSoWNQxRd3Qteuxp3GXW6_BSa4bh8fYcKH63G1TWEjRyvw2sE_I5PqxCLUY_Pvcf0k0", "scope": "user-modify-playback-state user-read-playback-state", "expires_at": 1737231157} \ No newline at end of file +{"access_token": "BQDWRLvhDrrBniuV9APL5Di0UGlrhl44TKLkY3Sa0mmnsL5gdmm9O_23jXvA5lknad4pKL84ToegWQl97fSQP_tCgRccsJopfiRw8Rp7orKUfygCZjAal2Nc2AdlFO0VMDT0nBDON6E1ffBYUyiBqEE6yZYjq6bVC9kaTt8nAzn2d1Ts-dqbvCHKhSEhMWnt8ds3TmZIBD-UGOEfeihAn6PzR7g", "token_type": "Bearer", "expires_in": 3600, "refresh_token": "AQAqsBVwK834WIPG82EZXiGi23iuTHFMAyHSCTk2_qcrMbURurGOlF9KE07JwblqfviRMiymDOEYgjvIh-A-Me4fkuC1B-4AWaM5eY9YSVlV1u5i-Pn9GE3Hw8PNc7JENO0", "scope": "user-modify-playback-state user-read-playback-state", "expires_at": 1737283652} \ No newline at end of file diff --git a/__pycache__/app.cpython-312.pyc b/__pycache__/app.cpython-312.pyc index e8726768ed1372ecf898e969ed848a2e71549c24..5f0d8cdb3bb6b485ac9f98fc9e941c9a85a3d600 100644 GIT binary patch delta 1372 zcmZ`(O>7%Q6rS1ju6Mn*n`UD>)RD6xB&|hht0+~3+JICOq)JsO30!<&wed`1C+nZi zt|{ivLE^xH3ycs#fW+OoUvoZam-EB zjj|D9#Z8uz5~4=$VGfLhhH0vY2N&hE(32a5=!xM;)MKBK6Fz)O&vnbEiB=vZieu9B z#<^ikgoyq=ie4;dgwHdPWq6WAl%E(UymOE7PLk9*-cI)-n*p`ULrM`MCK)4{?QBmT++fsEI!ZD3C#Xdw;6LM{9>m+swbz=A|A$}X zuSxUcl_(xgO>781{21|X#jT{A6_ZHuBRE z-j;i@0p5;9nH){>y+Ir>I^<6(5g+(w?!=i zm3cm^wHSOl1NzJW0i*+ErS#IRr9kppkZ5`7h3m^prB`h6ng^3;@p*Z!JLUmh+Z!;o z2TWOB*fU~#&kM1Ijx>}j>}6+nv$OXyXTN&mo_T4{T-Y@izLtM9uWsGw>my&d{n30s zJN-*$s-HHGbY)UKLP{e3-nB!K0^a#r)*NdX?|PI z;)$IPLonQKT{`XVYUNIJ*b8SYY?qDgxFrQvCggt!?~T`)VJiZ&^PWd zzvlTKgIQ+hc|Gwmp5fmnZs0|pH1Y=IXNw@_`JC~z8p0V~F^WbBZl48ljelyK&xJgV z+ilvWw(qREl-&}>#ht*ogYg7kPR-rS2g;i3c$*A9lEI{eePb#h7`GrE7QEF78yBP> zY8RT&?zym$fl8V_ZM@DB{D;(J_qeSr2T6c$kY1(Yw?J)11sgF3(6vBe&9*-%VOWKb zT_Ce|gTX(}u+|T>tMw*nyYxBc2m_3S_m>a{GRF9KRQd^(_ECNxo!v);U-?>kVMbfr mQVvw4Cbp#eIJSq)U2Og>={SBUBWdga(7_pgH~nr58u~wF(-^)0 delta 980 zcmZ`&%}*0S6rb6zZo9jb7E1Xl2tm`zN0BHdh$aRh!DtlJgKOeuVaD>Y?XI(12r&^3 z9=(vc;KhU25-3q;vGkg1-PB4taG(3Q1V1j%PB!k|5G%d@J?eDrIxb* z5SHx1aY=OxwV*U=-EOP!H3fn-aZSv%e-9`RasvGX&r_M3YE3VAo->xu4-bW3e%`dK zIdguQ-sUdxQ#p~Y@cABJwH;hC=7_!OVv>WtYL>kPqiB}Q0w#wrPu~bP#h)w{6@-yq zVZkn9k`8Dlm~L>*U<2$a?OWr!O7^3WC8?b@@iQm*oa@lT$S~}n{c`uYvw@!vvCA&t z3>&0{DYA)>;o7AFxfsyi9Y=n~H;29vlX#1+=MvUY(ntR)GcZGE)LU?rzE(SwekPAH z7^Lsiekn9F^p~1b#+f?8;0n!Y1L-i6^0bW0*zn9b3zO+!@$!zPtwNZhdkrJ&ZNB)# zGTmjudP)QatWqKc;744?_7n4X=SxNkg|oqp(x_a^S#oh0m3zDVq{SL<=umatr(C*=}p zX7MQo>`;gDc+o~>3tuCT0?M9-`#XSr9zys9jO~Ik`X_#UFrM8|tMb(i@rMK??bSfF jAze*&R}-0PEM85t94Jx;cK{@b-{AI>^l{^Jfu;BdbDz>( diff --git a/app.py b/app.py index 09a2188..9fd0434 100644 --- a/app.py +++ b/app.py @@ -1,4 +1,4 @@ -from flask import Flask, render_template, request, jsonify +from flask import Flask, render_template, request, jsonify, url_for from spotipy import Spotify from spotipy.oauth2 import SpotifyOAuth from dotenv import load_dotenv @@ -13,17 +13,23 @@ app = Flask(__name__) # Spotify API credentials from environment variables CLIENT_ID = os.getenv("CLIENT_ID") CLIENT_SECRET = os.getenv("CLIENT_SECRET") -REDIRECT_URI = "http://0.0.0.0/callback" SCOPE = "user-modify-playback-state user-read-playback-state" # Spotipy client -sp = Spotify(auth_manager=SpotifyOAuth( - client_id=CLIENT_ID, - client_secret=CLIENT_SECRET, - redirect_uri=REDIRECT_URI, - scope=SCOPE, - open_browser=False # Disable interactive input -)) +sp = None # Initialize the Spotify client later after setting the dynamic redirect URI + +@app.before_request +def setup_spotify_client(): + """Setup the Spotify client with a dynamic redirect URI.""" + global sp + REDIRECT_URI = f"{request.host_url}callback".rstrip("/") + sp = Spotify(auth_manager=SpotifyOAuth( + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + redirect_uri=REDIRECT_URI, + scope=SCOPE, + )) + # Home route @app.route("/")