#!/bin/sh
+USER_REGISTRATION=false
USER_REQUIREEMAIL=false
. "${_EXEC:-${0%/*}}"/cgilite/cgilite.sh
markdown() { busybox awk -f "$_EXEC/cgilite/markdown.awk"; }
fi
+checked(){
+ local check="$1"; shift 1;
+ for comp in "$@"; do
+ if [ "$check" = "$comp" ] || [ "$check" -eq "$comp" ]; then
+ printf 'checked="checked"'
+ break;
+ fi 2>/dev/null
+ done
+}
+selected(){
+ local check="$1"; shift 1;
+ for comp in "$@"; do
+ if [ "$check" = "$comp" ] || [ "$check" -eq "$comp" ]; then
+ printf 'selected="selected"'
+ break;
+ fi 2>/dev/null
+ done
+}
+
+w_user_login(){
+ if [ ! "$USER_ID" ]; then
+ cat <<-EOF
+ [form #user_login .login method=POST
+ [label Login]
+ [input name=uname placeholder="Username or Email" autocomplete=off]
+ [input type=password name=pw placeholder="Passphrase"]
+ [submit "action" "user_login" Login]
+ $([ "$USER_REGISTRATION" = true ] && printf '[a href="%s/register/" Register]' "$_BASE")
+ ]
+ EOF
+ elif [ "$USER_ID" ]; then
+ cat <<-EOF
+ [form #user_login .logout method=POST
+ [p Logged in as [span . $(HTML ${USER_NAME})]]
+ $([ "$USER_REGISTRATION" != true ] && printf '[a href="%s/invite/" Invite Friend]' "$_BASE")
+ [submit "action" "user_logout" Logout]
+ ]
+ EOF
+ fi
+}
+
yield_page(){
title="${1:-RAW:NET}" page="$2"
printf '%s\r\n' 'Content-Type: text/html; charset=utf-8' \