コード例 #1
0
ファイル: views.py プロジェクト: jsalojuuri/openforum
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)
    username = User.query.filter_by(username=form.username.data).first()

    # Jos käyttäjätunnus löytyy jo tietokannasta
    if username:
        return render_template(
            "auth/registerform.html",
            form=form,
            error=
            "Käyttäjätunnus jo käytössä. Valitse uusi käyttäjänimi ja lähetä tiedot uudelleen."
        )

    # Lomakkeen tietojen validointi
    if not form.validate_on_submit():
        return render_template(
            "auth/registerform.html",
            form=form,
            error=
            "Nimen, käyttäjätunnuksen ja salasanan oltava 1-144 merkkiä pitkiä."
        )

    user = User(form.name.data, form.username.data, form.password.data)
    db.session().add(user)
    db.session().commit()

    return redirect(url_for("auth_login"))
コード例 #2
0
ファイル: views.py プロジェクト: Pate1337/FrisbeeGolfFoorumi
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    register_form = RegisterForm(request.form)

    if not register_form.validate():
        return render_template("auth/registerform.html", form=register_form)

    user = User.query.filter_by(username=register_form.username.data).first()
    if user:
        return render_template("auth/registerform.html",
                               form=register_form,
                               error="Username already taken!")

    # Everything ok, create new user
    u = User(register_form.name.data, register_form.username.data,
             register_form.password.data)

    db.session().add(u)
    db.session().commit()

    # Create a role aswell
    r = Role()
    r.account_id = u.id

    db.session().add(r)
    db.session().commit()

    # Login straight away
    login_user(u)
    return redirect(url_for("categories_index"))
コード例 #3
0
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    loytyykoUser = User.query.filter_by(username=form.username.data).first()
    if loytyykoUser:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Käyttäjänimi varattu, valitse uusi")

    loytyykoUserjaPassword = User.query.filter(
        User.username == form.username.data,
        User.password == form.password.data)

    if not form.validate_on_submit():
        return render_template("auth/registerform.html", form=form)

    # user_groupiksi tulee 2, eli user
    user = User(form.username.data, form.password.data, 2)
    db.session().add(user)
    db.session().commit()

    return redirect(url_for("auth_login"))
コード例 #4
0
ファイル: views.py プロジェクト: Tykky/toto-betting
def auth_register():
    if (request.method == "GET"):
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html", form=form)

    if not form.password1.data == form.password2.data:
        form.password1.errors.append("Passwords do not match")
        form.password2.errors.append("Passwords do not match")
        return render_template("auth/registerform.html", form=form)

    if User.query.filter_by(username=form.username.data).first():
        form.username.errors.append("Username already taken")
        return render_template("auth/registerform.html", form=form)

    user = User(form.username.data,
                bcrypt.generate_password_hash(form.password1.data))

    db.session().add(user)
    db.session().commit()

    return redirect(url_for('auth_login'))
コード例 #5
0
ファイル: views.py プロジェクト: gitblast/coding-tips
def new_user():
    if request.method == 'GET':
        return render_template("auth/register.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        print('validation error adding user')
        return render_template('auth/register.html',
                               form=form,
                               error='Sign up failed')

    users = User.query.all()

    for u in users:
        if u.username == form.username.data:
            return render_template('auth/register.html',
                                   form=form,
                                   error='Sign up failed',
                                   uniqueError='Username already in use')

    user = User(form.username.data, form.password.data, form.email.data)

    db.session().add(user)
    db.session().commit()

    login_user(user)
    return redirect(url_for('index'))
コード例 #6
0
ファイル: views.py プロジェクト: Tubaias/tsohalauta
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html", form=form)

    user = User.query.filter_by(username=form.username.data).first()

    if user:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Account already exists")

    key = Authkey.query.filter_by(keycode=form.authkey.data).first()

    if not key:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Incorrect authorization key")

    u = User(form.username.data, form.password.data)
    db.session().add(u)
    db.session().commit()

    flash('New account created.')
    return redirect(url_for("index"))
コード例 #7
0
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if request.method == "POST" and form.validate():
        try:
            new_user = User(form.username.data, form.password.data)
            user_role = Role.query.filter_by(name="USER").first()
            new_user.role.append(user_role)
            db.session().add(new_user)
            db.session().commit()
            user = User.query.filter_by(username=new_user.username,
                                        password=new_user.password).first()
            login_user(user)
            return redirect(url_for("persons_information"))
        except:
            flash("Error connecting to database", "error")
            return redirect(
                url_for("error_page", message="Error connecting to database"))

    return render_template("auth/registerform.html",
                           form=form,
                           error="Error creating account")
コード例 #8
0
def auth_register():
    if request.method == "GET":
        return render_template("/auth/register.html", form=RegisterForm())

    form = RegisterForm(request.form)
    if not form.validate():
        return render_template("/auth/register.html", form=form)

    password = generate_password_hash(form.password.data)
    email = form.username.data
    firstname = form.firstname.data
    lastname = form.lastname.data

    user = User(email, firstname, lastname, password, None, False)
    db.session.add(user)

    try:
        db.session().commit()
    except (IntegrityError) as ex1:
        form.username.errors = ["Sähköposti on varattu"]
        return render_template("/auth/register.html", form=form)
    except (DBAPIError, SQLAlchemyError) as ex2:
        form.errors["general"] = ["Lomakkeen lähettäminen ei onnistunut."]
        return render_template("/auth/register.html", form=form)

    flash(
        "Kiitos rekisteröitymisestä! Tunnuksesi on tallennettu järjestelmään. Voit kirjautua järjestelmään antamallasi tunnuksella ja salasanalla, kun ylläpitäjä on hyväksynyt tunnuksesi.",
        "login")
    return redirect(url_for('auth_login'))
コード例 #9
0
def auth_register():
    error = None
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template(
            "auth/registerform.html",
            form=form,
            error="Password has to be at least 8 characters")

    que = User.query.filter_by(username=form.username.data).first()
    if not que:
        new_User = User(name=form.name.data,
                        username=form.username.data,
                        password=generate_password_hash(form.password.data))
        db.session().add(new_User)
        db.session().commit()
        return redirect(url_for("auth_login"))

    return render_template("auth/registerform.html",
                           form=form,
                           error="Username already in use")
コード例 #10
0
def auth_register():

    if request.method == "GET":
        return render_template("auth/register.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/register.html", form=form)

    usernameExists = User.query.filter_by(username=form.username.data).first()
    if usernameExists:
        return render_template("auth/register.html",
                               form=form,
                               error="Käyttäjänimi on jo käytössä")

    username = form.username.data
    password = form.password.data

    role = "USER"

    if username == "admin":
        role = "ADMIN"

    user = User(username, password, role)
    db.session.add(user)
    db.session.commit()

    return render_template("auth/registersuccess.html")
コード例 #11
0
def auth_register():
    form = RegisterForm(request.form)
    if not form.validate():
        return render_template(
            "auth/registerform.html",
            form=form,
            error="Username and password lenght need to be 3-12")

    if (form.username.data == "admin"):
        roles = "ADMIN"
    else:
        roles = "USER"

    r = User(form.username.data, form.password.data, roles)
    db.session().add(r)

    db.session().add(r)

    try:
        db.session().commit()
    except:
        return render_template("auth/registerform.html",
                               form=form,
                               error="username must be unique")

    return redirect(url_for("auth_login"))
コード例 #12
0
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form = RegisterForm())

    form = RegisterForm(request.form)
    if not form.validate():
       return render_template("auth/registerform.html", form=form)

    u = User(request.form.get("name"), request.form.get("username"), request.form.get("password"))

    user_access = Usergroup.query.filter_by(name='user').one()
    u.usergroups.append(user_access)

    if request.form.get("username") == "superUser":
        admin_access = Usergroup.query.filter_by(name='admin').one()
        owner_access = Usergroup.query.filter_by(name='owner').one()
        u.usergroups.append(admin_access)
        u.usergroups.append(owner_access)

    db.session().add(u)
    db.session().commit()

    login_user(u)
    identity_changed.send(current_app._get_current_object(),
                          identity=Identity(u.id))
    return redirect(url_for("index"))
コード例 #13
0
ファイル: views.py プロジェクト: Kallmark/Tietokantasovellus
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html", form=form)

    user = User.query.filter_by(username=form.username.data).first()
    if user:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Username already taken!")

    user = User(form.name.data, form.username.data, form.password.data)

    db.session().add(user)
    db.session().commit()

    role = Role()
    role.account_id = user.id

    db.session().add(role)
    db.session().commit()

    login_user(user)

    return redirect(url_for("index"))
コード例 #14
0
ファイル: views.py プロジェクト: mshroom/visailusivusto
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html",
                               form=form,
                               error="Registration failed. See details below.")
    if form.password.data != form.password2.data:
        return render_template(
            "auth/registerform.html",
            form=form,
            error="Registration failed. You gave two different passwords.")

    user = User.query.filter_by(username=form.username.data).first()
    if user:
        return render_template(
            "auth/registerform.html",
            form=form,
            error="Registration failed. Username is already in use.")

    u = User(form.name.data, form.username.data, form.password.data)
    db.session().add(u)
    db.session().commit()
    return render_template("auth/loginform.html",
                           form=LoginForm(),
                           confirm="Registration completed.")
コード例 #15
0
ファイル: views.py プロジェクト: Granigan/BBMRS
def auth_register():
    if request.method == "GET":
        return render_template("/auth/registerform.html",
                               form=RegisterForm(),
                               error="")

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html", form=form, error="")

    if Coach.coach_exists(form.username.data):
        return render_template("auth/registerform.html",
                               form=form,
                               error="Username is already in use!")

    c = Coach(name=form.coach_name.data,
              username=form.username.data,
              password=form.password.data,
              role=form.role.data)

    db.session.add(c)
    db.session.commit()

    return redirect(url_for("auth_login"))
コード例 #16
0
ファイル: views.py プロジェクト: jsalojuuri/openforum
def user_profile_update():

    form = RegisterForm(request.form)
    user = current_user
    username = User.query.filter_by(username=form.username.data).first()

    # Jos käyttäjätunnus löytyy tietokannasta, mutta se ei ole aktiivisen käyttäjän käyttäjätunnus
    if username and user != username:
        return render_template("user/profile.html", user = user, topics = Topic.find_user_topics(current_user.id), comments = Comment.find_user_comments(current_user.id), 
                    stat1 = Topic.find_user_topic_count(current_user.id), stat2 = Topic.find_user_comment_count(current_user.id),
                    form=RegisterForm(name=user.name, username=user.username, password=user.password),
                               error = "Käyttäjätunnus jo käytössä. Valitse uusi käyttäjänimi ja lähetä tiedot uudelleen.")

    # Lomakkeen tietojen validointi
    if not form.validate_on_submit():
        return render_template("user/profile.html", user = user, topics = Topic.find_user_topics(current_user.id), comments = Comment.find_user_comments(current_user.id), 
                    stat1 = Topic.find_user_topic_count(current_user.id), stat2 = Topic.find_user_comment_count(current_user.id),
                    form=RegisterForm(name=user.name, username=user.username, password=user.password),
                    error = "Nimen, käyttäjätunnuksen ja salasanan oltava vähintään 1 merkkiä pitkiä.")

    user = User.query.filter_by(id=user.id).first()
    user.name = form.name.data
    user.username = form.username.data
    user.password = form.password.data
    db.session.commit()
    
    return redirect(url_for("user_ownpage"))
コード例 #17
0
def auth_registerOrUpdate():
    if ('create' in request.form):
        form = RegisterForm(request.form)

        if not form.validate():
            return render_template("auth/new.html", form=form)
        username = form.username.data
        password = form.password.data
        user = User(username, password, False)
        db.session().add(user)
        db.session().commit()

        login_user(user)

    elif ('edit' in request.form):
        form = UserEditForm(request.form)

        if not form.validate():
            return render_template("auth/edit.html", form=form)

        oldUsername = form.oldUsername.data
        user = User.query.filter_by(username=oldUsername).first()

        user.username = form.username.data
        user.password = form.password.data

        db.session().commit()

    return redirect(url_for("games_index"))
コード例 #18
0
def auth_profile_edit():
    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/profile.html",
                               form=form,
                               user=current_user)

    if form.username.data != current_user.username and User.query.filter_by(
            username=form.username.data).first():
        return render_template("auth/profile.html",
                               form=form,
                               error="Username already in use",
                               user=current_user)

    if current_user.username == 'test' or current_user.username == 'admin':
        return render_template("auth/profile.html",
                               form=form,
                               error="This account cannot be edited",
                               user=current_user)

    current_user.name = form.name.data
    current_user.username = form.username.data
    current_user.password = form.password.data

    db.session().commit()

    return redirect(url_for("auth_profile"))
コード例 #19
0
ファイル: views.py プロジェクト: att78/reseptikirja
def auth_register():
    username_already_taken = ""

    if request.method == "GET":
        return render_template("auth/registerform.html",
                               form=RegisterForm(),
                               username_already_taken=username_already_taken)

    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html",
                               form=form,
                               username_already_taken=username_already_taken)

    #rekisteröinnissä pitää estää saman usernamen valinta
    suggested_account_name = form.username.data
    checked_account = User.query.filter(
        User.username == suggested_account_name).first()

    if checked_account != None:
        username_already_taken = "Username is already taken. Please pick another one."
        return render_template("auth/registerform.html",
                               form=form,
                               username_already_taken=username_already_taken)

    account = User(form.name.data, form.username.data, form.password.data)

    if db.session.query(User).count() == 0:
        account.set_as_admin()

    db.session().add(account)
    db.session().commit()

    return redirect(url_for("auth_login"))
コード例 #20
0
def register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    if not form.validate():
        for fieldName, errorMessages in form.errors.items():
            for err in errorMessages:
                print(err)
        return render_template("auth/registerform.html", form=form)

    user = User.query.filter_by(username=form.username.data).first()
    if user:
        for fieldName, errorMessages in form.errors.items():
            for err in errorMessages:
                print(err)
        return render_template("auth/registerform.html",
                               form=form,
                               errorMessage="Käyttäjänimi on jo käytössä")

    new_user = User(form.username.data, form.password.data, False)

    db.session.add(new_user)
    db.session.commit()

    return redirect(url_for("auth_login"))
コード例 #21
0
def auth_register():
    if current_user.is_authenticated:
        return redirect(url_for("index"))

    
    form = RegisterForm(request.form)
    form.name.data = form.name.data.replace(" ", "")
    form.username.data = form.username.data.replace(" ", "")
    user = User.query.filter_by(username=form.username.data).first()
    if user:
        form.username.data = ""
        return render_template("auth/register.html",
                               form = form,
                               error = "Username already taken!")

    if form.password.data != form.passwordconfirm.data:
        return render_template("auth/register.html",
                               form = form,
                               error = "Passwords did not match!")

    if not form.validate():
        return render_template("auth/register.html", form = form)


    
    user = User(form.name.data, form.username.data, form.password.data)
    db.session().add(user)
    db.session().commit()

    print("User " + user.name + " recognized")
    login_user(user)
    return redirect(url_for("index"))
コード例 #22
0
ファイル: views.py プロジェクト: selinale/tsoha-sauna
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    user = User.query.filter_by(username=form.username.data).first()

    confirmed = form.password.data == form.confirmation.data

    if user:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Käyttäjä on jo olemassa")

    if not confirmed:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Salasanat eivät täsmää!")

    u = User(form.household.data, form.username.data, form.password.data)

    db.session().add(u)
    db.session().commit()

    login_user(u)
    return redirect(url_for("index"))
コード例 #23
0
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)

    existingUser = User.query.filter_by(username=form.username.data,
                                        password=form.password.data).first()
    if existingUser:
        form.username.errors.append("The username has already taken")
        return render_template("auth/registerform.html", form=form)

    u = User(form.name.data, form.username.data, form.password.data)

    db.session().add(u)
    db.session().commit()

    user = User.query.filter_by(username=form.username.data,
                                password=form.password.data).first()
    if not user:
        return render_template("auth/loginform.html",
                               form=form,
                               error="Käyttäjänimi tai salasana väärin")

    print("Käyttäjä " + user.name + " tunnistettiin")
    p = Portfolio(user.id, 0, 0, 0, 0)
    db.session().add(p)
    db.session().commit()
    login_user(user)
    return redirect(url_for("index"))
コード例 #24
0
ファイル: views.py プロジェクト: S4ndyk/Climb-a-Rock
def auth_register():
    if request.method == "GET":
        return render_template("auth/register.html", form = RegisterForm())
    form = RegisterForm(request.form)
    new_user = User(form.name.data, form.username.data, form.password.data)
    db.session().add(new_user)
    db.session().commit()
    return redirect(url_for("routes_index"))
コード例 #25
0
ファイル: views.py プロジェクト: mremes/tsoha-rankkauslista
def register():
    form = RegisterForm(request.form)
    if form.validate_on_submit():
        user = User(form.name.data, form.username.data, form.role.data,
                    form.password.data)
        db.session().add(user)
        db.session().commit()
        flash(u'Onnistuneesti rekisteröitynyt käyttäjä: %s' % user.username)
        return redirect(utils.get_next_url())
    return render_template('auth/register.html', form=form)
コード例 #26
0
ファイル: views.py プロジェクト: majormalfunk/kirjanpito
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)
    # mahdolliset validoinnit

    print("Yritetään rekisteröitymistä")
    if not form.validate():
        return render_template("auth/registerform.html", form=form)

    testuser = UserAccount.query.filter_by(username=form.username.data).first()
    if testuser:
        varattu = form.username.data
        form.username.data = ""
        return render_template("auth/registerform.html",
                               form=form,
                               error="Käyttäjätunnus " + varattu +
                               " on jo käytössä")

    ## Luodaan yhteisö, jolle käyttäjä rekisteröidään

    hshpwd = pbkdf2_sha256.hash(form.password.data)

    ##print("Häsätty :" + hshpwd)

    ent = Entity(code="", name="", description="")
    db.session().add(ent)
    db.session().flush()
    print("Entity id = " + str(ent.id))

    try:
        newuser = UserAccount(username=form.username.data,
                              password=hshpwd,
                              name=form.name.data,
                              entity_id=ent.id,
                              role="admin")
        db.session().add(newuser)
        db.session().commit()
        print("Käyttäjä " + newuser.name + " rekisteröitiin")
    except:
        db.session().rollback()
        db.session().delete(ent)
        pass

    user = UserAccount.query.filter_by(username=form.username.data,
                                       password=hshpwd).first()
    if not user:
        return render_template("auth/registerform.html",
                               form=form,
                               error="Jokin meni pieleen rekisteröitymisessä")

    login_user(user)
    return redirect(url_for("index"))
コード例 #27
0
def auth_register():
    form = RegisterForm(request.form)
    if not form.validate():
        return render_template("auth/register.html", form=form)
    t = User(request.form.get("name"), request.form.get("username"),
             request.form.get("password"))

    db.session().add(t)
    db.session().commit()

    return redirect(url_for("index"))
コード例 #28
0
def auth_user_create():
    form = RegisterForm(request.form)

    if not form.validate():
        return render_template("auth/registerform.html", form=form)

    u = User(form.username.data, form.password.data)

    db.session().add(u)
    db.session().commit()
    return redirect(url_for("polls_index"))
コード例 #29
0
def auth_register():
    if (request.method == "GET"):
        return render_template("auth/registerform.html", form=RegisterForm())

    form = RegisterForm(request.form)
    if not form.validate():
        return render_template("auth/registerform.html", form=form)

    user = User(form.name.data, form.username.data, form.password.data)
    db.session().add(user)
    db.session().commit()

    return redirect(url_for("auth_login"))
コード例 #30
0
ファイル: views.py プロジェクト: Muisku/work-schedule-app
def auth_register():
    if request.method == "GET":
        return render_template("auth/registerform.html", form = RegisterForm())

    form = RegisterForm(request.form)

    user = User(form.name.data,form.username.data,form.password.data)
    db.session().add(user)
    db.session().commit()

    login_user(User.query.filter_by(username=form.username.data, password=form.password.data).first())

    return redirect(url_for("auth_login"))