X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=index.cgi;h=a1b6a08689c823dc75568902eb8c1d1bfad07df0;hb=fbeb46144ca938828cd1df9710cb5893483ec1f5;hp=ff9e563f356689f95115ddb1aaac6f4f4df42bbe;hpb=665e431e7d944b27d72cbc55eb9bd61d8a983c80;p=httpchat diff --git a/index.cgi b/index.cgi index ff9e563..a1b6a08 100755 --- a/index.cgi +++ b/index.cgi @@ -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' \ @@ -31,6 +37,7 @@ yield_page(){ } settings_menu(){ + local nick="$(HTML "${nickname#\?}")" printf ' [form #settings method="POST" action="?settings" [hidden "session_key" "%s"] @@ -40,17 +47,22 @@ settings_menu(){ printf '[p .error %s %s]' "${ERROR%% *}" "$(HTML "${ERROR#.* }")" unset ERROR fi - printf ' + if [ "$NICK_REGISTRATION" != on -o "$nickname" = '?Guest' ]; then + printf ' [a .section href="#nick" Nickname] - [div #nick [input name="nickname" value="%s"][submit "action" "nick" Set Cookie]] - ' "$(HTML "${nickname#\?}")" - printf ' + [div #nick .open [input name="nickname" placeholder="%s"][submit "action" "nick" Set Cookie]] + ' "$nick" + else + printf ' + [a .section href="#nick" Nickname] + [div #nick [input name="nickname" placeholder="%s"][submit "action" "nick" Set Cookie]] [a .section href="#register" Register Nickname] [div #register [p Registration will set a permanent Cookie in your Browser. Registration requires neither a password, nor an email address.] [input name="regnick" value="%s"][submit "action" "register" Register] - ]' "$(HTML "${nickname#\?}")" + ]' "$nick" "$nick" + fi printf ']' }