X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=index.cgi;h=ac9a110149f9e8b79a992b946b4cd6321c2df85c;hb=ecef5d8df4714fb141e42842e6df2028b151e831;hp=a5665c14796e542f2b61f6b610a07bdabd8e9322;hpb=66f78a6d8a1142403c1614f20a56e66ca16ca168;p=httpchat diff --git a/index.cgi b/index.cgi index a5665c1..ac9a110 100755 --- a/index.cgi +++ b/index.cgi @@ -1,7 +1,7 @@ #!/bin/sh -_EXEC=. -_DATA=. +_EXEC="${_EXEC:-.}" +_DATA="${_DATA:-.}" SESSION_TIMEOUT=43200 . "$_EXEC/cgilite/logging.sh" . "$_EXEC/cgilite/cgilite.sh" @@ -12,6 +12,12 @@ LOCATION="$(PATH "$PATH_INFO")" LOCATION="${LOCATION#/}" LOCATION="${LOCATION%%/*}" +NICK_REGISTRATION="${NICK_REGISTRATION:-on}" + +# ToDo: +# COOKIE_NICK_EXPIRE=$((86400 * 14)) +# REGEISTERED_NICK_EXPIRE=$((86400 * 365)) + yield_page(){ page="$1" printf '%s\r\n' 'Content-Type: text/html; charset=utf-8' \ @@ -42,9 +48,9 @@ settings_menu(){ fi printf ' [a .section href="#nick" Nickname] - [div #nick [input name="nickname" value="%s"][submit "action" "nick" Set Cookie]] + [div #nick [input name="nickname" placeholder="%s"][submit "action" "nick" Set Cookie]] ' "$(HTML "${nickname#\?}")" - printf ' + [ "$NICK_REGISTRATION" = on -a "$nickname" != '?Guest' ] && printf ' [a .section href="#register" Register Nickname] [div #register [p Registration will set a permanent Cookie in your Browser. @@ -59,10 +65,11 @@ settings_menu(){ case ${LOCATION} in webchat.css) . "$_EXEC/cgilite/file.sh" - FILE "$_EXEC/webchat.css" - exit 0 + FILE "$_EXEC/${LOCATION}" + return 0 ;; \&?*) + [ "$(COOKIE nick)" -o "$QUERY_STRING" = settings ] || REDIRECT "/$LOCATION?settings#nick" chatfile="$_DATA/${LOCATION}/channel" . "$_EXEC/channel.sh" exit 0