diff options
| author | ckonstanski <kostcarl@isu.edu> | 2026-03-27 22:40:32 -0600 |
|---|---|---|
| committer | ckonstanski <kostcarl@isu.edu> | 2026-03-27 22:40:32 -0600 |
| commit | 7d523da5d7defbf68a07f746a0d75ea18960267c (patch) | |
| tree | 991327ebf9efce83abb043e5374bb9426dd575f1 /lisp/webapps/bogenherr/site.lisp | |
| parent | 6b90c3b2bc7fe888ba6c69e89d4c632daceda03b (diff) | |
checkpoint for reagent and easy-routes changes in progress
Diffstat (limited to 'lisp/webapps/bogenherr/site.lisp')
| -rw-r--r-- | lisp/webapps/bogenherr/site.lisp | 130 |
1 files changed, 58 insertions, 72 deletions
diff --git a/lisp/webapps/bogenherr/site.lisp b/lisp/webapps/bogenherr/site.lisp index b79f493..37f33cd 100644 --- a/lisp/webapps/bogenherr/site.lisp +++ b/lisp/webapps/bogenherr/site.lisp @@ -3,7 +3,7 @@ (in-package :bogenherr) -(defmacro .base (&optional (onload-fn "goto_location('/home')")) +(defmacro .base (&optional (start-url "/home")) `(org-ckons-http::html5 `(html (head @@ -18,27 +18,13 @@ `((script :type "text/javascript" :src ,(getf js :src) :integrity ,(getf js :integrity) :crossorigin ,(getf js :crossorigin)))) '((:src "https://code.jquery.com/jquery-3.7.1.slim.min.js" :integrity "ha256-kmHvs0B+OpCW5GVHUNjv9rOmY0IvSIRcf7zGUDTDQM8=" :crossorigin "anonymous"))) ((script :type "text/javascript" :src "/cljs-out/dev-main.js"))) - ((body :onload ,(format nil "bogenherr.core.~a" ,onload-fn)) - ((div :class "container-fluid") - ((div :class "banner") - ((table :width "100%" :height "100%") - (tr - ((td :class "banner-menu") - ((div :id "menu-user"))) - ((td :class "banner-title") "Bogen-<i>Herr</i>") - ((td :class "banner-menu") - " ")))) - ((div :id "menu" :class "well")) - ((div :id "location" :style "display: none")) - ((div :id "errormsg")) - ((div :id "message")) - ((div :id "body")) - ((div :id "footer") - (hr) - "Carlos Konstanski (970) 294-9708") - ,@(mapcar (lambda (js) - `((script :type "text/javascript" :src ,(getf js :src) :integrity ,(getf js :integrity) :crossorigin ,(getf js :crossorigin)))) - '((:src "https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" :integrity "sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" :crossorigin "anonymous")))))))) + ((body :onload ,(format nil "bogenherr.core.start(~a)" ,(if start-url + (format nil "'~a'" start-url) + "null"))) + ((div :id "app")) + ,@(mapcar (lambda (js) + `((script :type "text/javascript" :src ,(getf js :src) :integrity ,(getf js :integrity) :crossorigin ,(getf js :crossorigin)))) + '((:src "https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js" :integrity "sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct" :crossorigin "anonymous"))))))) (defmacro .location () `(location-json location)) @@ -184,53 +170,53 @@ (defmacro .users-delete () `(users-delete-json id)) -(define-endpoint :get "/" () .base) -(define-endpoint :post "/location" ((location :parameter-type 'string)) .location) -(define-endpoint :get "/home" () .home-get) -(define-endpoint :post "/home" ((message :parameter-type 'string) (errormsg :parameter-type 'string)) .home-post) -(define-endpoint :get "/menu" () .menu) -(define-endpoint :get "/menu/user" () .menu-user) -(define-endpoint :get "/login" () .login) -(define-endpoint :post "/login/authenticate" ((username :parameter-type 'string) (pwd :parameter-type 'string)) .login-authenticate) -(define-endpoint :get "/login/forgot" () .login-forgot) -(define-endpoint :get "/logout" () .logout) -(define-endpoint :get "/profile" () .profile) -(define-endpoint :get "/profile/view" () .profile-view) -(define-endpoint :post "/profile/modify" () .profile-modify) -(define-endpoint :post "/profile/modify/submit" ((id :parameter-type 'integer) (username :parameter-type 'string) (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string) (phone :parameter-type 'string)) .profile-modify-submit) -(define-endpoint :get "/password" () .password) -(define-endpoint :post "/password/submit" ((id :parameter-type 'integer) (pwd :parameter-type 'string) (pwd2 :parameter-type 'string)) .password-submit) -(define-endpoint :get "/about-us" () .about-us) -(define-endpoint :get "/about-us/view" () .about-us-view) -(define-endpoint :post "/about-us/modify" () .about-us-modify) -(define-endpoint :post "/about-us/modify/submit" ((content :parameter-type 'string)) .about-us-modify-submit) -(define-endpoint :get "/gallery" () .gallery) -(define-endpoint :get "/gallery/view" () .gallery-view) -(define-endpoint :post "/gallery/add" () .gallery-add) -(define-endpoint :post "/gallery/add/submit" ((description :parameter-type 'string) (video_embed_url :parameter-type 'string) (upload :parameter-type 'string)) .gallery-add-submit) -(define-endpoint :post "/gallery/modify" ((id :parameter-type 'integer)) .gallery-modify) -(define-endpoint :post "/gallery/modify/submit" ((id :parameter-type 'integer) (description :parameter-type 'string) (video_embed_url :parameter-type 'string) (upload :parameter-type 'string)) .gallery-modify-submit) -(define-endpoint :post "/gallery/delete" ((id :parameter-type 'integer)) .gallery-delete) -(define-endpoint :get "/gallery/file/view" ((id :parameter-type 'integer)) .gallery-file-view) -(define-endpoint :get "/testimonials" () .testimonials) -(define-endpoint :get "/testimonials/view" () .testimonials-view) -(define-endpoint :post "/testimonials/modify" () .testimonials-modify) -(define-endpoint :post "/testimonials/modify/submit" ((content :parameter-type 'string)) .testimonials-modify-submit) -(define-endpoint :get "/contact-us" () .contact-us) -(define-endpoint :get "/contact-us/view" () .contact-us-view) -(define-endpoint :post "/contact-us/email" ((first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string) (phone :parameter-type 'string) (comments :parameter-type 'string)) .contact-us-email) -(define-endpoint :get "/messages" () .messages) -(define-endpoint :post "/messages/results" ((read :parameter-type 'string)) .messages-results) -(define-endpoint :post "/messages/mark" ((read :parameter-type 'string) (id :parameter-type 'integer)) .messages-mark) -(define-endpoint :get "/users" () .users) -(define-endpoint :get "/users/view" () .users-view) -(define-endpoint :post "/users/add" () .users-add) -(define-endpoint :post "/users/add/submit" ((role_groups :parameter-type 'string) (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string)) .users-add-submit) -(define-endpoint :get "/register" ((hash :parameter-type 'string)) .base (format nil "goto_register('~a') " hash)) -(define-endpoint :post "/users/register" ((hash :parameter-type 'string)) .users-register) -(define-endpoint :post "/users/register/form" ((hash :parameter-type 'string)) .users-register-form) -(define-endpoint :post "/users/register/submit" ((hash :parameter-type 'string) (username :parameter-type 'string) (pwd :parameter-type 'string) (pwd2 :parameter-type 'string) (phone :parameter-type 'string)) .users-register-submit) -(define-endpoint :post "/users/modify" ((id :parameter-type 'integer)) .users-modify) -(define-endpoint :post "/users/modify/submit" ((id :parameter-type 'integer) (role_groups :parameter-type 'string) (username :parameter-type 'string) (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string) (phone :parameter-type 'string)) .users-modify-submit) -(define-endpoint :post "/users/toggle-active" ((id :parameter-type 'integer)) .users-toggle-active) -(define-endpoint :post "/users/delete" ((id :parameter-type 'integer)) .users-delete) +(define-endpoint ("/" :method :get) () .base) +(define-endpoint ("/location" :method :post) (&post (location :parameter-type 'string)) .location) +(define-endpoint ("/home" :method :get) () .home-get) +(define-endpoint ("/home" :method :post) (&post (message :parameter-type 'string) (errormsg :parameter-type 'string)) .home-post) +(define-endpoint ("/menu" :method :get) () .menu) +(define-endpoint ("/menu/user" :method :get) () .menu-user) +(define-endpoint ("/login" :method :get) () .login) +(define-endpoint ("/login/authenticate" :method :post) (&post (username :parameter-type 'string) (pwd :parameter-type 'string)) .login-authenticate) +(define-endpoint ("/login/forgot" :method :get) () .login-forgot) +(define-endpoint ("/logout" :method :get) () .logout) +(define-endpoint ("/profile" :method :get) () .profile) +(define-endpoint ("/profile/view" :method :get) () .profile-view) +(define-endpoint ("/profile/modify" :method :post) () .profile-modify) +(define-endpoint ("/profile/modify/submit" :method :post) (&post (id :parameter-type 'integer) (username :parameter-type 'string) (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string) (phone :parameter-type 'string)) .profile-modify-submit) +(define-endpoint ("/password" :method :get) () .password) +(define-endpoint ("/password/submit" :method :post) (&post (id :parameter-type 'integer) (pwd :parameter-type 'string) (pwd2 :parameter-type 'string)) .password-submit) +(define-endpoint ("/about-us" :method :get) () .about-us) +(define-endpoint ("/about-us/view" :method :get) () .about-us-view) +(define-endpoint ("/about-us/modify" :method :post) () .about-us-modify) +(define-endpoint ("/about-us/modify/submit" :method :post) (&post (content :parameter-type 'string)) .about-us-modify-submit) +(define-endpoint ("/gallery" :method :get) () .gallery) +(define-endpoint ("/gallery/view" :method :get) () .gallery-view) +(define-endpoint ("/gallery/add" :method :post) () .gallery-add) +(define-endpoint ("/gallery/add/submit" :method :post) (&post (description :parameter-type 'string) (video_embed_url :parameter-type 'string) (upload :parameter-type 'string)) .gallery-add-submit) +(define-endpoint ("/gallery/modify" :method :post) (&post (id :parameter-type 'integer)) .gallery-modify) +(define-endpoint ("/gallery/modify/submit" :method :post) (&post (id :parameter-type 'integer) (description :parameter-type 'string) (video_embed_url :parameter-type 'string) (upload :parameter-type 'string)) .gallery-modify-submit) +(define-endpoint ("/gallery/delete/:id" :method :delete) () .gallery-delete) +(define-endpoint ("/gallery/file/view/:id" :method :get) () .gallery-file-view) +(define-endpoint ("/testimonials" :method :get) () .testimonials) +(define-endpoint ("/testimonials/view" :method :get) () .testimonials-view) +(define-endpoint ("/testimonials/modify" :method :post) () .testimonials-modify) +(define-endpoint ("/testimonials/modify/submit" :method :post) (&post (content :parameter-type 'string)) .testimonials-modify-submit) +(define-endpoint ("/contact-us" :method :get) () .contact-us) +(define-endpoint ("/contact-us/view" :method :get) () .contact-us-view) +(define-endpoint ("/contact-us/email" :method :post) (&post (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string) (phone :parameter-type 'string) (comments :parameter-type 'string)) .contact-us-email) +(define-endpoint ("/messages" :method :get) () .messages) +(define-endpoint ("/messages/results" :method :post) (&post (read :parameter-type 'string)) .messages-results) +(define-endpoint ("/messages/mark" :method :post) (&post (read :parameter-type 'string) (id :parameter-type 'integer)) .messages-mark) +(define-endpoint ("/users" :method :get) () .users) +(define-endpoint ("/users/view" :method :get) () .users-view) +(define-endpoint ("/users/add" :method :post) () .users-add) +(define-endpoint ("/users/add/submit" :method :post) (&post (role_groups :parameter-type 'string) (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string)) .users-add-submit) +(define-endpoint ("/register/:hash" :method :get) () .base hash) +(define-endpoint ("/users/register" :method :post) (&post (hash :parameter-type 'string)) .users-register) +(define-endpoint ("/users/register/form" :method :post) (&post (hash :parameter-type 'string)) .users-register-form) +(define-endpoint ("/users/register/submit" :method :post) (&post (hash :parameter-type 'string) (username :parameter-type 'string) (pwd :parameter-type 'string) (pwd2 :parameter-type 'string) (phone :parameter-type 'string)) .users-register-submit) +(define-endpoint ("/users/modify" :method :post) (&post (id :parameter-type 'integer)) .users-modify) +(define-endpoint ("/users/modify/submit" :method :post) (&post (id :parameter-type 'integer) (role_groups :parameter-type 'string) (username :parameter-type 'string) (first_name :parameter-type 'string) (last_name :parameter-type 'string) (email :parameter-type 'string) (phone :parameter-type 'string)) .users-modify-submit) +(define-endpoint ("/users/toggle-active" :method :post) (&post (id :parameter-type 'integer)) .users-toggle-active) +(define-endpoint ("/users/delete" :method :post) (&post (id :parameter-type 'integer)) .users-delete) |
