Revision: 3620 Author: ksprotte URL: http://bknr.net/trac/changeset/3620
kml-upload-handler allows also for downloading the kml-root file U trunk/projects/bos/web/kml-handlers.lisp
Modified: trunk/projects/bos/web/kml-handlers.lisp =================================================================== --- trunk/projects/bos/web/kml-handlers.lisp 2008-07-24 13:51:29 UTC (rev 3619) +++ trunk/projects/bos/web/kml-handlers.lisp 2008-07-24 14:43:28 UTC (rev 3620) @@ -55,9 +55,20 @@ line column))))))))) ;; we want this after the processing (:p (:format "last-change: ~A" - (format-date-time (store-object-last-change kml-root-data 0))))))) + (format-date-time (store-object-last-change kml-root-data 0))) + (cmslink (format nil "/kml-upload?lang=~A&action=download" language) + "download current version"))))) (submit-button "upload" "upload"))))))
+(defmethod handle-form ((handler kml-upload-handler) (action (eql :download))) + (with-query-params (lang) + (setf (hunchentoot:header-out :content-type) + "application/binary" + (hunchentoot:header-out :content-disposition) + (format nil "attachment; filename=kml-root-~A.kml" lang)) + (let ((kml-root-data (kml-root-data-with-language lang))) + (kml-string kml-root-data)))) + ;;; kml-format utils (defun kml-format-points (points stream) (mapc #'(lambda (point) (kml-format-point point stream)) points))