from flask import Flask, render_template, redirect
from .utils import api
import json

app = Flask(__name__, static_folder='static/assets', template_folder='templates')


def get(value, online=False):
    # api.update_stats()
    with open("/home/code/p2g_website/p2g_website/guilds.json", "r") as f:
        guilds = json.load(f)
    if online:
        return api.get_online(guilds[value])
    return api.get_count(guilds[value])


def render(file):
    return render_template(file,
                            valorant=get("valorant"),
                            forza_horizon=get("forza_horizon"),
                            gta=get("gta"),
                            minecraft=get("minecraft"),
                            csgo=get("csgo"),
                            fortnite=get("fortnite"),
                            all_members=str(api.get_member_count()),
                            member_in_voice=str(api.get_member_in_voice()),
                            boosts=str(api.get_boost_count()),
                            new_members_count=str(api.get_new_members()),

                            forza_online=get("forza_horizon", online=True),
                            forza_members=get("forza_horizon"),
                            valorant_online=get("valorant", online=True),
                            valorant_members=get("valorant"),
                            minecraft_online=get("minecraft", online=True),
                            minecraft_members=get("minecraft"),
                            gta_online=get("gta", online=True),
                            gta_members=get("gta"),
                            csgo_online=get("csgo", online=True),
                            csgo_members=get("csgo"),
                            fortnite_members=get("fortnite"),
                            fortnite_online=get("fortnite", online=True),
                            # rocket_league_members=get("rocket_league"),
                            # rocket_league_online=get("rocket_league", online=True)
                           )

@app.route('/robots.txt')
def robots_txt():
    return app.send_static_file('robots.txt')


@app.route('/sitemap.xml')
def sitemap():
    return app.send_static_file('sitemap.xml')


@app.route('/')
def index():
    return render('index.html')


@app.route('/index.html')
def index_():
    return render('index.html')


@app.route('/datenschutz.html')
def datenschutz():
    return render('datenschutz.html')

@app.route('/datenschutz')
def datenschutz_():
    return render('datenschutz.html')


@app.route('/impressum.html')
def impressum():
    return render('impressum.html')


@app.route('/impressum')
def impressum_():
    return render('impressum.html')


@app.route('/regelwerk.html')
def regelwerk():
    return render('regelwerk.html')


@app.route('/regelwerk')
def regelwerk_():
    return render('regelwerk.html')


@app.route('/mitgliedschaft.html')
def mitgliedschaft():
    return render('mitgliedschaft.html')


@app.route('/mitgliedschaft')
def mitgliedschaft_():
    return render('mitgliedschaft.html')


@app.route('/forza-horizon.html')
def forza_horizon():
    return render('forza-horizon.html')


@app.route('/forza-horizon')
def forza_horizon_():
    return render('forza-horizon.html')


@app.route('/minecraft.html')
def minecraft():
    return render('minecraft.html')


@app.route('/minecraft')
def minecraft_():
    return render('minecraft.html')


@app.route('/valorant.html')
def valorant():
    return render('valorant.html')


@app.route('/valorant')
def valorant_():
    return render('valorant.html')


@app.route('/grand-theft-auto-6')
def grand_theft_auto_6():
    return render('grand-theft-auto-6.html')


@app.route('/grand-theft-auto-6.html')
def grand_theft_auto_6_():
    return render('grand-theft-auto-6.html')


@app.route('/counter-strike-2')
def counter_strike_2():
    return render('counter-strike-2.html')


@app.route('/counter-strike-2.html')
def counter_strike_2_():
    return render('counter-strike-2.html')


@app.route('/unban')
def unban():
    return redirect('https://discord.com/invite/2qSPhgHuU8')


@app.route("/fortnite")
def fortnite():
    return render('fortnite.html')


@app.route("/fortnite.html")
def fortnite_():
    return render('fortnite.html')


if __name__ == '__main__':
    app.run()
