django-transcribe 0.8.1__py3-none-any.whl → 0.8.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-transcribe
3
- Version: 0.8.1
3
+ Version: 0.8.3
4
4
  Summary: crowd source transcription
5
5
  Home-page: https://gitlab.com/byuhbll/lib/python/django-transcribe
6
6
  Author: BYU Library Software Engineering
@@ -1,4 +1,4 @@
1
- transcribe/__init__.py,sha256=Wlac0EHC6fTm2qG5Gt-4V9wCXo3iB5vANkIpPzbaCP8,78
1
+ transcribe/__init__.py,sha256=GG9zbcmOxFR1w7TGtEQnVmsge0xeeD2KLShq4CfTm_I,78
2
2
  transcribe/admin.py,sha256=qPLL0XNzK0abIRBVRtjQq8SaEK2gzb_yyshafbxk9B4,6766
3
3
  transcribe/api.py,sha256=2m_y44ilQh87CWksHHqiE4A14javR8omlXEXm65lmC4,74
4
4
  transcribe/apps.py,sha256=XUdPQkCjpqWAKDCIaE6Mh8Q4xN5upKv95MG1u2_5pig,246
@@ -6,7 +6,7 @@ transcribe/diff_match_patch.py,sha256=HZC5DNab5OVwbB4Zc7G17l1OHbBlH2g9-xOtT1zkQ1
6
6
  transcribe/filters.py,sha256=_ANh6XGDXgmD_wxQo5IPReQsv3_MDqThOwB06LKfbac,1264
7
7
  transcribe/forms.py,sha256=6j-MtheDtDeBo9B_hlKhkWkWkKVJsLrJIlSsZAlB7ic,5612
8
8
  transcribe/middleware.py,sha256=3SvvNmJMlVohD_4Liv1yT3hc_nudpvt2giAE7Wt9rx4,485
9
- transcribe/models.py,sha256=81kVU1Vl59TZKRjP6exaHqVTny_abaC13kMaStwpRhc,38907
9
+ transcribe/models.py,sha256=zdEGgQGji-xLfsG0cShOmYLGNRezGg6V_nFTrVcBoKc,38636
10
10
  transcribe/settings.py,sha256=TNRFJstZF9X3l5qZSzv3xcrEuPMmOQbB-59mqADn9Dk,569
11
11
  transcribe/signals.py,sha256=pvRSWobg__Jw5ZvlFBZZAw3rDk1dvVyiq8Ka2lBGeSY,1105
12
12
  transcribe/urls.py,sha256=xgTkOdeC1cWmQAMzAp-VRwvmwyEAfEabncGgHyZiAL0,2040
@@ -143,9 +143,9 @@ transcribe/views/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
143
143
  transcribe/views/mixins.py,sha256=QmFDhWb5VCEaGatLdbsTK72jiBG2OKrlncnz79FUmto,2727
144
144
  transcribe/views/reports.py,sha256=7YD5E6CPsIfWP8hG8IFTek29cM2T29NHuowAdlTAyBs,13408
145
145
  transcribe/views/web.py,sha256=WoVs-iwYc2hesuBxCmwfo-wza15C1fiMRY6S0TAdxQs,15213
146
- django_transcribe-0.8.1.dist-info/AUTHORS,sha256=rNmFConshTlNpyhcu4CKZSeQQMwuyVYXbeqXgRko-Yc,640
147
- django_transcribe-0.8.1.dist-info/LICENSE,sha256=I9xp13yeayqZikrv7rQrzsDWviTwy1R0phFlKtM1meg,1472
148
- django_transcribe-0.8.1.dist-info/METADATA,sha256=49TkmA4h3wWEzl7slqgCmElQ-A-0TJdjvFBSGMOxfQc,1021
149
- django_transcribe-0.8.1.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
150
- django_transcribe-0.8.1.dist-info/top_level.txt,sha256=NljSay7zO6czcjqjVmivw6VW58aXlYHVZQvnwmpy08g,11
151
- django_transcribe-0.8.1.dist-info/RECORD,,
146
+ django_transcribe-0.8.3.dist-info/AUTHORS,sha256=rNmFConshTlNpyhcu4CKZSeQQMwuyVYXbeqXgRko-Yc,640
147
+ django_transcribe-0.8.3.dist-info/LICENSE,sha256=I9xp13yeayqZikrv7rQrzsDWviTwy1R0phFlKtM1meg,1472
148
+ django_transcribe-0.8.3.dist-info/METADATA,sha256=hhc5aSovISD9xA6O8hWWmsZtxA0ZkrovTiPIcCQ3GJ4,1021
149
+ django_transcribe-0.8.3.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
150
+ django_transcribe-0.8.3.dist-info/top_level.txt,sha256=NljSay7zO6czcjqjVmivw6VW58aXlYHVZQvnwmpy08g,11
151
+ django_transcribe-0.8.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (74.1.2)
2
+ Generator: setuptools (75.3.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
transcribe/__init__.py CHANGED
@@ -1,2 +1,2 @@
1
1
  default_app_config = 'transcribe.apps.transcribeConfig'
2
- __version__ = '0.8.1'
2
+ __version__ = '0.8.3'
transcribe/models.py CHANGED
@@ -3,6 +3,7 @@ import logging
3
3
  import re
4
4
  from datetime import timedelta
5
5
  from os import path
6
+ from xml.sax.saxutils import escape
6
7
 
7
8
  from django.contrib.auth import get_user_model
8
9
  from django.db import models
@@ -557,28 +558,20 @@ class Project(TimeStampedModel):
557
558
 
558
559
  # in progress tasks that are recent
559
560
  expired_dt = timezone.now() - timedelta(days=settings.TASK_EXPIRE_DAYS)
560
- task_ids_already_being_reviewed = self.tasks.filter(
561
+ task_ids_being_reviewed_and_recent = self.tasks.filter(
561
562
  usertasks__status='in progress',
562
563
  usertasks__task_type='review',
563
564
  usertasks__modified__gte=expired_dt,
564
565
  ).values_list('id', flat=True)
565
566
 
566
- # first priority is to assign a task that is not already
567
- # in the process of being reviewed
567
+ # filter for tasks that are ready for review, not already skipped,
568
+ # and that haven't recently entered the review process
568
569
  task = (
569
570
  self.tasks.filter(id__in=task_ids_ready_for_review)
570
571
  .exclude(id__in=task_ids_already_skipped)
571
- .exclude(id__in=task_ids_already_being_reviewed)
572
+ .exclude(id__in=task_ids_being_reviewed_and_recent)
572
573
  .first()
573
574
  )
574
- if not task:
575
- # if there was no task available in our first priority
576
- # we will assign a task that is in the process of being reviewed
577
- task = (
578
- self.tasks.filter(id__in=task_ids_ready_for_review)
579
- .exclude(id__in=task_ids_already_skipped)
580
- .first()
581
- )
582
575
  return task
583
576
 
584
577
  @cached_property
@@ -639,7 +632,7 @@ class Project(TimeStampedModel):
639
632
  '<tei>',
640
633
  '<teiHeader>',
641
634
  '<!-- [ TEI Header information ] -->',
642
- self.title,
635
+ escape(self.title),
643
636
  '</teiHeader>',
644
637
  '<text>',
645
638
  '<front>',