summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2007-05-31 10:07:20 +0200
committerMatthias Benkard <code@mail.matthias.benkard.de>2007-05-31 10:07:20 +0200
commit8498424e681ba0501cb3bff2bfa250f4fb9146cd (patch)
treea50ea18536efd667393919caa8e3f0d5e0946157
parente8ad5b3faa95039a42ec59978b252270aaeb7815 (diff)
Strict Atom 1.0, XHTML 1.0 and CSS 3.0 conformance.
darcs-hash:b3d7feb7984611e968bf3cea716535105dc3de7d
-rw-r--r--journal.css5
-rwxr-xr-xjournal.lisp78
2 files changed, 50 insertions, 33 deletions
diff --git a/journal.css b/journal.css
index f0ab48b..2446ff2 100644
--- a/journal.css
+++ b/journal.css
@@ -1,3 +1,5 @@
+/* CSS version 3.0 */
+
#MAIN-TITLE {
font-stretch: wider;
font-variant: small-caps;
@@ -18,13 +20,14 @@
.JOURNAL-ENTRY-HEADER {
font-size: x-small;
color: #444;
+ background-color: inherit;
font-weight: lighter;
text-align: left;
}
div.JOURNAL-ENTRY > h2 {
border-bottom: 2px solid #000;
- //font-variant: small-caps;
+ /* font-variant: small-caps; */
}
.JOURNAL-ENTRY > h2 > a {
diff --git a/journal.lisp b/journal.lisp
index f99aae4..d4b867d 100755
--- a/journal.lisp
+++ b/journal.lisp
@@ -354,7 +354,7 @@ after another in any arbitrary order."
:initial-value 0)))
:id "88ad4730-90bc-4cc1-9e1f-d4cdb9ce177c")
(with-tag ("subtitle")
- (xml-as-is "Geschwafel eines libert&auml;rsozialistischen Geeks"))
+ (xml-as-is "Geschwafel eines libert&#xE4;rsozialistischen Geeks"))
(with-tag ("author")
(emit-simple-tags :name "Matthias Benkard"))
(with-tag ("link" '(("rel" "alternate")
@@ -368,7 +368,8 @@ after another in any arbitrary order."
journal-entry
(with-tag ("entry")
(emit-simple-tags :title title
- :id (uuid-of journal-entry)
+ :id (format nil "~(~A~)"
+ (uuid-of journal-entry))
:updated (atom-time (or last-modification date))
:published (atom-time date))
(with-tag ("link" `(("rel" "alternate")
@@ -413,29 +414,31 @@ after another in any arbitrary order."
(<:div :class :journal-entry-footer
(<:form :class :journal-entry-delete-button-form
:style "display: inline;"
- :method "DELETE"
+ :method "post"
:action "journal.cgi"
- (<:input :type "hidden"
- :name "action"
- :value "delete")
- (<:input :type "hidden"
- :name "post"
- :value (prin1-to-string (id-of journal-entry)))
- (<:button :type "submit"
- (<:as-is "L&ouml;schen")))
+ (<:div :style "display: inline;"
+ (<:input :type "hidden"
+ :name "action"
+ :value "delete")
+ (<:input :type "hidden"
+ :name "post"
+ :value (prin1-to-string (id-of journal-entry)))
+ (<:button :type "submit"
+ (<:as-is "L&ouml;schen"))))
" | "
(<:form :class :journal-entry-delete-button-form
:style "display: inline;"
- :method "GET"
+ :method "get"
:action "journal.cgi"
- (<:input :type "hidden"
- :name "action"
- :value "edit")
- (<:input :type "hidden"
- :name "post"
- :value (prin1-to-string (id-of journal-entry)))
- (<:button :type "submit"
- (<:as-is "Bearbeiten")))
+ (<:div :style "display: inline;"
+ (<:input :type "hidden"
+ :name "action"
+ :value "edit")
+ (<:input :type "hidden"
+ :name "post"
+ :value (prin1-to-string (id-of journal-entry)))
+ (<:button :type "submit"
+ (<:as-is "Bearbeiten"))))
#+nil
(<:a :href (format nil
"journal.cgi?action=edit&post=~D"
@@ -473,14 +476,15 @@ after another in any arbitrary order."
ver&ouml;ffentlicht werden und nur von Matthias eingesehen
werden k&ouml;nnen."))
(<:form :action "journal.cgi"
- :method "POST"
+ :method "post"
:accept-charset "UTF-8"
- (<:input :type "hidden"
- :name "post"
- :value (prin1-to-string (id-of journal-entry)))
- (<:input :type "hidden"
- :name "action"
- :value "post-comment")
+ (<:div :style "display: hidden"
+ (<:input :type "hidden"
+ :name "post"
+ :value (prin1-to-string (id-of journal-entry)))
+ (<:input :type "hidden"
+ :name "action"
+ :value "post-comment"))
(<:div :style "display: table"
(loop for (name . desc) in '(("author" . "Name (n&ouml;tig)")
("email" . "E-Mail")
@@ -504,15 +508,24 @@ after another in any arbitrary order."
:id "comment-body"
:rows 10
:cols 40))))
- (<:button :type "submit"
- (<:as-is "Ver&ouml;ffentlichen"))))))
+ (<:div
+ (<:button :type "submit"
+ (<:as-is "Ver&ouml;ffentlichen")))))))
+
+
+(yaclml:deftag <xhtml (&attribute dir lang xmlns (prologue t) &body body)
+ (when prologue
+ (emit-princ "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"))
+ (emit-open-tag "html" `(("dir" . ,dir) ("lang" . ,lang) ("xmlns" . ,xmlns)))
+ (emit-body body)
+ (emit-close-tag "html"))
(defun show-web-journal ()
(http-add-header "Content-type" "text/html; charset=UTF-8")
(http-send-headers "text/html; charset=UTF-8")
- (<:html
+ (<xhtml :xmlns "http://www.w3.org/1999/xhtml"
(<:head
(<:title
(<:as-html
@@ -545,8 +558,9 @@ after another in any arbitrary order."
#'>
:key #'date-of)))
((:view :post-comment)
- (show-journal-entry (find-entry *post-number*) :comments-p t)))))
- (<:div :id :navigation)
+ (show-journal-entry (find-entry *post-number*) :comments-p t))))
+ (<:div :id :navigation))
+
#+debug
(loop for (x . y) in `(("Action" . ,*action*)