diff options
author | David A. Madore <david+git@madore.org> | 2011-11-12 14:33:35 +0100 |
---|---|---|
committer | David A. Madore <david+git@madore.org> | 2011-11-12 14:33:35 +0100 |
commit | 07f2f3c30a6e0bc811e436925dfdfcf5befdecb7 (patch) | |
tree | 823deb363f8c7449a2028bc5171bf46d7f6218eb /org/madore/damlengine/TodoEntryElement.java | |
parent | 71dc0d53fcefea70ce978d305fba653cc2180a3b (diff) | |
download | damlengine-07f2f3c30a6e0bc811e436925dfdfcf5befdecb7.tar.gz damlengine-07f2f3c30a6e0bc811e436925dfdfcf5befdecb7.tar.bz2 damlengine-07f2f3c30a6e0bc811e436925dfdfcf5befdecb7.zip |
Entry single pages: handle permalinks gracefully, populate with attribute.
* A single page is generated from the single-page attribute on <entry>
element (stored in database as do_single_page).
* Permalink refers to the single page. Same from weblog index. Other
links are subject to debate (e.g., what about internal links? now we
link to single page when link has a supplement part, but this is
debatable).
Diffstat (limited to 'org/madore/damlengine/TodoEntryElement.java')
-rw-r--r-- | org/madore/damlengine/TodoEntryElement.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/org/madore/damlengine/TodoEntryElement.java b/org/madore/damlengine/TodoEntryElement.java index c42943c..712e121 100644 --- a/org/madore/damlengine/TodoEntryElement.java +++ b/org/madore/damlengine/TodoEntryElement.java @@ -46,6 +46,7 @@ public final class TodoEntryElement extends TodoDefaultElement { String entryDayStr = entryDateMatcher.group(3); String entryDowStr = node.getAttributeNS(null, "day_of_week"); String entryCatStr = node.getAttributeNS(null, "cat"); + String entryDoSinglePageStr = node.getAttributeNS(null, "single-page"); String entryCdateStr = node.getAttributeNS(null, "cdate"); ArrayList<String> entryCatList; if ( entryCatStr.equals("") ) { @@ -78,9 +79,16 @@ public final class TodoEntryElement extends TodoDefaultElement { header.appendChild(ctx.doc.createTextNode("\n")); Element permalink = ctx.doc.createElementNS(DamlEngine.XHTML_NS, "a"); - permalink.setAttributeNS(null, "href", - entryYearStr+"-"+entryMonthStr+".html" - +"#"+entryIdStr); + if ( entryDoSinglePageStr.equals("") ) + permalink.setAttributeNS(null, "href", + entryYearStr+"-"+entryMonthStr+".html" + +"#"+entryIdStr); + else + permalink.setAttributeNS(null, "href", + entryYearStr+"-"+entryMonthStr + +"-"+entryDayStr+"-"+entryDoSinglePageStr + +".html" + +"#"+entryIdStr); permalink.setAttributeNS(null, "rel", "bookmark"); Element time = ctx.doc.createElementNS(DamlEngine.XHTML_NS, "time"); permalink.appendChild(time); |