You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
616 B
33 lines
616 B
#!/bin/bash |
|
printf '%s\n\n' 'Content-Type: text/html'; |
|
|
|
source exprash.sh; |
|
|
|
declare -A cats; |
|
cats[calico]="Calico"; |
|
cats[sphynx]="Sphynx"; |
|
cats[ragdoll]="Ragdoll"; |
|
cats[scottish_fold]="Scottish Fold"; |
|
|
|
get '/' && { |
|
printf '<h1>Cats</h1>\n'; |
|
printf '<ul>\n'; |
|
for key in "${!cats[@]}"; do |
|
printf '<li><a href="cats/%s">%s</a></li>\n' "$key" "${cats[$key]}"; |
|
done |
|
printf '</ul>\n'; |
|
} |
|
|
|
get '/cats/:cat' && { |
|
key=$(param 'cat'); |
|
|
|
if [[ -v "cats[$key]" ]]; then |
|
printf '<h1>Your Cat: %s</h1>\n' "${cats[$key]}"; |
|
else |
|
next; |
|
fi; |
|
} |
|
|
|
use && { |
|
printf '<h1>Error: Cannot find that cat</h1>\n'; |
|
}
|
|
|