def update_xbmc_thumbnails( background=False ): log( "Updating Thumbnails/fanart Images", xbmc.LOGNOTICE ) fanart = "fanart.jpg" artistthumb_temp = "artist.jpg" artistthumb = "folder.jpg" albumthumb = "folder.jpg" #xbmc.executebuiltin("Notification( %s, %s, %d, %s)" % ( __language__(32042), __language__(32112), 2000, image) ) xbmc.sleep( 1000 ) dialog_msg( "create", heading = __language__( 32042 ), background = background ) # Artists artists = get_local_artists_db( mode="local_artists" ) if not artists: artists = get_local_artists_db( mode="album_artists" ) # Albums albums = get_local_albums_db( "all artists", False ) percent = 1 count = 0 for artist in artists: percent = percent = int( ( count/float( len( artists ) ) ) * 100 ) count += 1 if percent == 0: percent = 1 if percent > 100: percent = 100 if dialog_msg( "iscanceled" ): break dialog_msg( "update", percent = percent, line1 = __language__( 32112 ), line2 = " %s %s" % ( __language__( 32038 ), getunicode( artist["name"] ) ), background = background ) xbmc_thumbnail_path = "" xbmc_fanart_path = "" fanart_path = os.path.join( music_path, change_characters( artist["name"] ), fanart ).replace( "\\\\","\\" ) artistthumb_path = os.path.join( music_path, change_characters( artist["name"] ), artistthumb ).replace( "\\\\","\\" ) artistthumb_rename = os.path.join( music_path, change_characters( artist["name"] ), artistthumb_temp ).replace( "\\\\","\\" ) if exists( artistthumb_rename ): file_rename( artistthumb_rename, artistthumb_path ) if exists( fanart_path ): xbmc_fanart_path = get_fanart_path( artist["local_id"], "artist" ) elif exists( artistthumb_path ): xbmc_thumbnail_path = get_thumbnail_path( artist["local_id"], "artist" ) else: continue if xbmc_fanart_path: # copy to XBMC supplied fanart path thumbnail_copy( fanart_path, xbmc_fanart_path, "fanart" ) if xbmc_thumbnail_path: # copy to XBMC supplied artist image path thumbnail_copy( artistthumb_path, xbmc_thumbnail_path, "artist thumb" ) percent = 1 count = 1 for album in albums: percent = percent = int( ( count/float( len( albums ) ) ) * 100 ) if percent < 1: percent = 1 if percent > 100: percent = 100 if dialog_msg( "iscanceled" ): break dialog_msg( "update", percent = percent, line1 = __language__( 32042 ), line2 = __language__( 32112 ), line3 = " %s %s" % ( __language__( 32039 ), getunicode( album["title"] ) ), background = background ) xbmc_thumbnail_path = "" coverart_path = os.path.join( album["path"], albumthumb ).replace( "\\\\","\\" ) if exists( coverart_path ): xbmc_thumbnail_path = get_thumbnail_path( album["local_id"], "album" ) if xbmc_thumbnail_path: thumbnail_copy( coverart_path, xbmc_thumbnail_path, "album cover" ) count += 1 log( "Finished Updating Thumbnails/fanart Images", xbmc.LOGNOTICE )
def update_xbmc_thumbnails(background=False): log("Updating Thumbnails/fanart Images", xbmc.LOGNOTICE) fanart = "fanart.jpg" artistthumb_temp = "artist.jpg" artistthumb = "folder.jpg" albumthumb = "folder.jpg" #xbmc.executebuiltin("Notification( %s, %s, %d, %s)" % ( __language__(32042), __language__(32112), 2000, image) ) xbmc.sleep(1000) dialog_msg("create", heading=__language__(32042), background=background) # Artists artists = get_local_artists_db(mode="local_artists") if not artists: artists = get_local_artists_db(mode="album_artists") # Albums albums = get_local_albums_db("all artists", False) percent = 1 count = 0 for artist in artists: percent = percent = int((count / float(len(artists))) * 100) count += 1 if percent == 0: percent = 1 if percent > 100: percent = 100 if dialog_msg("iscanceled"): break dialog_msg("update", percent=percent, line1=__language__(32112), line2=" %s %s" % (__language__(32038), getunicode(artist["name"])), background=background) xbmc_thumbnail_path = "" xbmc_fanart_path = "" fanart_path = os.path.join(music_path, change_characters(artist["name"]), fanart).replace("\\\\", "\\") artistthumb_path = os.path.join(music_path, change_characters(artist["name"]), artistthumb).replace("\\\\", "\\") artistthumb_rename = os.path.join(music_path, change_characters(artist["name"]), artistthumb_temp).replace( "\\\\", "\\") if exists(artistthumb_rename): file_rename(artistthumb_rename, artistthumb_path) if exists(fanart_path): xbmc_fanart_path = get_fanart_path(artist["local_id"], "artist") elif exists(artistthumb_path): xbmc_thumbnail_path = get_thumbnail_path(artist["local_id"], "artist") else: continue if xbmc_fanart_path: # copy to XBMC supplied fanart path thumbnail_copy(fanart_path, xbmc_fanart_path, "fanart") if xbmc_thumbnail_path: # copy to XBMC supplied artist image path thumbnail_copy(artistthumb_path, xbmc_thumbnail_path, "artist thumb") percent = 1 count = 1 for album in albums: percent = percent = int((count / float(len(albums))) * 100) if percent < 1: percent = 1 if percent > 100: percent = 100 if dialog_msg("iscanceled"): break dialog_msg("update", percent=percent, line1=__language__(32042), line2=__language__(32112), line3=" %s %s" % (__language__(32039), getunicode(album["title"])), background=background) xbmc_thumbnail_path = "" coverart_path = os.path.join(album["path"], albumthumb).replace("\\\\", "\\") if exists(coverart_path): xbmc_thumbnail_path = get_thumbnail_path(album["local_id"], "album") if xbmc_thumbnail_path: thumbnail_copy(coverart_path, xbmc_thumbnail_path, "album cover") count += 1 log("Finished Updating Thumbnails/fanart Images", xbmc.LOGNOTICE)
soft_exit = True else: xbmcgui.Window( 10000 ).setProperty( "cdart_manager_running", "True" ) if not soft_exit: try: if enable_all_artists: xbmcgui.Window( 10000 ).setProperty( "cdart_manager_allartist", "True" ) else: xbmcgui.Window( 10000 ).setProperty( "cdart_manager_allartist", "False" ) xbmc.executebuiltin('Dialog.Close(all, true)') if script_mode in ( "database" ): log( "Start method - Build Database in background", xbmc.LOGNOTICE ) xbmcgui.Window( 10000 ).setProperty( "cdartmanager_update", "True" ) from database import refresh_db local_album_count, local_artist_count, local_cdart_count = refresh_db( background = True ) local_artists = get_local_artists_db( mode="album_artists", background = True ) if enable_all_artists: all_artists = get_local_artists_db( mode="all_artists", background = True ) else: all_artists = [] first_check( all_artists, local_artists, background = True ) xbmcgui.Window( 10000 ).setProperty( "cdartmanager_update", "False" ) elif script_mode in ( "autocdart", "autocover", "autofanart", "autologo", "autothumb", "autobanner", "autoall", "update" ): local_artists = get_local_artists_db( mode="album_artists", background = True ) if enable_all_artists: all_artists = get_local_artists_db( mode="all_artists", background = True ) else: all_artists = [] d = datetime.datetime.utcnow() present_datecode = calendar.timegm( d.utctimetuple() ) new_artwork, data = check_fanart_new_artwork( present_datecode )
if enable_all_artists: xbmcgui.Window(10000).setProperty("cdart_manager_allartist", "True") else: xbmcgui.Window(10000).setProperty("cdart_manager_allartist", "False") xbmc.executebuiltin('Dialog.Close(all, true)') if script_mode in ("database"): log("Start method - Build Database in background", xbmc.LOGNOTICE) xbmcgui.Window(10000).setProperty("cdartmanager_update", "True") from database import refresh_db local_album_count, local_artist_count, local_cdart_count = refresh_db( background=True) local_artists = get_local_artists_db(mode="album_artists", background=True) if enable_all_artists: all_artists = get_local_artists_db(mode="all_artists", background=True) else: all_artists = [] first_check(all_artists, local_artists, background=True) xbmcgui.Window(10000).setProperty("cdartmanager_update", "False") elif script_mode in ("autocdart", "autocover", "autofanart", "autologo", "autothumb", "autobanner", "autoall", "update"): local_artists = get_local_artists_db(mode="album_artists", background=True) if enable_all_artists: all_artists = get_local_artists_db(mode="all_artists",