@@ -15,11 +15,8 @@ def manager(request):
1515 :param request: HttpRequest object
1616 :return: HttpReponse or HttpRedirect
1717 """
18- form = forms .DummyManagerForm ()
19-
2018 template = 'export/manager.html'
2119 context = {
22- 'form' : form ,
2320 }
2421
2522 return render (request , template , context )
@@ -56,12 +53,20 @@ def export_article(request, article_id, format='csv'):
5653 :param format: string, csv or html
5754 :return: HttpResponse or Http404
5855 """
59- article = get_object_or_404 (
60- models .Article ,
61- pk = article_id ,
62- journal = request .journal ,
63- stage = plugin_settings .STAGE ,
64- )
56+ in_stage = request .GET .get ('in_stage' , 'true' )
57+ if in_stage == 'true' :
58+ article = get_object_or_404 (
59+ models .Article ,
60+ pk = article_id ,
61+ journal = request .journal ,
62+ stage = plugin_settings .STAGE ,
63+ )
64+ else :
65+ article = get_object_or_404 (
66+ models .Article ,
67+ pk = article_id ,
68+ journal = request .journal ,
69+ )
6570 files = core_models .File .objects .filter (
6671 article_id = article .pk ,
6772 )
@@ -85,3 +90,23 @@ def export_article(request, article_id, format='csv'):
8590 return logic .export_html (request , article , files )
8691
8792 raise Http404
93+
94+
95+ @decorators .has_journal
96+ @decorators .editor_user_required
97+ def export_articles_all (request ):
98+ """
99+ A view that displays all articles in a journal and allows export.
100+ """
101+ articles = models .Article .objects .filter (
102+ journal = request .journal ,
103+ ).select_related (
104+ 'correspondence_author' ,
105+ )
106+
107+ template = 'export/articles_all.html'
108+ context = {
109+ 'articles_in_stage' : articles ,
110+ }
111+
112+ return render (request , template , context )
0 commit comments