mirror of
https://codeberg.org/rimu/pyfedi
synced 2025-01-23 19:36:56 -08:00
Fix - subscribed page topic filter handling
This commit is contained in:
parent
ad55fc510c
commit
f76b205f29
1 changed files with 68 additions and 71 deletions
|
@ -220,7 +220,7 @@ def list_communities():
|
|||
next_url=next_url, prev_url=prev_url, current_user=current_user,
|
||||
topics=topics, languages=languages, topic_id=topic_id, language_id=language_id, sort_by=sort_by,
|
||||
low_bandwidth=low_bandwidth, moderating_communities=moderating_communities(current_user.get_id()),
|
||||
joined_communities=joined_communities(current_user.get_id()),
|
||||
# joined_communities=joined_communities(current_user.get_id()),
|
||||
menu_topics=menu_topics(), site=g.site)
|
||||
|
||||
|
||||
|
@ -272,11 +272,12 @@ def list_local_communities():
|
|||
next_url=next_url, prev_url=prev_url, current_user=current_user,
|
||||
topics=topics, languages=languages, topic_id=topic_id, language_id=language_id, sort_by=sort_by,
|
||||
low_bandwidth=low_bandwidth, moderating_communities=moderating_communities(current_user.get_id()),
|
||||
joined_communities=joined_communities(current_user.get_id()),
|
||||
# joined_communities=joined_communities(current_user.get_id()),
|
||||
menu_topics=menu_topics(), site=g.site)
|
||||
|
||||
|
||||
@bp.route('/communities/subscribed', methods=['GET'])
|
||||
@login_required
|
||||
def list_subscribed_communities():
|
||||
verification_warning()
|
||||
search_param = request.args.get('search', '')
|
||||
|
@ -287,8 +288,16 @@ def list_subscribed_communities():
|
|||
sort_by = request.args.get('sort_by', 'post_reply_count desc')
|
||||
topics = Topic.query.order_by(Topic.name).all()
|
||||
languages = Language.query.order_by(Language.name).all()
|
||||
if current_user.is_authenticated:
|
||||
communities = Community.query.filter_by(banned=False).join(CommunityMember).filter(CommunityMember.user_id == current_user.id)
|
||||
# get all the communities
|
||||
all_communities = Community.query.filter_by(banned=False)
|
||||
# get the user's joined communities
|
||||
user_joined_communities = joined_communities(current_user.id)
|
||||
# get the joined community ids list
|
||||
joined_ids = []
|
||||
for jc in user_joined_communities:
|
||||
joined_ids.append(jc.id)
|
||||
# filter down to just the joined communities
|
||||
communities = all_communities.filter(Community.id.in_(joined_ids))
|
||||
|
||||
if search_param == '':
|
||||
pass
|
||||
|
@ -313,18 +322,12 @@ def list_subscribed_communities():
|
|||
next_url = url_for('main.list_subscribed_communities', page=communities.next_num, sort_by=sort_by, language_id=language_id) if communities.has_next else None
|
||||
prev_url = url_for('main.list_subscribed_communities', page=communities.prev_num, sort_by=sort_by, language_id=language_id) if communities.has_prev and page != 1 else None
|
||||
|
||||
else:
|
||||
communities = []
|
||||
next_url = None
|
||||
prev_url = None
|
||||
|
||||
return render_template('list_communities.html', communities=communities, search=search_param, title=_('Joined Communities'),
|
||||
SUBSCRIPTION_PENDING=SUBSCRIPTION_PENDING, SUBSCRIPTION_MEMBER=SUBSCRIPTION_MEMBER,
|
||||
SUBSCRIPTION_OWNER=SUBSCRIPTION_OWNER, SUBSCRIPTION_MODERATOR=SUBSCRIPTION_MODERATOR,
|
||||
next_url=next_url, prev_url=prev_url, current_user=current_user,
|
||||
topics=topics, languages=languages, topic_id=topic_id, language_id=language_id, sort_by=sort_by,
|
||||
low_bandwidth=low_bandwidth, moderating_communities=moderating_communities(current_user.get_id()),
|
||||
joined_communities=joined_communities(current_user.get_id()),
|
||||
menu_topics=menu_topics(), site=g.site)
|
||||
|
||||
|
||||
|
@ -339,7 +342,6 @@ def list_not_subscribed_communities():
|
|||
sort_by = request.args.get('sort_by', 'post_reply_count desc')
|
||||
topics = Topic.query.order_by(Topic.name).all()
|
||||
languages = Language.query.order_by(Language.name).all()
|
||||
if current_user.is_authenticated:
|
||||
# get all communities
|
||||
all_communities = Community.query.filter_by(banned=False)
|
||||
# get the user's joined communities
|
||||
|
@ -378,11 +380,6 @@ def list_not_subscribed_communities():
|
|||
next_url = url_for('main.list_not_subscribed_communities', page=communities.next_num, sort_by=sort_by, language_id=language_id) if communities.has_next else None
|
||||
prev_url = url_for('main.list_not_subscribed_communities', page=communities.prev_num, sort_by=sort_by, language_id=language_id) if communities.has_prev and page != 1 else None
|
||||
|
||||
else:
|
||||
communities = []
|
||||
next_url = None
|
||||
prev_url = None
|
||||
|
||||
return render_template('list_communities.html', communities=communities, search=search_param, title=_('Not Joined Communities'),
|
||||
SUBSCRIPTION_PENDING=SUBSCRIPTION_PENDING, SUBSCRIPTION_MEMBER=SUBSCRIPTION_MEMBER,
|
||||
SUBSCRIPTION_OWNER=SUBSCRIPTION_OWNER, SUBSCRIPTION_MODERATOR=SUBSCRIPTION_MODERATOR,
|
||||
|
|
Loading…
Add table
Reference in a new issue