Beispiel #1
0
 def _crowdsource_base(self, foias, user, post, split):
     """Helper function for both crowdsource actions"""
     foias = foias.prefetch_related('communications__files')
     foias = [f for f in foias if f.has_perm(user, 'view')]
     form = CrowdsourceChoiceForm(post, user=user)
     if form.is_valid():
         crowdsource = form.cleaned_data['crowdsource']
         if crowdsource is None:
             return 'No crowdsource selected'
         for foia in foias:
             for comm in foia.communications.all():
                 for file_ in comm.files.all():
                     if file_.doc_id and split:
                         datum_per_page.delay(
                             crowdsource.pk,
                             file_.doc_id,
                             {},
                         )
                     elif file_.doc_id and not split:
                         crowdsource.data.create(
                             url=
                             'https://www.documentcloud.org/documents/{}.html'.
                             format(file_.doc_id)
                         )
     return 'Files added to assignment'
Beispiel #2
0
 def _crowdsource(self, foias, user, post):
     """Extend the embargo on the selected requests"""
     foias = foias.prefetch_related('communications__files')
     foias = [f for f in foias if f.has_perm(user, 'view')]
     form = CrowdsourceChoiceForm(post, user=user)
     if form.is_valid():
         crowdsource = form.cleaned_data['crowdsource']
         if crowdsource is None:
             return 'No crowdsource selected'
         for foia in foias:
             for comm in foia.communications.all():
                 for file_ in comm.files.all():
                     if file_.doc_id:
                         crowdsource.data.create(
                             url=
                             'https://www.documentcloud.org/documents/{}.html'
                             .format(file_.doc_id))
     return 'Files added to assignment'
Beispiel #3
0
 def _crowdsource_base(self, foias, user, post, split):
     """Helper function for both crowdsource actions"""
     foias = foias.prefetch_related("communications__files")
     foias = [f for f in foias if f.has_perm(user, "view")]
     form = CrowdsourceChoiceForm(post, user=user)
     if form.is_valid():
         crowdsource = form.cleaned_data["crowdsource"]
         if crowdsource is None:
             return "No crowdsource selected"
         for foia in foias:
             for comm in foia.communications.all():
                 for file_ in comm.files.all():
                     if file_.doc_id and split:
                         datum_per_page.delay(crowdsource.pk, file_.doc_id,
                                              {})
                     elif file_.doc_id and not split:
                         crowdsource.data.create(
                             url="https://beta.documentcloud.org/documents/"
                             f"{file_.doc_id}/")
     return "Files added to assignment"