import json, requests
from secrets import spotify_user_id, feed_id, mixer_id
from refresh import Refresh

print('[07] Copy MIXER tracks to FEED.')

class CopyTracks:
    def __init__(self):
        self.user_id = spotify_user_id
        self.mixer_id = mixer_id
        self.feed_id = feed_id
        self.spotify_token = ''
        self.tracks = ''

    def get_tracks_from_mixer(self):
        query = 'https://api.spotify.com/v1/playlists/{}/tracks'.format(self.mixer_id)
        response = requests.request('get', url=query, headers={'Content-type': 'application/json','Authorization':'Bearer {}'.format(self.spotify_token)})
        response_json = response.json()

        for i in response_json['items']:
            self.tracks += i['track']['uri'] + ','
            # print(i['track']['name'])
        self.tracks = self.tracks[:-1]
        self.add_tracks_to_feed() 
   
    def add_tracks_to_feed(self):
        query = 'https://api.spotify.com/v1/playlists/{}/tracks?uris={}'.format(self.feed_id, self.tracks)
        response = requests.request('post', url=query, headers={'Content-type': 'application/json','Authorization':'Bearer {}'.format(self.spotify_token)})

    def call_refresh(self):
        refreshCaller = Refresh()
        self.spotify_token = refreshCaller.refresh()
        self.get_tracks_from_mixer()

a = CopyTracks()
a.call_refresh()
