|
@@ -25,7 +25,7 @@ from flaskbb.utils.permissions import (can_post_reply, can_post_topic,
|
|
from flaskbb.forum.models import (Category, Forum, Topic, Post, ForumsRead,
|
|
from flaskbb.forum.models import (Category, Forum, Topic, Post, ForumsRead,
|
|
TopicsRead)
|
|
TopicsRead)
|
|
from flaskbb.forum.forms import (QuickreplyForm, ReplyForm, NewTopicForm,
|
|
from flaskbb.forum.forms import (QuickreplyForm, ReplyForm, NewTopicForm,
|
|
- ReportForm, SearchForm)
|
|
|
|
|
|
+ ReportForm, UserSearchForm, SearchPageForm)
|
|
from flaskbb.utils.helpers import get_forums
|
|
from flaskbb.utils.helpers import get_forums
|
|
from flaskbb.user.models import User
|
|
from flaskbb.user.models import User
|
|
|
|
|
|
@@ -464,10 +464,10 @@ def who_is_online():
|
|
def memberlist():
|
|
def memberlist():
|
|
page = request.args.get('page', 1, type=int)
|
|
page = request.args.get('page', 1, type=int)
|
|
|
|
|
|
- search_form = SearchForm(search_types=['user'])
|
|
|
|
|
|
+ search_form = UserSearchForm()
|
|
|
|
|
|
if search_form.validate():
|
|
if search_form.validate():
|
|
- users = search_form.get_results()['user'].paginate(page, current_app.config['USERS_PER_PAGE'], False)
|
|
|
|
|
|
+ users = search_form.get_results().paginate(page, current_app.config['USERS_PER_PAGE'], False)
|
|
return render_template("forum/memberlist.html", users=users, search_form=search_form)
|
|
return render_template("forum/memberlist.html", users=users, search_form=search_form)
|
|
else:
|
|
else:
|
|
users = User.query. \
|
|
users = User.query. \
|
|
@@ -504,4 +504,16 @@ def untrack_topic(topic_id, slug=None):
|
|
topic = Topic.query.filter_by(id=topic_id).first_or_404()
|
|
topic = Topic.query.filter_by(id=topic_id).first_or_404()
|
|
current_user.untrack_topic(topic)
|
|
current_user.untrack_topic(topic)
|
|
current_user.save()
|
|
current_user.save()
|
|
- return redirect(topic.url)
|
|
|
|
|
|
+ return redirect(topic.url)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+@forum.route("/search", methods=['GET', 'POST'])
|
|
|
|
+def search():
|
|
|
|
+ form = SearchPageForm()
|
|
|
|
+
|
|
|
|
+ if form.validate_on_submit():
|
|
|
|
+ result = form.get_results()
|
|
|
|
+ return render_template('forum/search_result.html', form=form, result=results)
|
|
|
|
+
|
|
|
|
+ return render_template('forum/search_form.html', form=form)
|
|
|
|
+
|