Common Lisp Package: BKNR.WEB

README:

FUNCTION

Public

ALL-REQUEST-PARAMS

Return all non-empty request parameters - This includes all parameters encoded in the URL as well as those in the request body, either as urlencoded strings or as multipart body. If a multipart body is present in the request, any uploaded files are saved in a temporary file and noted in the request's plist. Uploaded files will be automatically deleted by the with-http-response macro after the request body has been executed.

BKNR-URL-PATH (HANDLER)

Returns the Path of the request under the handler prefix

CHOICE-SUBMENU (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

CHOICE-TITLE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

DATE-FIELD (NAME &KEY DATE (SHOW-TIME T))

Generate a date entry widget using HTML <select> elements.

EMIT-TAG-CHILD (N)

Function to be called by an application defined tags to emit a specific child, removing whitespace nodes first.

EMIT-TAG-CHILDREN

Function to be called by application defined tags to emit their children.

HOST (&OPTIONAL (REQUEST *REQUEST*))

Returns the 'Host' incoming http header value.

REDIRECT (TARGET &KEY (HOST (HOST *REQUEST*) HOST-PROVIDED-P) PORT (PROTOCOL (IF (SSL-P) HTTPS HTTP)) (ADD-SESSION-ID (NOT (OR HOST-PROVIDED-P (STARTS-WITH-SCHEME-P TARGET) (COOKIE-IN (SESSION-COOKIE-NAME *ACCEPTOR*))))) (CODE +HTTP-MOVED-TEMPORARILY+))

Redirects the browser to TARGET which should be a string. If TARGET is a full URL starting with a scheme, HOST, PORT and PROTOCOL are ignored. Otherwise, TARGET should denote the path part of a URL, PROTOCOL must be one of the keywords :HTTP or :HTTPS, and the URL to redirect to will be constructed from HOST, PORT, PROTOCOL, and TARGET. Adds a session ID if ADD-SESSION-ID is true. If CODE is a 3xx redirection code, it will be sent as status code.

REQUEST-UPLOADED-FILES

Return a list of UPLOAD structures describing the file uploads in the request.

TEXT-TO-HTML (STRING)

Perform simple text to HTML conversion. http urls are replaced by links, internal links to images become image tags.

UPLOAD-CONTENT-TYPE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

UPLOAD-NAME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

UPLOAD-ORIGINAL-FILENAME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

UPLOAD-PATHNAME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

Undocumented

ALL-WEB-SERVER-ERROR-EVENTS

BKNR-SESSION

BKNR-SESSION-USER

CHECKBOX-FIELD (NAME VALUE &KEY (CHECKED NIL))

SETFCHOICE-SUBMENU (NEW-VALUE INSTANCE)

SETFCHOICE-TITLE (NEW-VALUE INSTANCE)

EMIT-HTML (&REST FORMS)

EMIT-TEMPLATE-NODE (EXPANDER NODE)

ENCODE-URLENCODED (STRING)

ERROR-404

EXPAND-VARIABLES (STRING LOOKUP-VARIABLE)

GET-TEMPLATE-VAR (VAR)

SETFGET-TEMPLATE-VAR (NEWVAL VAR)

HTML-QUOTE (STRING)

HTTP-ERROR (RESPONSE MESSAGE)

KEYWORD-CHOOSE-DIALOG (KEYWORDS &KEY (SIZE 4) (NAME keyword) (CREATE NIL) (VALUES NIL) (EMPTY T))

KEYWORDS-FROM-QUERY-PARAM-LIST (PARAM &KEY (REMOVE-EMPTY T))

MAKE-CHOICE (&KEY ((TITLE DUM7) NIL) ((LINK DUM8) NIL) ((SUBMENU DUM9) NIL))

MAKE-WIKI-HREFS (STRING)

NEXT-DAYS-LIST (URL &KEY (START (GET-UNIVERSAL-TIME)) (COUNT 5))

PARSE-DATE-FIELD (NAME)

PARSE-URI (THING &KEY (CLASS 'URI) &AUX ESCAPE)

PARSE-URL

PREVIOUS-DAYS-LIST (URL &KEY (START (GET-UNIVERSAL-TIME)) (COUNT 5))

QUERY-PARAM (PARAM-NAME &KEY (GET T) (POST T) TYPE)

QUERY-PARAM-LIST (PARAM-NAME &KEY (GET T) (POST T))

QUERY-PARAMS (&KEY (GET T) (POST T))

REDIRECT-URI (URI)

REQUEST-UPLOADED-FILE (PARAMETER-NAME)

REQUEST-VARIABLE (VAR)

SETFREQUEST-VARIABLE (NEW-VALUE VAR)

RESET-RESULTS

SELECT-BOX (NAME OPTIONS &KEY (SIZE 1) DEFAULT)

SUBMIT-BUTTON (ACTION TEXT &KEY CONFIRM FORMCHECK)

TEXT-FIELD (NAME &KEY (SIZE 50) VALUE)

TEXTAREA-FIELD (NAME &KEY (COLS 60) (ROWS 15) VALUE)

UNPUBLISH

SETFUPLOAD-CONTENT-TYPE (NEW-VALUE INSTANCE)

SETFUPLOAD-NAME (NEW-VALUE INSTANCE)

SETFUPLOAD-ORIGINAL-FILENAME (NEW-VALUE INSTANCE)

SETFUPLOAD-PATHNAME (NEW-VALUE INSTANCE)

USER-ERROR (STR &REST ARGS)

WEBSITE-HOST

Private

BODY-STYLE (&KEY BACKGROUND-COLOR BACKGROUND-IMAGE)

Outputs the body style css definition Arguments: background-color (optional, background color for body css element) background-image (optional, background image for body css element, name of an internal image) Output: <style> element Example <bknr:body-style background-color="99CCCC" background-image="camuback_square_11" /> outputs: <style> body { background-image=url(/image/camuback_square_11; background-color=#99cccc; } </style>

EMIT-PARSED-TEMPLATE (EXPANDER PARSED-TEMPLATE)

Emit the given parsed template as XHML to *HTML-SINK*.

ENSURE-BKNR-SESSION

Ensure that the BKNR-SESSION session variable is set and that it belongs to the user that is specified in the request.

HS-AVERAGE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

HS-COUNT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

HS-FASTEST (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

HS-SLOWEST (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

PARSE-TEMPLATE (TEMPLATE-PATHNAME)

Parse the XML template in the file TEMPLATE-PATHNAME, return a PARSED-TEMPLATE structure.

PARSED-TEMPLATE-DOM (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

PARSED-TEMPLATE-LAST-CHANGE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

PARSED-TEMPLATE-NAMESPACE-ATTRS (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

PARSED-TEMPLATE-NSURI-ALIAS-MAP (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

QUOTE-META-CHARS (STRING &KEY (START 0) (END (LENGTH STRING)))

Quote, i.e. prefix with #\\, all non-word characters in STRING.

REQUEST-RELATIVE-PATHNAMES (HANDLER)

Return the relative pathnames for the current request as determined by DIRECTORY-HANDLER. Caches the list of validated relative pathnames in the aux-request-value 'request-relative-pathnames.

SESSION-FROM-REQUEST

Check whether the request has a valid session id in either the bknr-sessionid cookie or query parameter

SPLIT-PATH (PATH)

Split path into its components and return them as list. Empty components are removed.

Undocumented

ALL-HOSTS

ALL-WEB-SERVER-LOG-EVENTS

CHOICE-P (OBJECT)

COPY-CHOICE (INSTANCE)

COPY-HANDLER-STATISTICS (INSTANCE)

COPY-PARSED-TEMPLATE (INSTANCE)

COPY-UPLOAD (INSTANCE)

DATE-URL (URL DATE &KEY NAME)

DO-ERROR-LOG-REQUEST (ERROR)

DO-LOG-REQUEST

EMIT-ELEMENT-ATTRIBUTES (ATTRIBUTES)

EMIT-TEMPLATE (EXPANDER STREAM PARSED-TEMPLATE ENV)

FASTEST-TIME (STATISTICS)

FIND-HOST (&KEY IP-ADDRESS CREATE IPADDR)

FIND-TEMPLATE (DIR COMPONENTS)

FORMAT-ELAPSED (INTERNAL-TIME-UNITS)

GET-CACHED-TEMPLATE (PATHNAME EXPANDER)

HANDLE-TAG (TAG-SYMBOL ATTRIBUTES BODY)

HANDLER-DEFINITION-CLASS (HANDLER-DEFINITION)

HANDLER-DEFINITION-INITARGS (HANDLER-DEFINITION)

HANDLER-DEFINITION-NAME (HANDLER-DEFINITION)

HANDLER-STATISTICS-P (OBJECT)

HOST-WITH-IPADDRESS (KEY)

SETFHS-AVERAGE (NEW-VALUE INSTANCE)

SETFHS-COUNT (NEW-VALUE INSTANCE)

SETFHS-FASTEST (NEW-VALUE INSTANCE)

SETFHS-SLOWEST (NEW-VALUE INSTANCE)

INVOKE-WITH-ERROR-HANDLERS (FN HANDLER)

LAST-URL-COMPONENT

MAKE-HANDLER-STATISTICS (&KEY ((SLOWEST DUM470) (MAKE-ARRAY +STATISTICS-KEEP-ATYPICAL-COUNT+ INITIAL-ELEMENT NIL)) ((FASTEST DUM471) (MAKE-ARRAY +STATISTICS-KEEP-ATYPICAL-COUNT+ INITIAL-ELEMENT NIL)) ((COUNT DUM472) 0) ((AVERAGE DUM473) NIL))

MAKE-HTML-MENU (MENU &KEY CURRENT-MENU CURRENT-SUBMENU (UL-ID navlist) (ACTIVE-ID active) (LINK-PREFIX /))

MAKE-PARSED-TEMPLATE (&KEY ((NAMESPACE-ATTRS DUM193) NIL) ((DOM DUM194) NIL) ((LAST-CHANGE DUM195) NIL) ((NSURI-ALIAS-MAP DUM196) NIL))

MAKE-UPLOAD (&KEY ((NAME DUM0) NIL) ((PATHNAME DUM1) NIL) ((ORIGINAL-FILENAME DUM2) NIL) ((CONTENT-TYPE DUM3) NIL))

NOTE-RUN-TIME-FOR-STATISTICS (HANDLER RUN-TIME)

PARSE-CHOICE (CHOICE-XML)

SETFPARSED-TEMPLATE-DOM (NEW-VALUE INSTANCE)

SETFPARSED-TEMPLATE-LAST-CHANGE (NEW-VALUE INSTANCE)

SETFPARSED-TEMPLATE-NAMESPACE-ATTRS (NEW-VALUE INSTANCE)

SETFPARSED-TEMPLATE-NSURI-ALIAS-MAP (NEW-VALUE INSTANCE)

PARSED-TEMPLATE-P (OBJECT)

PROCESS-CHOICES-XML (CHOICES-XML)

REDIRECT-REQUEST (&KEY TARGET)

REGISTER-TAG-FUNCTION (PACKAGE-NAME NAME-STRING FUNCTION-DEFINITION)

RELATIVE (PATH)

REQUEST-VARIABLES

RESET-HANDLER-STATISTICS

SELF-URL (&KEY COMMAND PREFIX)

SEND-ERROR-RESPONSE (HANDLER MESSAGE BACKTRACE &KEY (RESPONSE-CODE +HTTP-INTERNAL-SERVER-ERROR+))

SESSION-INFO

SHOW-PAGE-WITH-ERROR-HANDLERS (FN &KEY (RESPONSE +HTTP-OK+) TITLE)

SLOWEST-TIME (STATISTICS)

TAG-BODY

TOPLEVEL (&KEY TITLE (TEMPLATE toplevel))

UPLOAD-P (OBJECT)

USER-FLAG-CHOOSE-DIALOG (&KEY ENABLED)

USER-FORM (&KEY USER-ID)

USER-TEMPLATE-PREFIX

WEB-SERVER-LOG-EVENT-P (EVENT)

XMLS-ATTRIBUTES-TO-SAX (FN ATTRS)

MACRO

Public

HTML-WARN (&REST WARNING)

Generate a warning on the console and write the warning into the currently generated XHTML output as a comment.

WITH-QUERY-PARAMS ((&REST PARAMETERS) &BODY BODY)

PARAMETERS is a list of parameter-specifiers. A parameter-specifier has the form (VARIABLE &OPTIONAL DEFAULT-VALUE TYPE) or can be a single VARIABLE. If the TYPE is specified, the value is converted like in HUNCHENTOOT:DEFINE-EASY-HANDLER when PARAMETER-TYPE is given. With respect to the conversion of an empty string, there is a subtle difference between the TYPE specified as STRING and the TYPE left unspecified. In the former case, the converted value will still be an empty string, while in the latter VARIABLE will be bound to NIL.

Undocumented

DEFINE-BKNR-TAG (NAME (&REST ARGS) &BODY BODY)

DEFINE-BKNR-WEBSERVER-MODULE (NAME &REST HANDLER-DEFINITIONS)

ENSURE-FORM-FIELD (FIELD-NAME)

WITH-BKNR-PAGE ((&REST ARGS) &BODY BODY)

WITH-HTTP-BODY ((&KEY EXTERNAL-FORMAT) &BODY BODY)

WITH-HTTP-RESPONSE ((&KEY (CONTENT-TYPE text/html) (RESPONSE +HTTP-OK+)) &BODY BODY)

WITH-IMAGE-FROM-UPLOAD ((IMAGE UPLOAD &REST ARGS) &BODY BODY)

WITH-IMAGE-FROM-UPLOAD* ((UPLOAD &REST ARGS) &BODY BODY)

WITH-JSON-RESPONSE (NIL &BODY BODY)

WITH-TAG-EXPANDERS (TAG-DEFINITIONS &BODY BODY)

WITH-TEMPLATE-VARS ((&REST VARS) &BODY BODY)

WITH-XML-RESPONSE ((&KEY (CONTENT-TYPE text/xml; charset=utf-8) ROOT-ELEMENT XSL-STYLESHEET-NAME XMLNS) &BODY BODY)

Private

Undocumented

BKNR-HANDLER-CASE (BODY &REST HANDLER-FORMS)

FORM-CASE (&REST CASES)

HTML-TEXT-INPUT (VARIABLE SIZE &OPTIONAL MAXSIZE)

WITH-COOKIES ((&REST NAMES) &BODY BODY)

WITH-ERROR-HANDLERS ((HANDLER) &BODY BODY)

WITH-IMAGE-FROM-URI ((IMAGE-VARIABLE PREFIX) &BODY BODY)

GENERIC-FUNCTION

Public

AUTHORIZE (AUTHORIZER)

Return the user that is associated with the current request or NIL.

AUTHORIZED-P (PAGE-HANDLER)

Return non-nil if the request is authorized to be executed on PAGE-HANDLER XXX wouldn't it be better if handler-matches-p checked authorization?

HANDLE (PAGE-HANDLER)

Handle an incoming HTTP request, returning either a string or an (array (unsigned-byte 8) (*)) with the response contents. Alternatively, the handler may call (SEND-HEADERS) to get access to the response stream and output the data to it.

HANDLE-FORM (PAGE-HANDLER ACTION)

Handle form submission for PAGE-HANDLER. The form variable "action" will be parsed into a keyword and passwd to the invocation of this generic function as ACTION. Methods are meant to specialize on individual keywords to handle different actions that the form supports.

HANDLE-OBJECT (OBJECT-HANDLER OBJECT)

Handle the current to the OBJECT-HANDLER. OBJECT is the object as looked up by OBJECT-HANDLER-GET-OBJECT.

HANDLE-OBJECT-FORM (HANDLER ACTION OBJECT)

Perform ACTION, a keyword that has been determined by parsing the "action" input element of the current HTML form, on OBJECT, which is parsed using the mechanism of an OBJECT-HANDLER.

HANDLER-MATCHES-P (HANDLER)

Determine whether HANDLER is willing to handle the current request. Returns non-NIL if the HANDLER wants to handle the request NIL otherwise.

OBJECT-HANDLER-GET-OBJECT (OBJECT-HANDLER)

Implement object lookup. Methods return the object that the current request should operate upon. The default method for the OBJECT handler class performs a lookup using FIND-STORE-OBJECT.

PAGE-HANDLER-URL (PAGE-HANDLER)

Return the full base URL for PAGE-HANDLER.

PUBLISH-HANDLER (WEBSITE HANDLER)

Publish HANDLER on WEBSITE, thereby adding it to the chain of handlers that is searched to handle an incoming request.

PUBLISH-SITE (WEBSITE)

Publish all handlers defined in WEBSITE. XXX When is this called?

Undocumented

DECODED-HANDLER-PATH (HANDLER)

EDIT-OBJECT-URL (OBJ)

EXPAND-TEMPLATE (HANDLER TEMPLATE-NAME &KEY ENV)

FIND-TEMPLATE-PATHNAME (EXPANDER TEMPLATE-NAME)

FORM-FIELD-MISSING-CONDITION-FIELD (CONDITION)

HANDLER-PATH (HANDLER)

HOST-NAME (OBJECT)

IMPORT-HANDLER-IMPORT-FILES (HANDLER)

IMPORT-HANDLER-IMPORT-PATHNAME (HANDLER)

IMPORT-HANDLER-SPOOL-FILES (HANDLER)

INITIAL-TEMPLATE-ENVIRONMENT (EXPANDER)

OBJECT-DATE-LIST-HANDLER-DATE (HANDLER OBJECT)

OBJECT-DATE-LIST-HANDLER-GROUPED-OBJECTS (HANDLER OBJECT)

OBJECT-LIST-HANDLER-GET-OBJECTS (HANDLER OBJECT)

OBJECT-LIST-HANDLER-SHOW-OBJECT-XML (HANDLER OBJECT)

OBJECT-LIST-HANDLER-TITLE (HANDLER OBJECT)

OBJECT-URL (OBJ)

PARSE-HANDLER-URL (HANDLER)

WEBSITE-MAKE-PATH (WEBSITE PATH)

WEBSITE-SESSION-INFO (WEBSITE)

WEBSITE-SHOW-ERROR-PAGE (WEBSITE ERROR)

WEBSITE-SHOW-PAGE (WEBSITE FN TITLE)

XML-OBJECT-HANDLER-SHOW-OBJECT (HANDLER OBJECT)

Private

PROCESS-HANDLER-DEFINITION (WEBSITE DEFINITION)

Process a handler definition entry DEFINITION which may either be a LIST of (PATH HANDLER-CLASS &optional INITARGS) or a symbol, denoting a module to load at this point in the (linear) handler definition. Every method returns a list of handler instances.

Undocumented

AS-XML (EVENT)

ERROR-TEMPLATE-PATHNAME (HANDLER &OPTIONAL (ERROR-TYPE))

FIND-TAG-FUNCTION (EXPANDER NAME NS)

FORM-CONDITION-REASON (CONDITION)

HOST-IPADDR (HOST)

HTTP-REQUEST-REMOTE-HOST

INVOKE-HANDLER (HANDLER)

RESOLVE-IPADDR (HOST)

SET-TAG-FUNCTION (EXPANDER NAME FUNCTION)

SHOW-HANDLERS (WEBSITE)

WEBSITE-HANDLER-WITH-NAME (WEBSITE NAME)

SLOT-ACCESSOR

Public

HANDLER-MAX-AGE (OBJECT)

Default value to set for the Cache-Control max-age header.

SETFHANDLER-MAX-AGE (NEW-VALUE OBJECT)

Default value to set for the Cache-Control max-age header.

Undocumented

BKNR-SESSION-HOST (OBJECT)

SETFHOST-NAME (NEW-VALUE OBJECT)

IMPORT-HANDLER-SPOOL-DIR (OBJECT)

OBJECT-HANDLER-OBJECT-CLASS (OBJECT)

PAGE-HANDLER-PREFIX (OBJECT)

SETFPAGE-HANDLER-PREFIX (NEW-VALUE OBJECT)

PAGE-HANDLER-SITE (OBJECT)

WEB-SERVER-ERROR-EVENT-ERROR (OBJECT)

WEB-SERVER-LOG-EVENT-REFERER (OBJECT)

WEB-SERVER-LOG-EVENT-URL (OBJECT)

WEB-SERVER-LOG-EVENT-USER-AGENT (OBJECT)

WEB-VISITOR-EVENT-HOST (OBJECT)

WEB-VISITOR-EVENT-SESSION-ID (OBJECT)

WEB-VISITOR-EVENT-USER (OBJECT)

WEBSITE-ADMIN-NAVIGATION (OBJECT)

SETFWEBSITE-ADMIN-NAVIGATION (NEW-VALUE OBJECT)

WEBSITE-AUTHORIZER (OBJECT)

SETFWEBSITE-AUTHORIZER (NEW-VALUE OBJECT)

WEBSITE-BASE-HREF (OBJECT)

SETFWEBSITE-BASE-HREF (NEW-VALUE OBJECT)

WEBSITE-CACHABLE-HANDLERS (OBJECT)

SETFWEBSITE-CACHABLE-HANDLERS (NEW-VALUE OBJECT)

WEBSITE-HANDLER-DEFINITIONS (OBJECT)

SETFWEBSITE-HANDLER-DEFINITIONS (NEW-VALUE OBJECT)

WEBSITE-NAME (OBJECT)

WEBSITE-NAVIGATION (OBJECT)

SETFWEBSITE-NAVIGATION (NEW-VALUE OBJECT)

WEBSITE-URL (OBJECT)

SETFWEBSITE-URL (NEW-VALUE OBJECT)

Private

PAGE-HANDLER-TITLE (OBJECT)

textual title for the page used in menus

REDIRECT-HANDLER-ARGS (OBJECT)

redirect arguments

REDIRECT-HANDLER-TO (OBJECT)

url to redirect to

TEMPLATE-EXPANDER-CATCH-ALL (OBJECT)

If non-NIL, direct all requests to the default template.

TEMPLATE-EXPANDER-DEFAULT-TEMPLATE (OBJECT)

Name of the default template to use when no path name has been specified.

Undocumented

BKNR-SESSION-ID (OBJECT)

DIRECTORY-HANDLER-FILENAME-SEPARATOR (OBJECT)

DOCUMENTATION-HANDLER-PACKAGE (OBJECT)

HOST-IP-ADDRESS (OBJECT)

SETFHOST-IP-ADDRESS (NEW-VALUE OBJECT)

HOST-LAST-SEEN (OBJECT)

SETFHOST-LAST-SEEN (NEW-VALUE OBJECT)

LOCAL-TEMPLATE-EXPANDER-FUNCTIONS (OBJECT)

LOCAL-TEMPLATE-EXPANDER-PARENT (OBJECT)

OBJECT-HANDLER-QUERY-FUNCTION (OBJECT)

PAGE-HANDLER-CONTENT-TYPE (OBJECT)

PAGE-HANDLER-DESTINATION (OBJECT)

PAGE-HANDLER-FUNCTION (OBJECT)

PAGE-HANDLER-NAME (OBJECT)

PAGE-HANDLER-REQUIRE-USER-FLAG (OBJECT)

PAGE-HANDLER-STATISTICS (OBJECT)

SETFPAGE-HANDLER-STATISTICS (NEW-VALUE OBJECT)

TEMPLATE-EXPANDER-CACHED-TEMPLATES (OBJECT)

SETFTEMPLATE-EXPANDER-CACHED-TEMPLATES (NEW-VALUE OBJECT)

TEMPLATE-EXPANDER-COMMAND-PACKAGES (OBJECT)

TEMPLATE-EXPANDER-DESTINATION (OBJECT)

WEB-SERVER-ERROR-EVENT-BACKTRACE (OBJECT)

WEB-SERVER-LOG-EVENT-HOST (OBJECT)

WEB-SERVER-LOG-EVENT-SESSION-ID (OBJECT)

WEB-SERVER-LOG-EVENT-USER (OBJECT)

WEBSITE-HANDLERS (OBJECT)

SETFWEBSITE-HANDLERS (NEW-VALUE OBJECT)

WEBSITE-IMPORT-SPOOL-DIRECTORY (OBJECT)

SETFWEBSITE-IMPORT-SPOOL-DIRECTORY (NEW-VALUE OBJECT)

WEBSITE-JAVASCRIPT-URLS (OBJECT)

SETFWEBSITE-JAVASCRIPT-URLS (NEW-VALUE OBJECT)

WEBSITE-LOGIN-LOGO-URL (OBJECT)

SETFWEBSITE-LOGIN-LOGO-URL (NEW-VALUE OBJECT)

WEBSITE-MENUDEF-XML-FILE (OBJECT)

SETFWEBSITE-MENUDEF-XML-FILE (NEW-VALUE OBJECT)

WEBSITE-RSS-FEED-URL (OBJECT)

SETFWEBSITE-RSS-FEED-URL (NEW-VALUE OBJECT)

WEBSITE-SITE-LOGO-URL (OBJECT)

SETFWEBSITE-SITE-LOGO-URL (NEW-VALUE OBJECT)

WEBSITE-STYLE-SHEET-URLS (OBJECT)

SETFWEBSITE-STYLE-SHEET-URLS (NEW-VALUE OBJECT)

WEBSITE-TEMPLATE-BASE-DIRECTORY (OBJECT)

WEBSITE-TEMPLATE-COMMAND-PACKAGES (OBJECT)

WEBSITE-TEMPLATE-HANDLER (OBJECT)

XML-HANDLER-STYLE-PATH (OBJECT)

XML-OBJECT-LIST-HANDLER-TOPLEVEL-ELEMENT-NAME (OBJECT)

VARIABLE

Public

*DEFAULT-BILLBOARD*

default billboard to show on home page

*SESSION*

Current session

Undocumented

*TEMPLATE-DTD-CATALOG*

*THUMBNAIL-MAX-HEIGHT*

*THUMBNAIL-MAX-WIDTH*

*UPLOAD-FILE-SIZE-LIMIT*

*USER-SPOOL-DIRECTORY-ROOT*

*WEBSITE*

Private

*NAMESPACE-ATTRIBUTES*

Bound to the list of namespace attributes to emit on the top level node.

*NSURI-ALIAS-MAP*

Maps namespace URI to alias name as declared in the current document.

*REQ-VAR-HASH*

Request variables

Undocumented

*BKNR-DEBUG*

*HANDLERS*

*TEMPLATE-FUNCTIONS*

*WEBSITE-MODULES*

CLASS

Public

DIRECTORY-HANDLER

Handler for a directory in the file system. Publishes all files in the directory DESTINATION under their relative path name. Multiple files can be served in one request by separating their relative file names using the ampersand sign.

EDIT-OBJECT-HANDLER

Combined FORM-HANDLER and OBJECT-HANDLER class that is used as a base class for handlers that edit an object using a HTML form.

FILE-HANDLER

A FILE-HANDLER is used to publish a single file under an URL. :DESTINATION is the pathname of the file to publish, :CONTENT-TYPE is the content type to use.

FORM-HANDLER

A FORM-HANDLER is a handler that processes form submissions. The handler generic function for FORM-HANDLER subclasses is called HANDLE-FORM.

HOST (&OPTIONAL (REQUEST *REQUEST*))

ip host which has visited the system through http or another protocol

OBJECT-HANDLER

An OBJECT-HANDLER handles requests for a persistent object in the BKNR datastore. The first component of the relative path of the request is used as the key to locate the object. The object is looked up using the OBJECT-HANDLER-GET-OBJECT generic function, which will, by default, call FIND-STORE-OBJECT with the key as argument. The :QUERY-FUNCTION initarg may be supplied to set up a query function that maps from the key to an object. It is typically used to implement lookup by name. The :OBJECT-CLASS initarg may be supplied to restrict the handler to operate on objects of that class or its subclass. If the key specifies the ID of an object that has a different class or if the QUERY-FUNCTION returns an object of a different class, a run-time error is signaled.

PAGE-HANDLER

Simple page handler publishing a serve request under a simple URL

PREFIX-HANDLER

A PREFIX-HANDLER is a handler that is invoked for URLs with a certain prefix, as determined by the :PREFIX initialization argument. It is used as a mixin class and only provides for a HANDLER-MATCHES-P method.

WEB-SERVER-ERROR-EVENT

Backtrace when an error happens inside a web page

WEBSITE

Class to hold all information on a web server that is served within BKNR. Currently, this is a singleton object, and *WEBSITE* will point to the only instance.

Undocumented

ADMIN-ONLY-HANDLER

BKNR-ACCEPTOR

BKNR-AUTHORIZER

BKNR-SESSION

BLOB-HANDLER

CACHABLE-HANDLER

IMPORT-HANDLER

KEYWORD-HANDLER

KEYWORDS-HANDLER

LOGOUT-HANDLER

OBJECT-DATE-LIST-HANDLER

OBJECT-LIST-HANDLER

REDIRECT-HANDLER

RSS-HANDLER

TEMPLATE-HANDLER

UPLOAD

XML-IMAGE-BROWSER-HANDLER

XML-OBJECT-HANDLER

XML-OBJECT-LIST-HANDLER

Private

WEB-SERVER-LOG-EVENT

Web page has been served

WEB-VISITOR-EVENT

web site being visited by a user

WEB-VISITOR-LEFT-EVENT

web visitor left the system

Undocumented

CHOICE

DOCUMENTATION-HANDLER

HANDLER-STATISTICS

HANDLER-STATISTICS-HANDLER

LOCAL-TEMPLATE-EXPANDER

PARSED-TEMPLATE

RANDOM-REDIRECT-HANDLER

TEMPLATE-EXPANDER

USER-HANDLER

XML-HANDLER

CONDITION

Public

Undocumented

FORM-FIELD-MISSING-CONDITION

USER-ERROR (STR &REST ARGS)

Private

Undocumented

DIRECTORY-HANDLER-ERROR

FILES-NOT-FOUND

FORM-CONDITION

FORM-NOT-AUTHORIZED-CONDITION

INVALID-PATHNAME-SYNTAX

NON-MATCHING-FILETYPES-IN-COMBINATION

UNAUTHORIZED-ERROR

CONSTANT

Private

Undocumented

+STATISTICS-KEEP-ATYPICAL-COUNT+