from secrets import refresh_token, base_64
from typing import Counter
import requests
import json

#DO NOT TOUCH THIS CODE.......IT WONT WORK IF YOU DO!!!!

class Refresh:

    def __init__(self):
        self.refresh_token = refresh_token
        self.base_64 = base_64

    #def refresh(self):
    #    query = "https://accounts.spotify.com/api/token"
    #    response = requests.post(query, data={"grant_type": "refresh_token", "refresh_token": refresh_token}, headers={"Authorization": "Basic " + base_64})
    #    response_json = response.json()
    #    return response_json["access_token"]

    def refresh(self):     # NOTE Euans 2nd Fix
        #print("[!] Attempting refresh...")
        query = "https://accounts.spotify.com/api/token"
        response = requests.post(query, data={"grant_type": "refresh_token", "refresh_token": refresh_token}, headers={"Authorization": "Basic " + base_64})
        #UPDATES ADDED HERE
        #1.) Check for response.status_code == 200
        #Only in this circumstance should we try to return the access token
        #in all other cases, return -1

        if response.status_code == 200:
            response_json = response.json()
            return response_json["access_token"]
        else:
            #In case of 503 error, etc
            return -1        