Skip to content

Commit

Permalink
Fix study selection queryset filter
Browse files Browse the repository at this point in the history
- Filter only articles related to the review before applying bulk action
- Update correctly the status on the HTML after executing the bulk
  action
  • Loading branch information
vitorfs committed Aug 14, 2022
1 parent 6def472 commit 85baec1
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ $(function () {
case "unclassify":
$(".source-articles table tbody input[type=checkbox]:checked").each(function () {
var row = $(this).closest("tr");
$(row).attr("article-status", "A");
$(row).attr("article-status", "U");
$("span", row).replaceWith("<span class='label label-default'>Unclassified</span>");
});
break;
Expand All @@ -337,7 +337,7 @@ $(function () {
case "duplicated":
$(".source-articles table tbody input[type=checkbox]:checked").each(function () {
var row = $(this).closest("tr");
$(row).attr("article-status", "R");
$(row).attr("article-status", "D");
$("span", row).replaceWith("<span class='label label-warning'>Duplicated</span>");
});
break;
Expand Down
22 changes: 17 additions & 5 deletions parsifal/apps/reviews/conducting/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -924,31 +924,39 @@ def multiple_articles_action_remove(request):
article_ids = request.POST["article_ids"]
article_ids_list = article_ids.split("|")
if article_ids_list:
Article.objects.filter(pk__in=article_ids_list).delete()
review_id = request.POST["review-id"]
review = get_object_or_404(Review, pk=review_id)
review.article_set.filter(pk__in=article_ids_list).delete()
return HttpResponse()
except Exception:
return HttpResponseBadRequest()


@author_required
@login_required
def multiple_articles_action_unclassify(request):
try:
article_ids = request.POST["article_ids"]
article_ids_list = article_ids.split("|")
if article_ids_list:
Article.objects.filter(pk__in=article_ids_list).update(status=Article.UNCLASSIFIED)
review_id = request.POST["review-id"]
review = get_object_or_404(Review, pk=review_id)
review.article_set.filter(pk__in=article_ids_list).update(status=Article.UNCLASSIFIED)
return HttpResponse()
except Exception:
return HttpResponseBadRequest()


@author_required
@login_required
def multiple_articles_action_accept(request):
try:
article_ids = request.POST["article_ids"]
article_ids_list = article_ids.split("|")
if article_ids_list:
Article.objects.filter(pk__in=article_ids_list).update(status=Article.ACCEPTED)
review_id = request.POST["review-id"]
review = get_object_or_404(Review, pk=review_id)
review.article_set.filter(pk__in=article_ids_list).update(status=Article.ACCEPTED)
return HttpResponse()
except Exception:
return HttpResponseBadRequest()
Expand All @@ -961,7 +969,9 @@ def multiple_articles_action_reject(request):
article_ids = request.POST["article_ids"]
article_ids_list = article_ids.split("|")
if article_ids_list:
Article.objects.filter(pk__in=article_ids_list).update(status=Article.REJECTED)
review_id = request.POST["review-id"]
review = get_object_or_404(Review, pk=review_id)
review.article_set.filter(pk__in=article_ids_list).update(status=Article.REJECTED)
return HttpResponse()
except Exception:
return HttpResponseBadRequest()
Expand All @@ -974,7 +984,9 @@ def multiple_articles_action_duplicated(request):
article_ids = request.POST["article_ids"]
article_ids_list = article_ids.split("|")
if article_ids_list:
Article.objects.filter(pk__in=article_ids_list).update(status=Article.DUPLICATED)
review_id = request.POST["review-id"]
review = get_object_or_404(Review, pk=review_id)
review.article_set.filter(pk__in=article_ids_list).update(status=Article.DUPLICATED)
return HttpResponse()
except Exception:
return HttpResponseBadRequest()
Expand Down

0 comments on commit 85baec1

Please sign in to comment.