Merge remote-tracking branch 'origin/main'

This commit is contained in:
rimu 2024-06-10 14:16:34 +08:00
commit a0f9f10a3a
3 changed files with 17 additions and 6 deletions

View file

@ -1976,9 +1976,10 @@ def update_post_from_activity(post: Post, request_json: dict):
db.session.execute(text('DELETE FROM "post_tag" WHERE post_id = :post_id'), {'post_id': post.id})
for json_tag in request_json['object']['tag']:
if json_tag['type'] == 'Hashtag':
hashtag = find_hashtag_or_create(json_tag['name'])
if hashtag:
post.tags.append(hashtag)
if json_tag['name'][1:].lower() != post.community.name.lower(): # Lemmy adds the community slug as a hashtag on every post in the community, which we want to ignore
hashtag = find_hashtag_or_create(json_tag['name'])
if hashtag:
post.tags.append(hashtag)
post.comments_enabled = request_json['object']['commentsEnabled'] if 'commentsEnabled' in request_json['object'] else True
post.edited_at = utcnow()
db.session.commit()

View file

@ -179,11 +179,15 @@ def admin_activities():
db.session.commit()
page = request.args.get('page', 1, type=int)
result_filter = request.args.get('result', type=str)
activities = ActivityPubLog.query.order_by(desc(ActivityPubLog.created_at)).paginate(page=page, per_page=1000, error_out=False)
if result_filter:
activities = ActivityPubLog.query.order_by(desc(ActivityPubLog.created_at)).filter(ActivityPubLog.result == result_filter).paginate(page=page, per_page=1000, error_out=False)
else:
activities = ActivityPubLog.query.order_by(desc(ActivityPubLog.created_at)).paginate(page=page, per_page=1000, error_out=False)
next_url = url_for('admin.admin_activities', page=activities.next_num) if activities.has_next else None
prev_url = url_for('admin.admin_activities', page=activities.prev_num) if activities.has_prev and page != 1 else None
next_url = url_for('admin.admin_activities', page=activities.next_num, result=result_filter) if activities.has_next else None
prev_url = url_for('admin.admin_activities', page=activities.prev_num, result=result_filter) if activities.has_prev and page != 1 else None
return render_template('admin/activities.html', title=_('ActivityPub Log'), next_url=next_url, prev_url=prev_url,
activities=activities,

View file

@ -10,6 +10,12 @@
<div class="row">
<div class="col">
<h1>{{ _('Activities') }}</h1>
Result Filter:
<a href="{{ url_for('admin.admin_activities') }}">All</a> |
<a href="{{ url_for('admin.admin_activities', result='failure') }}">Failure</a> |
<a href="{{ url_for('admin.admin_activities', result='success') }}">Success</a> |
<a href="{{ url_for('admin.admin_activities', result='ignored') }}">Ignored</a> |
<a href="{{ url_for('admin.admin_activities', result='processing') }}">Processing</a>
<table class="table">
<tr>
<th>When</th>