From 3118c4faf912213683061c76248d70adcee78340 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Sun, 22 Feb 2004 00:18:18 +0000 Subject: Implement a 'draft' article category for submitted but unpublished stuff. If you create an entry with year=='forthcoming', it will appear in a year called "Forthcoming", in the CSS class 'draftEntry'. Add draft-tor-design-2004 as an example. svn:r88 --- BibTeX.py | 11 ++++++++++- css/pubs.css | 18 ++++++++++++++++++ writeHTML.py | 7 +++++-- 3 files changed, 33 insertions(+), 3 deletions(-) diff --git a/BibTeX.py b/BibTeX.py index 26c55df..af414dd 100644 --- a/BibTeX.py +++ b/BibTeX.py @@ -210,6 +210,11 @@ def sortEntriesByDate(entries): i = 0 for ent in entries: i += 1 + if (ent.get('month') == "forthcoming" or + ent.get('year') == "forthcoming"): + tmp.append((20000*13, i, ent)) + continue + try: mon = MONTHS.index(ent.get("month")) except ValueError: @@ -222,6 +227,7 @@ def sortEntriesByDate(entries): print "ERROR: No year field in %s"%ent.key date = 10000*13 except ValueError: + print "ERROR: Bad year field in %s"%ent.key date = 10000*13 tmp.append((date, i, ent)) tmp.sort() @@ -448,8 +454,11 @@ class BibTeXEntry: def to_html(self): """Return the HTML for this entry.""" imp = self.isImportant() + draft = self.get('year') == 'forthcoming' if imp: res = ["
  • " ] + elif draft: + res = ["

  • " ] else: res = ["

  • %s"%htmlize( self['www_remarks'])) - if imp: + if imp or draft: res.append("") res.append("

  • \n\n") diff --git a/css/pubs.css b/css/pubs.css index 07d7a37..3bb820f 100644 --- a/css/pubs.css +++ b/css/pubs.css @@ -80,6 +80,24 @@ P.impEntry { margin-bottom: 0; } +DIV.draftEntry { + /* + border-width: 1px; + border-color: black; + border-style: solid; + padding: 0.3em; + margin-top: 0.7em; + margin-bottom: 0; +*/ +} + +P.draftEntry { + color: #555; + padding: 0; + margin-top: 0; + margin-bottom: 0; +} + TABLE.sidebar { border-width: 2px; border-color: black; diff --git a/writeHTML.py b/writeHTML.py index 543857a..9f6a0fa 100644 --- a/writeHTML.py +++ b/writeHTML.py @@ -102,8 +102,11 @@ f.close() entries = BibTeX.sortEntriesByDate(bib.entries) entries = BibTeX.splitSortedEntriesBy(entries, 'year') -if entries[-1][0].startswith(""): - entries[-1] = ("Unknown", entries[-1][1]) +for idx in -1, -2: + if entries[idx][0].startswith(""): + entries[idx] = ("Unknown", entries[idx][1]) + elif entries[idx][0].startswith("forthcoming"): + entries[idx] = ("Forthcoming", entries[idx][1]) sections = [ ent[0] for ent in entries ] first_year = int(entries[0][1][0]['year']) -- cgit v1.2.3-70-g09d2