Changeset 2493

Show
Ignore:
Timestamp:
02/14/08 13:23:14 (1 year ago)
Author:
ksprotte
Message:

ported hello-web for trunk-reorg

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/trunk-reorg/projects/hello-web/src/config.lisp

    r2045 r2493  
    44(defparameter *website-url* "http://hello-web.bknr.net") 
    55 
    6 (defparameter *root-directory* #p"home:bknr-svn/projects/hello-web/") 
     6(defparameter *root-directory* 
     7  (let ((system-path (asdf:component-pathname (asdf:find-system :hello-web)))) 
     8    (truename 
     9     (merge-pathnames (make-pathname :directory '(:relative :up) :defaults system-path) 
     10                      system-path)))) 
    711 
    812(defparameter *store-directory* (merge-pathnames #p"datastore/" *root-directory*)) 
     
    1115 
    1216(defparameter *webserver-port* 8080) 
     17(defvar *webserver* nil) 
  • branches/trunk-reorg/projects/hello-web/src/hello-web.asd

    r2153 r2493  
    1818 
    1919  :depends-on (:cl-interpol 
    20                :cl-ppcre 
    21                :aserve 
     20               :cl-ppcre                
    2221               :cxml 
    2322               :bknr-modules) 
  • branches/trunk-reorg/projects/hello-web/src/init.lisp

    r2045 r2493  
    11(in-package :hello-web) 
    22 
    3 (defun startup (
     3(defun startup (&key debug
    44  (when *store* 
    55    (close-store)) 
     6  ;; XXX hack hack hack 
     7  (mapcar #'cl-gd::load-foreign-library 
     8          '("/usr/lib/libcrypto.so" 
     9            "/usr/lib/libssl.so" 
     10            "/usr/local/lib/libgd.so" 
     11            "/home/hans/bknr-svn/thirdparty/cl-gd-0.5.6/cl-gd-glue.so")) 
     12  (setf *hunchentoot-default-external-format* (flex:make-external-format :utf-8 :eol-style :lf)) 
    613  (make-instance 'store 
    714                 :directory *store-directory* 
     
    1017                                                  :n-blobs-per-directory 1000))) 
    1118  (unless (find-user "anonymous") 
    12     (make-user "anonymous")            ; used for all anonymous sessions 
     19    (make-user "anonymous")          ; used for all anonymous sessions 
    1320    (make-user "admin" :password "admin" :full-name "Administrator" :flags '(:admin)) 
    14     (import-image "bknr-logo.png" :keywords '(:banner :bknr)) 
     21    (import-image (merge-pathnames #p"src/bknr-logo.png" hello-web.config:*root-directory*) 
     22                  :keywords '(:banner :bknr)) 
    1523    (make-rss-channel "default" "BKNR Hello Web" "default RSS channel of the BKNR hello web site" *website-url*)) 
    1624   
    17   (publish-hello-web)) 
     25  (publish-hello-web) 
     26  (setq hunchentoot:*catch-errors-p* (not debug)) 
     27  (when *webserver* 
     28    (hunchentoot:stop-server *webserver*)) 
     29  (setq *webserver* (hunchentoot:start-server :port *webserver-port*))) 
  • branches/trunk-reorg/projects/hello-web/src/packages.lisp

    r2417 r2493  
    77           #:*website-directory* 
    88           #:*webserver-port* 
    9            #:*store-directory*)) 
     9           #:*webserver* 
     10           #:*store-directory* 
     11           #:*root-directory*)) 
    1012 
    1113(defpackage :hello-web.tags 
    1214  (:use :cl 
    1315        :cl-user 
    14         :ext 
    1516        :bknr.web 
    1617        :xhtml-generator 
    1718        :hello-web.config) 
    18   (:shadowing-import-from :cl-interpol #:quote-meta-chars) 
    19   (:shadowing-import-from :acl-compat.mp #:process-kill #:process-wait) 
     19  (:shadowing-import-from :cl-interpol #:quote-meta-chars)   
    2020  (:export #:hello)) 
    2121 
     
    3232  (:use :cl 
    3333        :cl-user 
    34         :ext 
    3534        :cl-interpol 
    3635        :cl-ppcre 
  • branches/trunk-reorg/projects/hello-web/src/webserver.lisp

    r2045 r2493  
    88;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
    99 
    10 (defun publish-hello-web (&key (port *webserver-port*) (listeners 20)) 
    11  
     10(defun publish-hello-web () 
    1211  (make-instance 'website 
    1312                 :name "Hello Web CMS" 
    1413                 :handler-definitions `(("/hello-object" hello-object-handler) 
    1514                                        ("/" redirect-handler 
    16                                         :prefix "/" :to "/index") 
     15                                            :prefix "/" :to "/index") 
    1716                                        ("/rss" rss-handler) 
    1817                                        ("/" template-handler 
    19                                          :prefix "/" 
    20                                          :destination ,(namestring (merge-pathnames #p"templates/" *website-directory*)) 
    21                                          :command-packages ((:hello-web . :hello-web.tags) 
    22                                                             (:bknr . :bknr.web) 
    23                                                             (:menu . :bknr.site-menu))) 
     18                                             :prefix "/" 
     19                                             :destination ,(namestring (merge-pathnames #p"templates/" *website-directory*)) 
     20                                             :command-packages (("http://hello-web.bknr.net" . :hello-web.tags) 
     21                                                                ("http://bknr.net" . :bknr.web))) 
     22                                        images 
     23                                        user 
    2424                                        ("/static" directory-handler 
    25                                          :destination ,(unix-namestring (merge-pathnames #p"static/" *website-directory*)))) 
    26                  :modules '(images user) 
     25                                                   :destination ,(namestring (merge-pathnames #p"static/" *website-directory*))))               
    2726                 :admin-navigation '(("user" . "/user/") 
    2827                                     ("images" . "/edit-images") 
     
    3130                 :authorizer (make-instance 'bknr-authorizer) 
    3231                 :style-sheet-urls '("/static/styles.css") 
    33                  :javascript-urls '("/static/javascript.js")) 
     32                 :javascript-urls '("/static/javascript.js"))) 
    3433 
    35   (start :port port :listeners listeners))