r5062: return from san diego
[kmrcl.git] / web-utils.lisp
index 0f41c1275fec17e8b58ffcf9fc1ceff9afeaffd5..1614fe4fa33703501a03bdf859596db8b5474159 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Apr 2000
 ;;;;
-;;;; $Id: web-utils.lisp,v 1.9 2002/10/18 05:14:49 kevin Exp $
+;;;; $Id: web-utils.lisp,v 1.10 2003/06/06 21:59:30 kevin Exp $
 ;;;;
 ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
@@ -16,8 +16,7 @@
 ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
 ;;;; *************************************************************************
 
-(in-package :kmrcl)
-(declaim (optimize (speed 3) (safety 1) (compilation-speed 0) (debug 3)))
+(in-package #:kmrcl)
 
 
 ;;; HTML/XML constants
                       amp (car var) "=" (cadr var))))
               (rest vars))))
        ""))))
+
+(defun make-url-new (page-name &key (base-dir *base-url*) (format :html)
+                              (vars nil))
+  (let ((amp (ecase format
+              (:html "&")
+              ((:xml :ie-xml) "&"))))
+    (concatenate 'string 
+        base-dir page-name
+        (if vars
+            (let ((first-var (first vars)))
+              (concatenate 'string 
+                           "?"  (car first-var) "=" (cadr first-var)
+                           (mapcar-append-string 
+                            #'(lambda (var) 
+                                (when (and (car var) (cadr var))
+                                  (concatenate 'string 
+                                               amp (car var) "=" (cadr var))))
+                            (rest vars))))
+          ""))))