forget-cancellare-vecchi-toot/routes.py

38 lines
1.1 KiB
Python
Raw Normal View History

2017-07-25 09:52:24 +02:00
from app import app
2017-07-27 00:35:53 +02:00
from flask import render_template, session, url_for, redirect, request
from datetime import datetime
2017-07-27 00:35:53 +02:00
import lib.twitter
from model import Account
from app import db
2017-07-25 09:52:24 +02:00
@app.route('/')
def index():
2017-07-27 00:35:53 +02:00
viewer = None
if 'remote_id' in session:
viewer = Account.query.get(session['remote_id'])
viewer.touch()
db.session.commit()
return render_template('index.html', viewer = viewer)
2017-07-25 09:52:24 +02:00
@app.route('/login/twitter')
2017-07-27 00:35:53 +02:00
def twitter_login_step1():
return redirect(lib.twitter.get_login_url(
callback = url_for('twitter_login_step2', _external=True),
**app.config.get_namespace("TWITTER_")
))
@app.route('/login/twitter/callback')
def twitter_login_step2():
oauth_token = request.args['oauth_token']
oauth_verifier = request.args['oauth_verifier']
token = lib.twitter.receive_verifier(oauth_token, oauth_verifier, **app.config.get_namespace("TWITTER_"))
session['remote_id'] = token.remote_id
return redirect(url_for('index'))
@app.route('/logout')
def logout():
keys = list(session.keys())
for key in keys:
del session[key]
return redirect(url_for('index'))