. "$_EXEC/cgilite/storage.sh"
. "$_EXEC/cgilite/session.sh"
+SESSION_COOKIE
+
yield_page(){
printf 'Content-Type: text/html; charset=utf-8\r\n\r\n'
"$_EXEC/cgilite/html-sh.sed" <<EOF
EOF
}
-tid(){
- # transaction ID to modify a given file
- local file="$1"
- { stat -c %F%i%n%N%s%Y "$file" 2>&-
- printf %s "$SESSION_ID"
- server_key
- } | sha256sum | cut -d\ -f1
-}
-
-info="$(PATH "${PATH_INFO}")"
+info="$(PATH "${PATH_INFO#http://*/}")"
which git && [ ! -d .git ] && {
git init
. "$_EXEC/cgilite/file.sh"
FILE "$_EXEC/invoices.css"
;;
- /clients)
+ /clients|/clients/)
. "$_EXEC/clients.sh"
{ list_clients
printf '[a .new href="/clients/%s" New]' "$(timeid)"
. "$_EXEC/clients.sh"
update_client
;;
- /senders)
+ /senders|/senders/)
. "$_EXEC/senders.sh"
{ list_senders
printf '[a .new href="/senders/%s" New]' "$(timeid)"
. "$_EXEC/senders.sh"
update_sender
;;
- /invoices)
+ /invoices|/invoices/)
. "$_EXEC/invoices.sh"
- { list_invoices
- printf '[a .new href="/invoices/%s" New]' "$(timeid)"
+ { printf '[a .new href="/invoices/%s" New]' "$(timeid)"
+ list_invoices
} | yield_page invoices
;;
/invoices/*)