+#!/bin/sh
+
+if [ "$_PATH" = "/cards/cards.css" ]; then
+ . $_EXEC/cgilite/file.sh
+ FILE $_EXEC/cards/cards.css
+ return 0
+fi
+
+. $_EXEC/pdiread.sh
+. $_EXEC/cards/l10n.sh
+. $_EXEC/cards/widgets.sh
+. $_EXEC/cards/list.sh
+
+unescape() { [ $# = 0 ] && sed -E 's;\\(.);\1;g' || printf %s "$*" |sed -E 's;\\(.);\1;g'; }
+upcase=' y;abcdefghijklmnopqrstuvwxyzäöüé;ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜÉ;; '
+
+filter="$(GET f)"
+order="$(GET o)"
+edit="$(GET e)"
+[ "$order" ] || order=firstname
+
+{ w_filter_diag
+
+ printf '
+ [form class="newcard" action="/cards/new_card.sh" method="POST"
+ [button type="submit" %s]
+ ]' "$(l10n newcard)"
+
+ [ "$edit" ] && edit_card "$edit"
+ list_cards
+} | yield_page cards /cards/cards.css