-
Notifications
You must be signed in to change notification settings - Fork 0
/
ini.lisp
66 lines (51 loc) · 2.06 KB
/
ini.lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
(in-package :dyb)
(setf *random-state* (make-random-state t))
(defclass dyb-acceptor (site-acceptor)
())
(defclass dyb-theme (widget-theme)
())
(defvar *dyb-theme* (make-instance 'dyb-theme))
(defvar *dx-acceptor*
(make-dx-site 'dyb-acceptor
:port 8090
:site-url "/dyb/"
:debug-errors-p t
:theme *dyb-theme*))
(defmacro define-easy-handler (description lambda-list &body body)
`(define-dx-handler *dx-acceptor* ,description ,lambda-list
,@body))
(defmacro defajax (name lambda-list &body body)
`(define-dx-ajax *dx-acceptor* ,name ,lambda-list
,@body))
(defmethod render-error-page ((acceptor dyb-acceptor) &key condition)
(let ((title (frmt "Error - ~a" (script-name*))))
(render (make-widget 'page :name "error" :title title)
:body
(with-html-string
(:div :class "error-description"
(:strong :style "color: red;"
"Error: ")
(esc (princ-to-string condition)))))))
(defmethod render-permission-denied-page ((acceptor dyb-acceptor) &key)
(let ((title (format nil "Access denied - ~a" (script-name*))))
(render (make-widget 'page :name "permission-error"
:title title)
:body
(with-html-string
(:div :class "permission-error"
(esc title))))))
(defmethod login-not-required :around ((access dyb-acceptor) script-name)
(or (equal script-name "/dyb/registration")
(call-next-method)))
;;;
(defparameter *installation* "Live Serve");;"Live Serve"
(defparameter *site-url* "http://dxw.co.za/")
(if (string-equal *installation* "Live Serve")
(setf *site-url* "http://dxw.co.za/")
(setf *site-url* "http://local.dataxware.co.za/"))
(defmethod handle-request :around ((acceptor dyb-acceptor) request)
(let ((script-name (script-name request)))
(if (alexandria:starts-with-subseq "/dyb/s/" script-name)
(shorten-url)
(call-next-method))))
(defparameter *log-deleted-objects* nil)