|
46 | 46 | import debug # pyflakes:ignore |
47 | 47 |
|
48 | 48 | from ietf.doc.models import ( Document, DocHistory, DocAlias, State, |
49 | | - LastCallDocEvent, IESG_SUBSTATE_TAGS ) |
| 49 | + LastCallDocEvent, NewRevisionDocEvent, IESG_SUBSTATE_TAGS ) |
50 | 50 | from ietf.doc.fields import select2_id_doc_name_json |
51 | 51 | from ietf.doc.utils import get_search_cache_key |
52 | 52 | from ietf.group.models import Group |
@@ -449,6 +449,22 @@ def drafts_in_iesg_process(request): |
449 | 449 | "title": title, |
450 | 450 | }) |
451 | 451 |
|
| 452 | +def recent_drafts(request, days=7): |
| 453 | + since = datetime.datetime.now()-datetime.timedelta(days=days) |
| 454 | + state = State.objects.get(type='draft', slug='active') |
| 455 | + events = NewRevisionDocEvent.objects.filter(time__gt=since) |
| 456 | + names = [ e.doc.name for e in events ] |
| 457 | + docs = Document.objects.filter(name__in=names, states=state) |
| 458 | + results, meta = prepare_document_table(request, docs, query={'sort':'-date', }, max_results=len(names)) |
| 459 | + pages = 0 |
| 460 | + for doc in results: |
| 461 | + pages += doc.pages |
| 462 | + |
| 463 | + return render(request, 'doc/recent_drafts.html', { |
| 464 | + 'docs':results, 'meta':meta, 'pages':pages, 'days': days, |
| 465 | + }) |
| 466 | + |
| 467 | + |
452 | 468 | def index_all_drafts(request): |
453 | 469 | # try to be efficient since this view returns a lot of data |
454 | 470 | categories = [] |
|
0 commit comments