def startAutoplay(self, tagID=0): if tagID: request = service.Request('startAutoplayTag', {'tagID': tagID}) if not request.hasError(): state = request.getResult('autoplayState') a = autoplay.Autoplay(state) song = a.getNextSong() newQueue = q.RadioQueue() newQueue.setAutoplay(a) newQueue.append(song) self.setQueue(newQueue) self.play(0) else: # regular ol' autoplay. artistIDs = [] songIDs = [] songs = self.queue.getItems() for song in songs: artistIDs.append(song['ArtistID']) songIDs.append(song['SongID']) request = service.Request('startAutoplay', \ {'artistIDs': artistIDs, 'songIDs': songIDs}) if not request.hasError(): state = request.getResult('autoplayState') nextSong = request.getResult('nextSong') a = autoplay.Autoplay(state) newQueue = q.RadioQueue() newQueue.setAutoplay(a) # songs.append(nextSong) newQueue.append(songs) for songID in songIDs: newQueue.setVoteState(songID) self.setQueue(newQueue) ui.getPage().setList(newQueue) ui.getPage().prepare() ui.getPage().render()
def stopAutoplay(self): newQueue = q.Queue() newQueue.setItems(self.queue.getItems()) self.setQueue(newQueue) # newQueue.removeByIndex(self, len(self.items)-1) ui.getPage().setList(self.queue) ui.getPage().prepare() ui.getPage().render()