def authorized(oauth_token): next_url = request.args.get('next') or url_for('index_bp.index') if oauth_token is None: return redirect(next_url) # get the username gh_user = github.get('user?access_token='+oauth_token) username = gh_user['login'] user = User.query.filter_by(github_access_token=oauth_token, username=username).first() if user is None: user = User(username, oauth_token) db_session.add(user) user.github_access_token = oauth_token db_session.commit() session['user_id'] = user.id return redirect(next_url)
def counter(bot, update): chat_id = update.message.chat_id if chat_id == GROUP_ID: message = update.message user_id = message.from_user.id username = message.from_user.username first_name = message.from_user.first_name last_name = message.from_user.last_name Connection.db_connect() user = User.select().where(User.id_user == user_id) if not user.exists(): user = User.create(id_user=user_id, username=username, first_name=first_name, last_name=last_name) Message.create(user=user, date=datetime.now() - timedelta(hours=6)) else: # datos actualizados user = user.get() user.username = username user.first_name = first_name user.last_name = last_name user.save() Message.create(user=user, date=datetime.now() - timedelta(hours=6)) Connection.db_close()
def login(): """Logs the user in.""" error = None if request.method == 'POST': mobile = request.form['mobile'] remember = request.form.get('remember', None) == 'on' password = request.form['password'] user = User.get_user(mobile) if user is None: error = u'手机号不正确' elif not user.check_password_hash(password): error = u'密码不正确' elif not user.isAdmin: error = u'您不是管理员' else: session['user_id'] = user.id if remember: session.permanent = True return redirect(url_for('team.team')) if g.user and g.user.isAdmin: return redirect(url_for('team.team')) return render_template('login.html', error=error)