def matchDemos(): nut.initTitles() nut.initFiles() orphans = {} Titles.loadTxtDatabases() for nsuId, titleId in Titles.nsuIdMap.items(): for region, languages in Config.regionLanguages().items(): for language in languages: if nsuId: title = Titles.get(str(nsuId), region, language) title.id = titleId for region, languages in Config.regionLanguages().items(): for language in languages: for nsuId, rt in Titles.data(region, language).items(): if rt.id: continue orphans[nsuId] = rt.name Titles.saveRegion(region, language) for nsuId, name in orphans.items(): print(str(nsuId) + '|' + str(name))
def importRegion(region='US', language='en', save=True): if region not in Config.regionLanguages() or language not in Config.regionLanguages()[region]: Print.info('Could not locate %s/%s !' % (region, language)) return False Hook.call("import.pre", region, language) regionLanguages = [] for region2 in Config.regionLanguages(): for language2 in Config.regionLanguages()[region2]: regionLanguages.append(RegionLanguage(region2, language2, region, language)) for rl in sorted(regionLanguages): data = Titles.data(rl.region, rl.language) for nsuId in sorted(data.keys(), reverse=True): regionTitle = data[nsuId] if not regionTitle.id: continue try: for tid in regionTitle.ids: title = Titles.get(tid, None, None) title.importFrom(regionTitle, rl.region, rl.language, preferredRegion=region, preferredLanguage=language) except: title = Titles.get(regionTitle.id, None, None) title.importFrom(regionTitle, rl.region, rl.language, preferredRegion=region, preferredLanguage=language) Titles.loadTxtDatabases() Hook.call("import.post", region, language) if save: Titles.save()
def importRegion(region='US', language='en'): if not region in Config.regionLanguages( ) or language not in Config.regionLanguages()[region]: Print.error('Could not locate %s/%s !' % (region, language)) return False for region2 in Config.regionLanguages(): for language2 in Config.regionLanguages()[region2]: for nsuId, regionTitle in Titles.data(region2, language2).items(): if not regionTitle.id: continue title = Titles.get(regionTitle.id, None, None) title.importFrom(regionTitle, region2, language2) for region2 in Config.regionLanguages(): for language2 in Config.regionLanguages()[region2]: if language2 != language: continue for nsuId, regionTitle in Titles.data(region2, language2).items(): if not regionTitle.id: continue title = Titles.get(regionTitle.id, None, None) title.importFrom(regionTitle, region2, language2) for nsuId, regionTitle in Titles.data(region, language).items(): if not regionTitle.id: continue title = Titles.get(regionTitle.id, None, None) title.importFrom(regionTitle, region, language) Titles.loadTxtDatabases() Titles.save()
Print.error(str(e)) raise if args.decompress: for f in expandFiles(args.file): path = nut.NszDecompressor.decompress( str(f), Config.paths.nspOut) if path: i = Nsp(path) i.move() if args.update_titles: nut.initTitles() for url in Config.titleUrls: nut.updateDb(url) Titles.loadTxtDatabases() Titles.save() if args.update_check: nut.initTitles() nut.initFiles() for _, game in Nsps.files.items(): title = game.title() if title.isUpdate or title.isDLC: if game.isUpdateAvailable(): Print.info(title.getName()) Print.info(game.isUpdateAvailable()) exit(0) if args.submit_keys: nut.initTitles()
def getUpdateDb(request, response): for url in Config.titleUrls: nut.updateDb(url) Titles.loadTxtDatabases() Titles.save() return success(request, response, "Fin")