def add_topic(): if 'username' not in session: return redirect('/login') form = AddTopicForm() if form.back.data: return redirect('/topics') elif form.validate_on_submit(): title = form.title.data content = form.content.data nm = TopicModel(db.get_connection()) nm.insert(title, content, session['user_id'], data_return()) return redirect("/topics") user = UsersModel(db.get_connection()) position = user.return_position(session['user_id']) # Проверка, имеет ли пользователь права if not position: return render_template('indifferent/not_for_admin.html', title='У вас недостаточно прав!', session=session) else: return render_template('add_topic.html', title='Добавление темы', form=form, username=session['username'], about_page='', session=session)
def add_news(): if 'username' not in session: return redirect('/login') form = AddNewsForm() if form.back.data: return redirect('/index') elif form.validate_on_submit(): title = form.title.data content = form.content.data nm = NewsModel(db.get_connection()) nm.insert(title, content, session['user_id'], data_return()) return redirect("/index") user = UsersModel(db.get_connection()) position = user.return_position(session['user_id']) # Если пользователь случайно вбил, проверяется, имеет ли он права if not position: return render_template('indifferent/not_for_admin.html', title='У вас недостаточно прав!') else: return render_template('add_news.html', title='Добавление новости', form=form, username=session['username'], about_page='', session=session)
def topics(): global recent recent = '/topics' if 'username' not in session: return redirect('/login') if request.method == 'POST': if 'perenap' in request.form: return redirect('/add_topic') user = UsersModel(db.get_connection()) position = user.return_position(session['user_id']) topics = TopicModel(db.get_connection()) topics = topics.get_all() return render_template('topics.html', title='Наиболее актуальные и волнующие темы', topics=topics, position=position, session=session)
def for_adm(): if 'username' not in session: return redirect('/login') um = UsersModel(db.get_connection()) user = um.return_position(session['user_id']) # Проверка, есть ли права if user: nm = NewsModel(db.get_connection()) news = nm.get_all_likes() print(news) return render_template('for_admin.html', mas=news, title='Информация о лайках', session=session) else: return render_template('indifferent/not_for_admin.html', title='У вас недостаточно прав!', session=session)
def index(): global recent recent = '/index' if 'username' not in session: return redirect('/login') if request.method == 'POST': # Добавление новости. Только для админа if 'perenap' in request.form: return redirect('/add_news') user = UsersModel(db.get_connection()) # Проверка. User или adm (пользователь или админ) position = user.return_position(session['user_id']) news = NewsModel(db.get_connection()) news = news.get_all(session['user_id']) return render_template('all_news.html', title='Новости', news=news, position=position, session=session)