def __init__(self, *args, **kwargs): self.newTBN = None self.img, self.text = None, None self.albumname = kwargs.get('albumname') self.destinationTBN = kwargs.get('dest') if self.destinationTBN: self.tagsmp3 = exechttpapi.getTagFromFilename(self.destinationTBN) self.getThumb = os.path.isfile(self.destinationTBN) self.destinationTBN = str(self.destinationTBN.replace('.mp3', '.tbn').replace('.MP3', '.tbn')) else: self.getThumb = False self.tagsmp3 = {} if self.albumname: self.img, self.text = exechttpapi.requestOnAllMusic_Com(self.albumname.replace('.mp3', '').replace('.MP3', ''))
def getMyBlog(self): allinfos = {} index = 0 mp3Re = re.compile("[.]*.mp3") userdir = self.getDirRecorder() listlimit = int(self.userPreset.get('listlimit', '00')) if listlimit <= 0: listlimit = 50000 if os.path.exists(userdir): DIALOG_PROGRESS.create(__language__(1), __language__(13), __language__(12), '') for root, dirs, files in os.walk(userdir, topdown=False): if DIALOG_PROGRESS.iscanceled() or index == listlimit: break pct = 0 try: diff = (100.0/len(files)) except ZeroDivisionError: diff = 100 files.sort(key=lambda f: f.lower()) for name in files: fullName = os.path.join(root, name) if mp3Re.search(fullName.lower()) != None: title = '' tagsmp3 = exechttpapi.getTagFromFilename(fullName, False) track = tagsmp3.get('track number') if track: if int(track) <= 9: track = '0'+track if int(track) == 0: track = None if track: title += track + '. ' artist = tagsmp3.get('artist') if artist: title += artist + ' - ' tagtitle = tagsmp3.get('title') if tagtitle and not tagtitle == '': title += tagtitle else: title += name allinfos[index] = {'url': fullName, 'title': title, 'duration': tagsmp3.get('duration', ''), 'ico': str(tagsmp3.get('thumb', DEFAULTAUDIO)).replace('Big.png', '.png'), 'icoBig': tagsmp3.get('thumb', DEFAULTAUDIOBIG)} index += 1 pct += diff if pct >= 100: pct = 100 DIALOG_PROGRESS.update(int(pct), __language__(13), str(fullName), __language__(12)) if DIALOG_PROGRESS.iscanceled() or index == listlimit: break if DIALOG_PROGRESS.iscanceled() or index == listlimit: break DIALOG_PROGRESS.update(100) DIALOG_PROGRESS.close() if allinfos != {}: self.fullInfos = allinfos self.userPreset['currentTitle'] = ' - ' + __language__(1) self.saveUserPreset() self.currentTitle = self.userPreset['currentTitle'] self.addItemsInControlList() self.isMyBlog = True else: xbmcgui.Dialog().ok(xbmc.getLocalizedString(257), xbmc.getLocalizedString(1025))