Exemple #1
0
def new_time_preference():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))

    # request was generated by javascript
    if request.form.get('data') is not None:
        error = times.process_grading_list(request.form.get('member_id'),
                                           request.form.get('data'))
    # if no js was available
    else:
        error = times.process_grading_fallback(
            request.form.get('member_id'), request.form.get('start'),
            request.form.get('end'), request.form.get('date'),
            request.form.get('satisfaction'))
    if error is None:
        flash('Aikavalintojen tallentaminen onnistui')
    else:
        flash('Virhe! Aikavalintojen tallentaminen epäonnistui: ' + error)

    return redirect(
        url_for('poll_times',
                poll_id=request.form.get('poll_id', 0),
                member_id=request.form.get('member_id', 0),
                selected_day=request.form.get('selected_day', 0)))
Exemple #2
0
def login():
    def redirect_to_next():
        next_url = request.args.get('next_url', 0)
        if next_url:
            return redirect(next_url)
        return redirect(url_for('index'))

    if session.get('user_id', 0):
        flash('Olet jo kirjautunut sisään')
        return redirect_to_next()

    if request.method == 'GET':
        auth.set_csrf_token()
        return render_template('login.html',
                               next_url=request.args.get('next_url'))

    elif request.method == 'POST':
        auth.check_csrf_token(request.form.get('csrf_token'))
        error = auth.process_login(request.form.get('username'),
                                   request.form.get('password'))
        if error is None:
            flash('Kirjautuminen onnistui')
            return redirect_to_next()

    flash('Virhe! Kirjautuminen epäonnistui')
    return redirect(url_for('login'))
Exemple #3
0
def set_results_final():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = poll.process_set_results_final(request.form.get('poll_id'))
    if error is None:
        flash('Kyselyn tulokset julkaistu')
    else:
        flash('Virhe! Kyselyn tulosten julkaiseminen epäonnistui: ' + error)

    return redirect(
        url_for('poll_optimization', poll_id=request.form.get('poll_id', 0)))
Exemple #4
0
def optimize_poll():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = optimization.process_optimize_poll(request.form.get('poll_id'))
    if error is None:
        flash('Ajanvarauksien optimoiminen onnistui')
    else:
        flash('Virhe! Ajanvarauksien optimoiminen epäonnistui: ' + error)

    return redirect(
        url_for('poll_optimization', poll_id=request.form.get('poll_id', 0)))
Exemple #5
0
def delete_new_customer_link():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = link.process_delete_new_customer_link(request.form.get('url_key'))
    if error is None:
        flash('Linkin poistaminen onnistui')
    else:
        flash('Virhe! Linkin poistaminen epäonnistui: ' + error)

    return redirect(
        url_for('poll_customers', poll_id=request.form.get('poll_id', 0)))
Exemple #6
0
def new_resource():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = poll.process_new_resource(request.form.get('poll_id'),
                                      request.form.get('resource_name'))
    if error is None:
        flash('Uuden resurssin luominen onnistui')
    else:
        flash('Virhe! Uuden resurssin luominen epäonnistui' + error)

    return redirect(
        url_for('poll_resources', poll_id=request.form.get('poll_id', 0)))
Exemple #7
0
def add_customer():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = poll.process_add_customer(request.form.get('poll_id'),
                                      request.form.get('reservation_length'),
                                      request.form.get('customer_name'))
    if error is None:
        flash('Uusi asiakas luotu onnistuneesti')
    else:
        flash('Virhe! Uuden asiakkaan luominen epäonnistui: ' + error)

    return redirect(
        url_for('poll_customers', poll_id=request.form.get('poll_id', 0)))
Exemple #8
0
def modify_poll():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = poll.process_modify_poll(request.form.get('poll_id'),
                                     request.form.get('poll_end_date'),
                                     request.form.get('poll_end_time'),
                                     request.form.get('end_now'))
    if error is None:
        flash('Kyselyn tiedot päivitetty onnistuneesti')
    else:
        flash('Virhe! Kyselyn tietojen päivittäminen epäonnistui: ' + error)

    return redirect(
        url_for('route_poll', poll_id=request.form.get('poll_id', 0)))
Exemple #9
0
def modify_customer():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = member.process_modify_customer(
        request.form.get('member_id'), request.form.get('reservation_length'))
    if error is None:
        flash('Varaustoiveen pituuden muuttaminen onnistui')
    else:
        flash('Virhe! Varaustoiveen pituuden muuttaminen epäonnistui: ' +
              error)

    return redirect(
        url_for('poll_times',
                poll_id=request.form.get('poll_id', 0),
                member_id=request.form.get('member_id', 0)))
Exemple #10
0
def delete_member_access_link():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    auth.check_csrf_token(request.form.get('csrf_token'))
    error = link.process_delete_member_access_link(request.form.get('url_key'))
    if error is None:
        flash('Linkin poistaminen onnistui')
    else:
        flash('Virhe! Linkin poistaminen epäonnistui: ' + error)

    if request.form.get('member_type') == 'customer':
        redirect_route = 'poll_customers'
    else:
        redirect_route = 'poll_resources'

    return redirect(
        url_for(redirect_route, poll_id=request.form.get('poll_id', 0)))
Exemple #11
0
def register():
    if request.method == 'GET':
        auth.set_csrf_token()
        return render_template('register.html')
    if request.method == 'POST':
        auth.check_csrf_token(request.form.get('csrf_token'))
        error = auth.process_registration(request.form.get('username'),
                                          request.form.get('password'))
        # after successful registration, automatically log the user in
        # and redirect to login
        if error is None:
            auth.process_login(request.form.get('username'),
                               request.form.get('password'))

            flash('Rekisteröityminen onnistui')
            return redirect(url_for('index'))

    flash('Virhe! Käyttäjätunnuksen luominen epäonnistui: ' + error)
    return redirect(url_for('register'))
Exemple #12
0
def access(url_key):
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        redirect_url = url_for('access', url_key=url_key)
        return redirect(url_for('login', next_url=redirect_url))

    if request.method == 'GET':
        return render_template('confirm_member_access_link.html',
                               details=link.member_details_by_url_key(url_key),
                               url_key=url_key)
    if request.method == 'POST':
        auth.check_csrf_token(request.form.get('csrf_token'))
        error = link.process_access(url_key)
        if error is not None:
            flash('Virhe! Kutsumisen hyväksyminen epäonnistui: ' + error)
            return redirect(url_for('index'))

        flash('Muokkausoikeus hyväksytty')
        return redirect(
            url_for('poll_times',
                    poll_id=request.form.get('poll_id', 0),
                    member_id=request.form.get('member_id', 0)))
Exemple #13
0
def new_poll():
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        return redirect(url_for('login'))

    if request.method == 'GET':
        return render_template('new_poll.html')
    if request.method == 'POST':
        auth.check_csrf_token(request.form.get('csrf_token'))
        error = poll.process_new_poll(
            session['user_id'], request.form.get('poll_name'),
            request.form.get('poll_description'),
            request.form.get('first_appointment_date'),
            request.form.get('last_appointment_date'),
            request.form.get('poll_end_date'),
            request.form.get('poll_end_time'))
        if error is not None:
            flash('Virhe! Uuden kyselyn luominen epäonnistui: ' + error)
            return redirect(url_for('new_poll'))

        flash('Kyselyn luominen onnistui')
        return redirect(url_for('index'))
Exemple #14
0
def new_customer(url_key):
    if 'user_id' not in session:
        flash('Virhe! Kirjaudu ensin sisään')
        redirect_url = url_for('new_customer', url_key=url_key)
        return redirect(url_for('login', next_url=redirect_url))

    if request.method == 'GET':
        return render_template(
            'confirm_poll_invitation.html',
            details=link.customer_type_details_by_url_key(url_key),
            url_key=url_key)
    if request.method == 'POST':
        auth.check_csrf_token(request.form.get('csrf_token'))
        # TODO this should return the member id of the new customer
        error = link.process_new_customer_url(
            url_key, request.form.get('reservation_length'),
            request.form.get('customer_name'))
        if error is None:
            flash('Uusi asiakas luotu onnistuneesti')
            poll_id = request.form.get('poll_id', 0)
            return redirect(url_for('route_poll', poll_id=poll_id))

        flash('Virhe! Uuden asiakkaan luominen epäonnistui: ' + error)
        return redirect(url_for('index'))