38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
from __main__ import app
|
|
from flask import jsonify, make_response
|
|
import modules.db_connect
|
|
from modules.functions import get_gamelist, set_gamelist
|
|
import modules.game
|
|
import glob
|
|
|
|
contentpath = modules.db_connect.contentpath()
|
|
nfosuffix = modules.db_connect.nfosuffix()
|
|
|
|
|
|
# Collects all _index.nfo-files present and crunches them into a list of
|
|
# games.
|
|
@app.route('/gamelist', methods=['GET'])
|
|
def show_gamelist():
|
|
if get_gamelist():
|
|
return jsonify(get_gamelist())
|
|
update_gamelist()
|
|
return jsonify(get_gamelist())
|
|
|
|
|
|
# Updates the gamelist by searching for new nfo's
|
|
@app.route('/gamelist/update', methods=['GET'])
|
|
def update_gamelist():
|
|
nfolist = list(dict.fromkeys(glob.glob(
|
|
str(contentpath)+'/**/**/*'+nfosuffix, recursive=True)))
|
|
|
|
glist = []
|
|
for nfo in nfolist:
|
|
try:
|
|
game = modules.game.game(nfo, True, True)
|
|
glist.append(game)
|
|
except Exception as e:
|
|
print(e)
|
|
|
|
set_gamelist(glist)
|
|
return make_response("<h1>Success</h1>", 200)
|