def register(): form = RegisterUserForm() if form.validate_on_submit(): if form.password.data != form.repeat_password.data: return render_template('register.html', title='Регистрация', form=form, message="Пароли не совпадают") session = db_session.create_session() if session.query(User).filter( User.email == form.username.data).first(): return render_template('register.html', title='Регистрация', form=form, message="Такой пользователь уже есть") user = User(surname=form.surname.data, name=form.name.data, age=form.age.data, position=form.position.data, speciality=form.speciality.data, address=form.address.data, email=form.username.data, hashed_password=form.password.data) user.set_password(form.password.data) session.add(user) session.commit() return redirect('/success') return render_template('register.html', title='Регистрация', form=form)
def edit_jobs(id): form = EditForm() if request.method == "GET": session = db_session.create_session() jobs = session.query(Jobs).filter(Jobs.id == id, Jobs.user == current_user).first() if not jobs: jobs = session.query(Jobs).filter(Jobs.id == id, current_user.id == 1).first() if jobs: form.teamlider.data = jobs.team_leader form.job.data = jobs.job form.work_size.data = jobs.work_size form.collaborators.data = jobs.collaborators form.start_date.data = jobs.start_date form.end_date.data = jobs.end_date form.is_finished.data = jobs.is_finished else: abort(404) if form.validate_on_submit(): session = db_session.create_session() jobs = session.query(Jobs).filter(Jobs.id == id, Jobs.user == current_user).first() if not jobs: jobs = session.query(Jobs).filter(Jobs.id == id, current_user.id == 1).first() if jobs: jobs.team_leader = form.teamlider.data jobs.job = form.job.data jobs.work_size = form.work_size.data jobs.collaborators = form.collaborators.data jobs.start_date = form.start_date.data jobs.end_date = form.end_date.data jobs.is_finished = form.is_finished.data session.commit() return redirect('/works_log') else: abort(404) return render_template('register_job.html', title='Редактирование новости', form=form)
def login(): form = LoginForm() if form.validate_on_submit(): session = db_session.create_session() user = session.query(User).filter( User.email == form.email.data).first() if user and user.check_password(form.password.data): login_user(user, remember=form.remember_me.data) return redirect("/works_log") return render_template('login.html', message="Неправильный логин или пароль", form=form) return render_template('login.html', title='Авторизация', form=form)
def jobs_delete(id): session = db_session.create_session() jobs = session.query(Jobs).filter(Jobs.id == id, Jobs.user == current_user).first() if not jobs: jobs = session.query(Jobs).filter(Jobs.id == id, current_user.id == 1).first() if jobs: session.delete(jobs) session.commit() else: abort(404) return redirect('/')
def reqister_job(): form = RegisterForm() if form.validate_on_submit(): session = db_session.create_session() job = Jobs( team_leader=session.query(User).filter( User.name == form.teamlider.data.split()[0], User.surname == form.teamlider.data.split()[1])[0].id, job=form.job.data, work_size=form.work_size.data, collaborators=form.collaborators.data, start_date=datetime( *list(map(int, form.start_date.data.split('.')))), end_date=datetime(*list(map(int, form.end_date.data.split('.')))), is_finished=form.is_finished.data) session.add(job) session.commit() return redirect('/works_log') return render_template('register_job.html', title='Регистрация работы', form=form)
def load_user(user_id): session = db_session.create_session() return session.query(User).get(user_id)
map_params = { "ll": ",".join([str(toponym_longitude), str(toponym_lattitude)]), "l": "sat", "spn": f'{delta_1},{delta_2}' } map_api_server = "http://static-maps.yandex.ru/1.x/" configure['image_url'] = requests.get(map_api_server, params=map_params, stream=True).url return render_template('user_show.html', **configure) @app.errorhandler(404) def not_found(error): return make_response(jsonify({'error': 'Not found'}), 404) if __name__ == '__main__': db_session.global_init("static/db/blogs.sqlite") session = db_session.create_session() app.register_blueprint(jobs_api.blueprint) app.register_blueprint(user_api.blueprint2) api.add_resource(users_resource.userListResource, '/api/v2/users') api.add_resource(users_resource.userResource, '/api/v2/users/<int:user_id>') api.add_resource(jobs_resource.jobsListResource, '/api/v2/jobs') api.add_resource(jobs_resource.jobsResource, '/api/v2/jobs/<int:jobs_id>') app.run(port=8080, host='127.0.0.1')