summaryrefslogtreecommitdiffstats
path: root/org/madore/damlengine/TodoEntryTitleElement.java
diff options
context:
space:
mode:
authorDavid A. Madore <david+git@madore.org>2011-09-07 18:24:44 +0200
committerDavid A. Madore <david+git@madore.org>2011-09-07 18:24:44 +0200
commit5d04d7e32ab93c6b3c3ec7e3698f0a41b55fa4cb (patch)
tree58f3252da010cafffe63f896f526ae5f093f2a19 /org/madore/damlengine/TodoEntryTitleElement.java
parent457ce3fb7d0bd2198d1397912093cc1f99befe26 (diff)
downloaddamlengine-5d04d7e32ab93c6b3c3ec7e3698f0a41b55fa4cb.tar.gz
damlengine-5d04d7e32ab93c6b3c3ec7e3698f0a41b55fa4cb.tar.bz2
damlengine-5d04d7e32ab93c6b3c3ec7e3698f0a41b55fa4cb.zip
Also use HTML5 elements (article, header, footer) for weblog entries.
Diffstat (limited to 'org/madore/damlengine/TodoEntryTitleElement.java')
-rw-r--r--org/madore/damlengine/TodoEntryTitleElement.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/org/madore/damlengine/TodoEntryTitleElement.java b/org/madore/damlengine/TodoEntryTitleElement.java
index e5da837..6a17a24 100644
--- a/org/madore/damlengine/TodoEntryTitleElement.java
+++ b/org/madore/damlengine/TodoEntryTitleElement.java
@@ -1,6 +1,7 @@
package org.madore.damlengine;
import java.util.ArrayList;
+import java.util.regex.Pattern;
import org.w3c.dom.*;
public final class TodoEntryTitleElement extends TodoDefaultElement {
@@ -22,11 +23,19 @@ public final class TodoEntryTitleElement extends TodoDefaultElement {
@Override
public void handleNodeOnly() {
+ if ( ctx.ent == null )
+ throw new IllegalStateException("entry context not defined in entry title element");
Element h2 = ctx.doc.createElementNS(DamlEngine.XHTML_NS, "h2");
String explicitLang = LangHelper.getLangNorec(node);
if ( explicitLang != null )
LangHelper.setLangNorec(h2, explicitLang);
- node.getParentNode().replaceChild(h2, node);
+ ctx.ent.headerNode.appendChild(h2);
+ Node ws = node.getNextSibling();
+ if ( ws != null && ( ws.getNodeType() == Node.TEXT_NODE
+ || ws.getNodeType() == Node.CDATA_SECTION_NODE )
+ && Pattern.matches("^\\s*$",((CharacterData)ws).getData()) )
+ node.getParentNode().removeChild(ws);
+ node.getParentNode().removeChild(node);
h2.setAttributeNS(null, "class", "weblog-entry-title");
ArrayList<Node> childList = getChildList(this.node);
ArrayList<TodoElement> toProcess = new ArrayList<TodoElement>(childList.size());