Compare commits

..

No commits in common. "4888987971e6e58b65edcb18bc71a165cc074c42" and "56576a728c7e1dbb6f9ef04d46c46b78e96e41eb" have entirely different histories.

7 changed files with 28 additions and 54 deletions

View File

@ -1,12 +0,0 @@
(in-package #:cl-bible.api)
(defvar *server* (make-instance 'h:easy-acceptor :port 4242))
(defmethod start ((server h:easy-acceptor))
(h:start server))
(h:define-easy-handler (get-reference :uri "/ref") (reference bible)
(setf (h:content-type*) "text/plain")
(setf (h:header-out :access-control-allow-origin) "*")
(let ((bible (d::read-bible-from-tsv (or bible "mng"))))
(j:to-json (v:to-sexp (s:find-verse bible (s:parse-position reference))))))

View File

@ -27,9 +27,7 @@
(create-div (create-web-content (create-web-main canvas)))) (create-div (create-web-content (create-web-main canvas))))
(defmethod display-chapter-or-book (canvas (chapter chapter)) (defmethod display-chapter-or-book (canvas (chapter chapter))
(let ((div (book/chapter-window canvas))) (chapter-to-clog chapter (book/chapter-window canvas)))
(chapter-to-clog chapter div)
div))
(defmethod load-chapter (canvas (book string) (chapter string)) (defmethod load-chapter (canvas (book string) (chapter string))
(let* ((bk (s:find-book d:*bible* book)) (let* ((bk (s:find-book d:*bible* book))

View File

@ -6,7 +6,7 @@
:license "MIT" :license "MIT"
:version "0.0.4" :version "0.0.4"
:serial t :serial t
:depends-on (#:str #:clog #:hunchentoot #:jonathan) :depends-on (#:str #:clog)
:components ((:file "package") :components ((:file "package")
(:file "chapter") (:file "chapter")
(:file "verse") (:file "verse")

View File

@ -12,5 +12,8 @@
(start) (start)
(loop)) (loop))
(defun build (&optional (name "bible")) (defun build ()
#+sbcl (sb-ext:save-lisp-and-die name :executable t :toplevel #'main)) (mapc (lambda (verse)
(setf (cl-bible.verse:notes verse) nil))
cl-bible.data:*bible*)
#+sbcl (sb-ext:save-lisp-and-die "bible" :executable t :toplevel #'main))

View File

@ -3,7 +3,6 @@
(in-package #:cl-bible.clog) (in-package #:cl-bible.clog)
(defvar *body*) (defvar *body*)
(defvar *text* nil)
(defun lift-search-window (body search) (defun lift-search-window (body search)
(let ((result (mapcar #'car (l:lift-search search)))) (let ((result (mapcar #'car (l:lift-search search))))
@ -33,29 +32,27 @@
(v:verse-to-string verse))) (v:verse-to-string verse)))
(lambda (obj) (lambda (obj)
(declare (ignore obj)) (declare (ignore obj))
(when *text* (destroy *text*)) (ch:load-chapter canvas
(setf *text* (ch:load-chapter canvas (v:bname verse)
(v:bname verse) (v:chapter verse)))))
(v:chapter verse)))))) results)))
results)
content))
(defun reload (window) (defun reload (window)
(lambda (obj) (lambda (obj)
(declare (ignore obj)) (declare (ignore obj))
(let ((dialog (clog-web-form window "Which bible do you want?" (let ((dialog (clog-web-form window "Which bible do you want?"
'(("Bible" "bible" :select (("Menge" :mng) '(("Bible" "bible" :select (("Menge" :mng)
("King James Version" :kjv) ("King James Version" :kjv)
("Vulgata" :vul) ("Vulgata" :vul)
("Greek Bible" :grb) ("Greek Bible" :grb)
("Elberfelder Übersetzung 1871" :elb1871) ("Elberfelder Übersetzung 1871" :elb1871)
("NEÜ" :neue) ("NEÜ" :neue)
("Luther 1545" :luth1545) ("Luther 1545" :luth1545)
("Luther 1912" :luth1912) ("Luther 1912" :luth1912)
("Schlachter 1951" :sch1951) ("Schlachter 1951" :sch1951)
("Ukrainische Version" :ukr)))) ("Ukrainische Version" :ukr))))
(lambda (results) (lambda (results)
(d:update-bible (form-result results "bible"))))))))) (d:update-bible (form-result results "bible")))))))))
(defun load-book-or-chapter (canvas) (defun load-book-or-chapter (canvas)
(lambda (data) (lambda (data)
@ -66,8 +63,8 @@
(lambda (obj) (lambda (obj)
(declare (ignore obj)) (declare (ignore obj))
(clog-web-form body "Which passage do you want?" (clog-web-form body "Which passage do you want?"
'(("" "pos" :text)) '(("" "pos" :text))
(load-book-or-chapter body)))) (load-book-or-chapter body))))
(defun setup-menu-bar (body) (defun setup-menu-bar (body)
(let* ((form-space (create-web-content body)) (let* ((form-space (create-web-content body))
@ -88,14 +85,12 @@
(set-on-submit form1 (set-on-submit form1
(lambda (obj) (lambda (obj)
(declare (ignore obj)) (declare (ignore obj))
(when *text* (destroy *text*)) (ch:load-position body (value passage))))
(setf *text* (ch:load-position body (value passage)))))
(create-form-element form3 :submit :value "Search phrase") (create-form-element form3 :submit :value "Search phrase")
(set-on-submit form3 (set-on-submit form3
(lambda (obj) (lambda (obj)
(declare (ignore obj)) (declare (ignore obj))
(when *text* (destroy *text*)) (search-in-bible (value search) d:*bible* body)))))
(setf *text* (search-in-bible (value search) d:*bible* body))))))
(defun on-new-window (body) (defun on-new-window (body)
(setf *body* body) (setf *body* body)

View File

@ -75,13 +75,3 @@
#:cl-bible.search) #:cl-bible.search)
(:local-nicknames (#:c #:clog) (:local-nicknames (#:c #:clog)
(#:cg #:clog-gui))) (#:cg #:clog-gui)))
(defpackage #:cl-bible.api
(:use #:cl)
(:local-nicknames (#:l #:cl-bible.lift-search)
(#:d #:cl-bible.data)
(#:s #:cl-bible.search)
(#:v #:cl-bible.verse)
(#:ch #:cl-bible.chapter)
(#:h #:hunchentoot)
(#:j #:jonathan)))

View File

@ -33,7 +33,7 @@
(defgeneric from-sexp (bible)) (defgeneric from-sexp (bible))
(defmethod print-object ((verse verse) stream) (defmethod print-object ((verse verse) stream)
(format stream (verse-to-string verse))) (format stream (verse-to-string verse :separator " ")))
(defmethod string-to-verse ((string string)) (defmethod string-to-verse ((string string))
(let ((verse (uiop:split-string string :separator '(#\Tab)))) (let ((verse (uiop:split-string string :separator '(#\Tab))))