def addonid(): rtype = 'api' results = github.search(q, 'id') if results is None: return results.sort(key=lambda x: github.version_sort(x['name']), reverse=True) for i in results: menu = kodi.context_menu() r = i['repository'] full_name = r['full_name'] title = kodi.highlight("%s/%s" % (full_name, i['name']), q, 'yellow') url = github.get_download_url(full_name, i['path']) menu.add("Search Username", { 'mode': 'search', 'type': 'username', 'query': r['owner']['login'] }) kodi.add_menu_item( { 'mode': 'github_install', "url": url, "file": i['name'], "full_name": full_name }, {'title': title}, menu=menu, icon='null')
def addonid(): rtype = "api" results = github.search(q, "id") if results is None: return results.sort(key=lambda x: github.version_sort(x["name"]), reverse=True) for i in results: menu = kodi.context_menu() r = i["repository"] full_name = r["full_name"] title = kodi.highlight("%s/%s" % (full_name, i["name"]), q, "yellow") url = github.get_download_url(full_name, i["path"]) menu.add( "Search Username", { "mode": "search", "type": "username", "query": r["owner"]["login"] }, ) kodi.add_menu_item( { "mode": "github_install", "url": url, "file": i["name"], "full_name": full_name, }, {"title": title}, menu=menu, icon="null", )
def username(): rtype = "api" response = github.find_zips(q) if response is None: return for r in github.sort_results(response["items"]): url = github.get_download_url(r["repository"]["full_name"], r["path"]) menu = kodi.context_menu() if r["is_repository"]: menu.add( "Browse Repository Contents", { "mode": "browse_repository", "url": url, "file": r["name"], "full_name": "%s/%s" % (q, r["repository"]["name"]), }, ) if r["is_feed"]: r["display"] = "[COLOR yellow]%s[/COLOR]" % r["name"] kodi.add_menu_item( { "mode": "install_feed", "url": url }, { "title": r["name"], "display": r["display"] }, menu=menu, icon="null", ) elif r["is_installer"]: r["display"] = "[COLOR orange]%s[/COLOR]" % r["name"] kodi.add_menu_item( { "mode": "install_batch", "url": url }, { "title": r["name"], "display": r["display"] }, menu=menu, icon="null", ) else: kodi.add_menu_item( { "mode": "github_install", "url": url, "user": q, "file": r["name"], "full_name": "%s/%s" % (q, r["repository"]["name"]), }, {"title": r["name"]}, menu=menu, icon="null", )
def repository(): rtype = 'api' results = github.search(q, 'title') if results is None: return for i in results['items']: user = i['owner']['login'] response = github.find_zips(user) if response is None: continue for r in github.sort_results(response['items']): url = github.get_download_url(r['repository']['full_name'], r['path']) menu = kodi.context_menu() if r['is_repository']: menu.add( 'Browse Repository Contents', { "mode": "browse_repository", "url": url, "file": r['name'], "full_name": "%s/%s" % (q, r['repository']['name']) }) if r['is_feed']: r['display'] = "[COLOR yellow]%s[/COLOR]" % r['name'] kodi.add_menu_item({ 'mode': 'install_feed', "url": url }, {'title': r['name']}, menu=menu, icon='null') elif r['is_installer']: r['display'] = "[COLOR orange]%s[/COLOR]" % r['name'] kodi.add_menu_item({ 'mode': 'install_batch', "url": url }, { 'title': r['name'], 'display': r['display'] }, menu=menu, icon='null') else: kodi.add_menu_item( { 'mode': 'github_install', "url": url, "user": q, "file": r['name'], "full_name": "%s/%s" % (q, r['repository']['name']) }, {'title': r['name']}, menu=menu, icon='null')