def add_to_library(section, media_id, folder_id): scraper = container.scraper() section = Section.find(section) details = scraper.get_details_cached(section, media_id) folder = scraper.get_folder_cached(section, media_id, folder_id) library_manager = container.library_manager() library_manager.update_folder(details, folder) plugin.refresh() if plugin.get_setting('update-xbmc-library', bool): plugin.update_library('video', library_manager.path)
def do_search(section, name): plugin.set_content('movies') section = Section.find(section) sf = container.search_filter(section=section, name=str(name)) if not make_search(sf): notify(lang(40312) % ensure_unicode(name)) elif plugin.request.arg('new'): storage = container.search_storage() recent = storage.get('search_recent', []) if name in recent: recent.remove(name) recent.append(name) storage['search_recent'] = recent count = plugin.get_setting('search-items-count', int) if len(recent) > count: del recent[:len(recent)-count]
def itemify_details(details): """ :type details: Details :rtype: dict """ item = { 'thumbnail': details.poster, 'path': plugin.url_for('show_folders', section=details.section.filter_val, media_id=details.media_id), 'info': filter_dict({ 'plot': details.plot, 'title': details.title, 'rating': details.rating, 'cast': details.actors, 'studio': u" / ".join(details.studios), 'writer': u" / ".join(details.creators), 'premiered': details.release_date_russia or details.release_date, 'genre': u" / ".join(unicode(g) for g in details.genres), 'year': details.year, 'originaltitle': u" / ".join(details.original_title), }), } if plugin.get_setting('use-screenshots-as-fanart', bool) and hasattr(details, 'screenshots') and details.screenshots: item.setdefault('properties', {})['fanart_image'] = random.choice(details.screenshots) return with_fanart(item)
def remove_from_library(folder_id): container.library_manager().remove_folder(folder_id) plugin.refresh() if plugin.get_setting('clean-xbmc-library', bool): plugin.clean_library('video', False)