diff --git a/scipost_django/scipost/templates/scipost/_hx_contributor_comparison.html b/scipost_django/scipost/templates/scipost/_hx_contributor_comparison.html index 16f0951616b9496f8d3626d3e75315a23a4b6039..cf9e3caf5403fb827212be95b480f5b4ce27276a 100644 --- a/scipost_django/scipost/templates/scipost/_hx_contributor_comparison.html +++ b/scipost_django/scipost/templates/scipost/_hx_contributor_comparison.html @@ -14,20 +14,23 @@ <div class="row"> <div class="col-12"> + {% if contributor_to_merge.user.is_active and not contributor_to_merge_into.user.is_active %} <h3 class="text-danger"> Warning: the contributor to merge is active, while the one to merge into is not. Consider swapping the order with "Swap & Merge". </h3> - <div id="contributor-swap-merge-btn" - class="btn btn-warning me-2" - hx-post="{% url "scipost:_hx_contributor_merge" to_merge=contributor_to_merge.id to_merge_into=contributor_to_merge_into.id %}"> - Swap & Merge - </div> {% endif %} + <div id="contributor-merge-btn" - class="btn btn-primary" - hx-post="{% url "scipost:_hx_contributor_merge" to_merge=contributor_to_merge_into.id to_merge_into=contributor_to_merge.id %}"> + class="btn btn-primary me-3" + hx-post="{% url "scipost:_hx_contributor_merge" to_merge=contributor_to_merge.id to_merge_into=contributor_to_merge_into.id %}"> Merge </div> + + <div id="contributor-swap-merge-btn" + class="btn btn-secondary" + hx-post="{% url "scipost:_hx_contributor_merge" to_merge=contributor_to_merge_into.id to_merge_into=contributor_to_merge.id %}"> + Swap & Merge + </div> </div> </div> diff --git a/scipost_django/scipost/views.py b/scipost_django/scipost/views.py index b5f72a54844d76ce99f33e4da48df1901b67f34d..5ab19f51a5e37e5a6f242248224a9bda053a050b 100644 --- a/scipost_django/scipost/views.py +++ b/scipost_django/scipost/views.py @@ -1625,12 +1625,14 @@ def _hx_contributor_merge(request, to_merge: int, to_merge_into: int): to solve one person - multiple registrations issues. """ + post_data = { + **(request.POST or {}), + "to_merge": to_merge, + "to_merge_into": to_merge_into, + } + merge_form = ContributorMergeForm( - request.POST or None, - initial={ - "to_merge": to_merge, - "to_merge_into": to_merge_into, - }, + post_data, queryset=Contributor.objects.filter(id__in=[to_merge, to_merge_into]), )