import uuid
from models import *
from app import app, db, bcrypt
from misc_utils import *
from common import git_command
import os
import shutil
import config
import flask
import git
import subprocess
from flask_httpauth import HTTPBasicAuth
import zlib
import re
import datetime

auth = HTTPBasicAuth(realm=config.AUTH_REALM + " Data API")

api_app = flask.Blueprint("api_app", __name__, template_folder="templates/api/", url_prefix="/data-api/")


@auth.verify_password
def verify_password(username, password):
    user = User.query.filter_by(username=username).first()

    if user and bcrypt.check_password_hash(user.password_hashed, password):
        flask.g.user = username
        return True

    return False


@api_app.route("/", methods=["GET"])
def welcome():
    response = flask.make_response(flask.render_template("welcome.xml"))
    response.headers["Content-Type"] = "application/xml"
    return response


app.register_blueprint(api_app)
