Exemplo n.º 1
0
	def loadArtistList(mainwindow):
		"""
		Refresh artists listing
		"""
		# fetch artists, @TODO: has ifModifiedSince for caching
		serverinfo = settings.getServerInfo()
		print(serverinfo)

		hasCache = cache.haveCachedArtists(serverinfo)

		if False == hasCache:
			mainwindow.onRefreshbuttonClicked(mainwindow)
			#artists = mainwindow.getArtistsFromServer(serverinfo)
			#cache.saveArtists(serverinfo, artists)
		else:
			print("get from cache")


		artists = cache.getArtists(serverinfo)


		mainwindow.artistliststore.clear()
		previousLetter = ''

		mainwindow.artistliststore.append([-1, 'All artists'])
		for artist in artists:
			#print(artist)
			thisLetter = artist['indexLetter']
			#print(thisLetter)

			if thisLetter != previousLetter:
				#print(thisLetter)
				previousLetter = thisLetter

			mainwindow.artistliststore.append([artist['id'], artist['name']])
Exemplo n.º 2
0
		def run(self):
			if True == self.mainwindow.refreshing:
				# Already refreshing
				print("Already refreshing from server, ignore")
				return

			print("Refreshing...")
			#self.mainwindow.progressbar.pulse()
			
			self.mainwindow.refreshing = True
			serverinfo = settings.getServerInfo()
			cache.clearArtists(serverinfo)
			cache.saveArtists(serverinfo, self.getArtistsFromServer(serverinfo))
			
			# refresh artist list in window
			self.mainwindow.loadArtistList()
			
			artists = cache.getArtists(serverinfo)
			
			print("also storing albums:")
			cache.clearAlbums(serverinfo)
			
			result = self.cacheAllAlbumsFromServer(serverinfo, artists)
			self.mainwindow.refreshing = False