Esempio n. 1
0
def view():
    logout = logout_form()
    search = search_person_form()
    search.player.choices = [('{}'.format(person.id),
                              '{} {}'.format(person.lastname, person.name))
                             for person in get_Athletes()]
    if search.validate_on_submit():
        id = search.player.data
        player = get_Person(id)
        if player != None:
            edit = create_edit_form(id=id)

            context = {
                'user': current_user,
                'player': player,
                'logout': logout,
                'search': search,
                'edit': edit,
            }
            return render_template('view.html', **context)

    context = {
        'user': current_user,
        'logout': logout,
        'search': search,
    }
    return render_template('view.html', **context)
Esempio n. 2
0
def signup():
    signup = signup_form()

    if signup.validate_on_submit():
        email = signup.id.data
        user = get_Person(email)

        if user is None:
            email = signup.id.data
            password = signup.password.data
            name = signup.name.data
            lastname = signup.lastname.data
            height = signup.height.data
            weight = signup.weight.data
            birthday = signup.birthday.data
            biography = signup.biography.data
            dorsal = signup.dorsal.data
            position = signup.position.data
            image = signup.image.data
            if image != '':
                image_name = secure_filename(email + '_' + image.filename)
                image_path = os.path.abspath(
                    'app/static/uploads/{}'.format(image_name))
                image.save(image_path)
                put_Athlete(email, password, name, lastname, birthday,
                            biography, image_name, height, weight, dorsal,
                            position)
            else:
                put_Athlete(email, password, name, lastname, birthday,
                            biography, None, height, weight, dorsal, position)

            flash('User successfully registered', category='success')
            user = get_Person(email)
            # user = Athlete(email, name, lastname, height, weight, birthday, dorsal, position, False, image_path)
            login_user(user)
            return redirect(url_for('profile.home', current=current_user.name))
        else:
            flash('User already exist', category='danger')
    else:
        if request.method == 'POST':
            flash('Something went wrong, check the fields', category='danger')

    context = {'signup_form': signup, 'current': current_user}
    return render_template('signup.html', **context)
Esempio n. 3
0
def create_edit_form(id):
    class edit_form(FlaskForm):
        pass

    player = get_Person(id)
    choices = [\
        ("1","Arquero"), ("2","Defensa derecho"), ("3","Defensa izquierdo"), ("4","Defensa central"), ("5","Defensa/Mediocampista de contencion"),\
            ("6","Mediocampista derecho/exterior"), ("7","Central/ Mediocampista"), ("8","Delantero"), ("9","Mediocampista ataque/armador"),\
                ("10","Mediocampista izquierdo/exterior")]

    id = HiddenField('id', default=player.id, validators=[InputRequired()])
    email = StringField('Correo',
                        validators=[validate_name,
                                    InputRequired()],
                        default=player.id)
    name = StringField('Nombre',
                       default=player.name,
                       validators=[InputRequired()])
    lastname = StringField('apellidos',
                           default=player.lastname,
                           validators=[InputRequired()])
    birthday = DateField('Cumpleaños',
                         format='%Y-%m-%d',
                         default=player.birthday,
                         validators=[InputRequired()])
    height = StringField('Estatura (cm)',
                         default=player.athlete.height,
                         validators=[InputRequired()])
    weight = StringField('Peso',
                         default=player.athlete.weight,
                         validators=[InputRequired()])
    dorsal = StringField('Dorsal',
                         validators=[validate_dorsal,
                                     InputRequired()],
                         default=player.athlete.dorsal)
    position = SelectField('Posicion',
                           choices=choices,
                           default=player.athlete.position,
                           validators=[InputRequired()])
    submit = SubmitField()
    setattr(edit_form, 'id', id)
    setattr(edit_form, 'email', email)
    setattr(edit_form, 'name', name)
    setattr(edit_form, 'lastname', lastname)
    setattr(edit_form, 'birthday', birthday)
    setattr(edit_form, 'height', height)
    setattr(edit_form, 'weight', weight)
    setattr(edit_form, 'dorsal', dorsal)
    setattr(edit_form, 'position', position)
    setattr(edit_form, 'submit', submit)

    return edit_form()
Esempio n. 4
0
def create_coach():
    logout = logout_form()
    signup = signup_coach_form()

    if signup.validate_on_submit():
        email = signup.id.data
        user = get_Person(email)

        if user is None:
            email = signup.id.data
            password = signup.password.data
            name = signup.name.data
            lastname = signup.lastname.data
            birthday = signup.birthday.data
            especialization = signup.especialization.data
            link = signup.link.data
            biography = signup.biography.data
            image = signup.image.data
            print(password)
            if image != '':
                image_name = secure_filename('{}_{}'.format(
                    email, image.filename))
                image_path = os.path.abspath(
                    'app/static/uploads/{}'.format(image_name))
                image.save(image_path)
                put_coach(email, password, name, lastname, birthday, biography,
                          image_name, especialization, link)
            flash('User successfully registered', category='success')
        else:
            flash('El usuario ya existe', category='danger')
        return redirect(url_for('crud.create_coach'))
    else:
        if request.method == 'POST':
            flash('Something went wrong, check the fields', category='danger')

    context = {
        'user': current_user,
        'logout': logout,
        'signup': signup,
    }

    return render_template('coach.html', **context)
Esempio n. 5
0
def login():
    login = login_form()

    if current_user.is_active:
        return redirect(url_for('profile.home', current=current_user.name))

    if login.validate_on_submit():
        email = login.email.data
        password = login.password.data

        user = get_Person(email)

        if user and user.check_password(password):
            login_user(user)
            flash('Logued in successfully', category="success")
            return redirect(url_for('profile.home', current=user.name))
        # return redirect(url_for('profile.home'))

    context = {'login_form': login}

    return render_template('login.html', **context)
Esempio n. 6
0
def delete():
    logout = logout_form()
    delete = delete_person_form()
    delete.player.choices = [('{}'.format(person.id),
                              '{} {}'.format(person.lastname, person.name))
                             for person in get_Athletes()]

    if delete.validate_on_submit():
        id = delete.player.data
        player = get_Person(id)

        if player is not None:
            delete_Person(player)
            flash('User delete successfuly', category='success')
            return redirect(url_for('crud.delete'))
    context = {
        'user': current_user,
        'logout': logout,
        'delete': delete,
    }
    return render_template('delete.html', **context)
Esempio n. 7
0
def edit():
    form = edit_form(request.form)
    id = form.id.data
    email = form
    if request.method == 'POST' and form.validate():
        player = get_Person(email)
        email
        if player is None:
            # insert
            email = form.email.data
        name = form.name.data
        lastname = form.lastname.data
        birthday = form.birthday.data
        height = form.height.data
        weight = form.weight.data
        dorsal = form.dorsal.data
        position = form.position.data
        update_Athlete(id, email, name, lastname, birthday, height, weight,
                       dorsal, position)
        flash('User update successfuly', category='success')
    else:
        flash('Something went wrong, check the fields', category='danger')
    return redirect(url_for('crud.view'))