Update of /project/lisppaste/cvsroot/lisppaste2
In directory common-lisp.net:/tmp/cvs-serv21802
Modified Files:
web-server.lisp
Log Message:
cleanup, formatting change per Xach
Date: Sun Mar 7 00:11:08 2004
Author: bmastenbrook
Index: lisppaste2/web-server.lisp
diff -u lisppaste2/web-server.lisp:1.31 lisppaste2/web-server.lisp:1.32
--- lisppaste2/web-server.lisp:1.31 Sat Mar 6 23:44:56 2004
+++ lisppaste2/web-server.lisp Sun Mar 7 00:11:08 2004
@@ -1,4 +1,4 @@
-;;;; $Id: web-server.lisp,v 1.31 2004/03/07 04:44:56 bmastenbrook Exp $
+;;;; $Id: web-server.lisp,v 1.32 2004/03/07 05:11:08 bmastenbrook Exp $
;;;; $Source: /project/lisppaste/cvsroot/lisppaste2/web-server.lisp,v $
;;;; See the LICENSE file for licensing information.
@@ -231,6 +231,27 @@
(if (< l1 l2) nil
(string= (subseq str (- l1 l2) l1) end))))
+(defun format-paste (paste this-url paste-number &optional annotation)
+ `((table :width "100%" :cellpadding 2)
+ (tr ((td :align "left" :width "0%" :nowrap "nowrap")
+ ,(if annotation
+ "Annotation number "
+ "Paste number ") ,paste-number ": ")
+ ((td :align "left" :width "100%") (b ,(encode-for-pre (paste-title paste)))))
+ (tr ((td :align "left" :nowrap "nowrap") "Pasted by: ")
+ ((td :align "left" :width "100%") ,(encode-for-pre (paste-user paste))))
+ (tr (td)
+ ((td :align "left" :width "100%") ,(time-delta (paste-universal-time paste))))
+ ,@(if (not annotation)
+ `((tr (td)
+ ((td :align "left" :width "100%") ,(encode-for-pre (paste-channel paste))
+ " | "
+ ((a :href ,(irc-log-link (paste-universal-time paste) (paste-channel paste))) "Context in IRC logs")))))
+ (tr ((td :align "left" :valign "top" :nowrap "nowrap") "Paste contents:")
+ ((td :width "100%") ((a :href ,(concatenate 'string this-url "/raw")) "(raw source)")))
+ (tr (td (p)))
+ (tr ((td :bgcolor "#F4F4F4" :colspan 2 :width "100%") (tt ,(encode-for-tt (paste-contents paste)))))))
+
(defmethod araneida:handle-request-response ((handler display-paste-handler) method request)
; XXX request-unhandled-part will be exported in 0.81
(let* ((paste-number (parse-integer
@@ -266,48 +287,16 @@
(title "Paste number " ,paste-number)
,(rss-link-header))
(body
- ((table :width "100%" :cellpadding 2)
- (tr ((td :align "left" :width "0%" :nowrap "nowrap") "Paste number " ,paste-number ": ")
- ((td :align "left" :width "100%") (b ,(encode-for-pre (paste-title paste)))))
- (tr ((td :align "left" :nowrap "nowrap") "Pasted by: ")
- ((td :align "left" :width "100%") ,(encode-for-pre (paste-user paste))))
- (tr (td)
- ((td :align "left" :width "100%") ,(time-delta (paste-universal-time paste))))
- (tr (td)
- ((td :align "left" :width "100%") ,(encode-for-pre (paste-channel paste))
- " | "
- ((a :href ,(irc-log-link (paste-universal-time paste) (paste-channel paste))) "Context in IRC logs")))
- (tr ((td :align "left" :valign "top" :nowrap "nowrap") "Paste contents:")
- ((td :width "100%") ((a :href ,(concatenate 'string (araneida:urlstring (araneida:request-url request)) "/raw")) "(raw source)")))
- (tr (td (p)))
- (tr ((td :bgcolor "#F4F4F4" :colspan 2 :width "100%") (tt ,(encode-for-tt (paste-contents paste)))))
- ,@(if (paste-annotations paste)
- `((tr (td (p)) (td))
- (tr ((th :align "left" :colspan 2) "Annotations for this paste: "))
- ,@(reduce #'append (nreverse
- (mapcar #'(lambda (a)
- `((tr (td (p)) (td))
- (tr
- (td ((a :name ,(prin1-to-string (paste-number a))) "Title:"))
- ((td :align "left") ,(encode-for-pre (paste-title a))
- " | "
- ((a :href ,(irc-log-link (paste-universal-time paste) (paste-channel paste))) "Context in IRC logs")))
- (tr
- (td "By:")
- ((td :align "left") ,(encode-for-pre (paste-user a))))
- (tr
- (td)
- ((td :align "left") ,(time-delta (paste-universal-time a))))
- (tr
- (td)
- ((td :align "left") ((a :href ,(format nil "~A,~A/raw" (araneida:urlstring (araneida:request-url request)) (paste-number a))) "(raw source)")))
- (tr
- ((td :valign "top" :nowrap "nowrap") "Contents:")
- ((td :bgcolor "#F4F4F4" :width "100%") (tt ,(encode-for-tt (paste-contents a)))))))
- (paste-annotations paste)))))
- `((tr (td (p)) (td))
- (tr ((td :align "left" :colspan 2 :nowrap "nowrap") "This paste has no annotations.")))))
- (p)
+ ,(format-paste paste (araneida:urlstring (araneida:request-url request)) paste-number)
+ ,(if (paste-annotations paste)
+ `(p
+ "Annotations for this paste: " (hr)
+ ,@(nreverse
+ (mapcar #'(lambda (a)
+ (format-paste a
+ (format nil "~A,~A" (araneida:urlstring (araneida:request-url request)) (paste-number a)) (paste-number a) t))
+ (paste-annotations paste))))
+ `(p "This paste has no annotations."))
((form :method post :action ,(araneida:urlstring *new-paste-url*))
((input :type hidden :name "annotate" :value ,(prin1-to-string (paste-number paste))))
(center ((input :type submit :value "Annotate this paste"))))