summaryrefslogtreecommitdiff
path: root/main.lisp
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2007-09-30 00:40:05 +0200
committerMatthias Benkard <code@mail.matthias.benkard.de>2007-09-30 00:40:05 +0200
commit6392eaedc789a57cdddb123456ef1a0affb81713 (patch)
treea356d9b30c2c75948550b30dee227df1ac67615d /main.lisp
parent7f829dbfba7de43bbc2402b12ea476c63a2ef1f0 (diff)
A few minor bug fixes.
darcs-hash:e8acb95333d31014bed6cba528ee5c92e9aa20ef
Diffstat (limited to 'main.lisp')
-rw-r--r--main.lisp37
1 files changed, 20 insertions, 17 deletions
diff --git a/main.lisp b/main.lisp
index 7e22c96..d8ae683 100644
--- a/main.lisp
+++ b/main.lisp
@@ -28,18 +28,14 @@
(*debugging-p* (eq *site* :mst-plus))
(*query* #+clisp (mapcan #'(lambda (param)
(list (keywordify param)
- (ext:convert-string-from-bytes
- (ext:convert-string-to-bytes
- (http-query-parameter param)
- charset:iso-8859-1)
- charset:utf-8)))
+ (http-query-parameter param)))
(http-query-parameter-list))
#-clisp '())
(*http-env* (http-get-env-vars))
(*subpath-query* (subseq (gethash "REQUEST_URI" *http-env*)
- (length (if (eq *site* :mst-plus)
- (gethash "SCRIPT_NAME" *http-env*)
- "/journal"))))
+ (length (ecase *site*
+ (:mst-plus (gethash "SCRIPT_NAME" *http-env*))
+ (:nfs.net "/journal")))))
(*subpath-string* (subseq *subpath-query*
0
(or (position #\? *subpath-query*)
@@ -59,15 +55,22 @@
"/home/mulk/Dokumente/Projekte/Mulkblog/journal.cgi")))
(*script-dir* (make-pathname
:directory (pathname-directory *script-filename*)))
- (*data-dir* (if (eq *site* :mst-plus)
- *script-dir*
- #p"/home/protected/journal/"))
+ (*data-dir* (ecase *site*
+ (:mst-plus *script-dir*)
+ (:nfs.net #p"/home/protected/journal/")))
(*cache-dir* (merge-pathnames #p"cache/" *data-dir*))
- (database-file (merge-pathnames #p"journal.sqlite3" *data-dir*)))
+ (database-file (merge-pathnames #p"journal.sqlite3" *data-dir*))
+ (sqlite-library (merge-pathnames #p"libsqlite3.so"
+ (ecase *site*
+ (:mst-plus #p"/usr/lib/")
+ (:nfs.net #p"/usr/local/lib/")))))
+ (clsql:push-library-path *script-dir*)
+ (clsql:push-library-path #p"/usr/local/lib/")
+ (push *script-dir* clsql-sys:*foreign-library-search-paths*)
(clsql-uffi::load-uffi-foreign-library)
(uffi:load-foreign-library (merge-pathnames "clsql_uffi.so"
*script-dir*))
- (uffi:load-foreign-library #p"/usr/lib/libsqlite3.so")
+ (uffi:load-foreign-library sqlite-library)
(clsql:with-database (db (list (namestring database-file))
:database-type :sqlite3
:make-default t)
@@ -77,10 +80,10 @@
#+clisp
(defun journal-main ()
- (with-initialised-journal
- (let ((*random-state* (make-random-state t)))
- (ext:letf ((custom:*terminal-encoding* (ext:make-encoding
- :charset charset:utf-8)))
+ (ext:letf ((custom:*terminal-encoding* (ext:make-encoding
+ :charset charset:utf-8)))
+ (with-initialised-journal
+ (let ((*random-state* (make-random-state t)))
(case *action*
(:post-comment (with-transaction ()
(let* ((entry (find-entry *post-number*))