From d877f983173dba8b4db977c459b19357aeb0c16f Mon Sep 17 00:00:00 2001 From: Alhaziel01 Date: Sat, 5 Dec 2020 13:02:30 +0100 Subject: [PATCH] Ricerca Globale Risultati Verificati raggruppati --- platformcode/globalsearch.py | 37 ++++++++++++++--- resources/skins/Default/720p/GlobalSearch.xml | 38 +----------------- resources/skins/Default/media/valid.png | Bin 0 -> 16687 bytes 3 files changed, 32 insertions(+), 43 deletions(-) create mode 100644 resources/skins/Default/media/valid.png diff --git a/platformcode/globalsearch.py b/platformcode/globalsearch.py index 012a06ea..776afee3 100644 --- a/platformcode/globalsearch.py +++ b/platformcode/globalsearch.py @@ -282,18 +282,18 @@ class SearchWindow(xbmcgui.WindowXML): pass self.count += 1 - if self.item.mode == 'all': self.update(channel, results) - else: self.update(channel, valid + other) + self.update(channel, valid, other if other else results) def makeItem(self, url): item = Item().fromurl(url) logger.debug() + channelParams = channeltools.get_channel_parameters(item.channel) thumb = item.thumbnail if item.thumbnail else 'Infoplus/' + item.contentType.replace('show', '') + '.png' logger.info('THUMB', thumb) it = xbmcgui.ListItem(item.title) it.setProperties({'thumb': thumb, 'fanart': item.fanart, 'verified': item.verified, 'plot': item.plot, 'year': '[' + str(item.year if item.year else item.infoLabels.get('year', '')) + ']', - 'item': url}) + 'item': url, 'channel':channelParams['title']}) if item.server: color = scrapertools.find_single_match(item.alive, r'(FF[^\]]+)') it.setProperties({'channel': channeltools.get_channel_parameters(item.channel).get('title', ''), @@ -303,10 +303,35 @@ class SearchWindow(xbmcgui.WindowXML): return it - def update(self, channel, results): + def update(self, channel, valid, results): if self.exit: return logger.debug('Search on channel', channel) + if self.item.mode != 'all' and 'valid' not in self.results: + self.results['valid'] = 0 + item = xbmcgui.ListItem('valid') + item.setProperties({'thumb': 'valid.png', + 'position': '0', + 'results': '0'}) + self.channels.append(item) + pos = self.CHANNELS.getSelectedPosition() + self.CHANNELS.reset() + self.CHANNELS.addItems(self.channels) + self.CHANNELS.selectItem(pos) + self.setFocusId(CHANNELS) + if valid: + item = self.CHANNELS.getListItem(0) + resultsList = item.getProperty('items') + for result in valid: + resultsList += result.tourl() + '|' + item.setProperty('items',resultsList) + self.channels[0].setProperty('results', str(len(resultsList.split('|')) - 1)) + channelResults = self.CHANNELS.getListItem(0).getProperty('items').split('|') + items = [] + for result in channelResults: + if result: items.append(self.makeItem(result)) + self.RESULTS.reset() + self.RESULTS.addItems(items) if results: resultsList = '' channelParams = channeltools.get_channel_parameters(channel) @@ -316,8 +341,7 @@ class SearchWindow(xbmcgui.WindowXML): item = xbmcgui.ListItem(name) item.setProperties({'thumb': channelParams['thumbnail'], 'position': '0', - 'results': str(len(results)), - 'verified': results[0].verified + 'results': str(len(results)) }) for result in results: resultsList += result.tourl() + '|' @@ -343,6 +367,7 @@ class SearchWindow(xbmcgui.WindowXML): if result: items.append(self.makeItem(result)) self.RESULTS.reset() self.RESULTS.addItems(items) + percent = (float(self.count) / len(self.searchActions)) * 100 self.LOADING.setVisible(False) self.PROGRESS.setPercent(percent) diff --git a/resources/skins/Default/720p/GlobalSearch.xml b/resources/skins/Default/720p/GlobalSearch.xml index e830b67a..146b05cf 100644 --- a/resources/skins/Default/720p/GlobalSearch.xml +++ b/resources/skins/Default/720p/GlobalSearch.xml @@ -73,7 +73,7 @@ FFFFFFFF 00000000 - + left center @@ -139,15 +139,6 @@ 10 scale - - Item Verified - 315 - 145 - 20 - 20 - $INFO[ListItem.Property(verified)] - scale - @@ -172,15 +163,6 @@ 10 scale - - Item Verified - 15 - 330 - 40 - 40 - $INFO[ListItem.Property(verified)] - scale - @@ -259,15 +241,6 @@ center center - - Verified - 5 - 5 - 30 - 30 - $INFO[ListItem.Property(verified)] - scale - @@ -288,15 +261,6 @@ white.png scale - - Verified - 5 - 5 - 30 - 30 - $INFO[ListItem.Property(verified)] - scale - Results Count 110 diff --git a/resources/skins/Default/media/valid.png b/resources/skins/Default/media/valid.png new file mode 100644 index 0000000000000000000000000000000000000000..d12f4eb5a0bc950dc39314dcb23440651e29ec8d GIT binary patch literal 16687 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 literal 0 HcmV?d00001