Exemplo n.º 1
0
def login():
    if flogin.current_user.is_authenticated:
        return {"body": "ALREADY AUTHENTICATED"}  # flask.redirect('/')

    elif flask.request.method == 'GET':
        return "POST ONLY"

    elif flask.request.method == 'POST':
        data = flask.request.get_json()
        print("POST :: ", data)

        session = Session.create_session()
        user = session.query(User).filter((User.login == data['login']) | (
            (User.email == data['login']))).first()
        print(user, "entered")
        if user is None or not user.check_password(data['password']):
            flask.flash(
                f"Invalid username or password: login: {data['login']}")
            return {"body": "INVALID"}

        login_user(user, remember=True)
        token_api.generate_valid_tocken(TokenType.auth_token, user)
        # if not flogin.is_safe_url(next):    return flask.abort(400)
        session = Session.create_session()
        return {
            "body": [
                "OK",
                session.query(User).filter((User.login == data['login']) | (
                    (User.email == data['login']))).first().token
            ]
        }
Exemplo n.º 2
0
def register():
    if flogin.current_user.is_authenticated:
        return "ALREADY AUTHENTICATED"  # flask.redirect('/')

    elif flask.request.method == 'GET':
        return "REGISTRATION IS OPEN"

    elif flask.request.method == 'POST':
        data = flask.request.form
        flask.flash("POST :: ", data)

        user = User()
        user.login = data['login']
        user.email = data['email']

        if (data['password'] == data['password-rep']):
            user.set_password(data['password'])
        else:
            del user
            return "INVALID PASSWORD RECOVERY"

        session = Session.create_session()
        session.add(user)
        session.commit()

        return "OK"  #flask.redirect("/login")
Exemplo n.º 3
0
def register():
    if flogin.current_user.is_authenticated:
        return {"body": "ALREADY AUTHENTICATED"}

    elif flask.request.method == 'GET':
        return "POST ONLY"

    elif flask.request.method == 'POST':
        data = flask.request.get_json()
        flask.flash("POST :: ", data)
        session = Session.create_session()
        if len(
                list(
                    session.query(User).filter(
                        (User.login == data["login"])
                        | (User.email == data["email"])).all())) > 0:
            return {"body": "LOGIN"}

        user = User()
        user.login = data['login']
        user.email = data['email']
        user.set_password(data['password'])

        session.add(user)
        session.commit()

        return {"body": "OK"}  #flask.redirect("/login")
Exemplo n.º 4
0
def getall():
    session = Session.create_session()
    return {
        "body":
        list(map(lambda x: (x.__repr__(), x.token),
                 session.query(User).all()))
    }
Exemplo n.º 5
0
def set_token(user: User):
    session = Session.create_session()
    session.query(User).filter(User.id == user.id).update({
        "token":
        generatetocken(),
        "token_ext":
        get_token_ext(hours=4)
    })
    session.commit()
Exemplo n.º 6
0
# my modules
from app.services.cfg.mkf import Config, Database_Config

from app.alchemist import session as Session
from app.alchemist.models.user import User
""" Service Android User"""

folder = "templates"

blueprint: flask.Blueprint = flask.Blueprint('user_api',
                                             __name__,
                                             template_folder=folder)
login_manager: flogin.LoginManager = flogin.LoginManager()
# Session.global_init(Database_Config.URL)
session = Session.create_session()


def init_blueprint(folder: str = Config.TEMPLATES_FOLDER):
    global blueprint
    blueprint = flask.Blueprint('user_api', __name__, template_folder=folder)


def init_login(app: flask.Flask = None):
    login_manager.setup_app(app)


def setTemplateFolder(self, folder="templates"):
    global blueprint
    blueprint = flask.Blueprint('user_api', __name__, template_folder=folder)
Exemplo n.º 7
0
def generate_new():
    args = flask.request.body
    session = Session.create_session()
    u = session.query(User).filter(User.login == args["login"]).first()
    if u.check_password(args['password']):
        generate_valid_tocken(tkf.TokenTypeConfiguration.refresh_token, u)