-for key in ${(k)_POST}; do
- [ "$key" != imagedata ] && printf %s:%s\\n "$key" "${_POST[$key]//$BR/\\n}"
-done >"$tempfile"
+for key in $(POST_KEYS); do
+ case "$key" in
+ imagedata) : ;;
+ session*_date)
+ value="$(POST "$key")"
+ y=0 mon=0 dom=0
+ case $value in
+ *.*.*) IFS=. read dom mon y <<-END
+ ${value}
+ END
+ ;;
+ *.*.) IFS=. read dom mon <<-END
+ ${value}
+ END
+ ;;
+ */*/*) IFS=/ read mon dom y <<-END
+ ${value}
+ END
+ ;;
+ */*) IFS=/ read mon dom <<-END
+ ${value}
+ END
+ ;;
+ *-*-*) IFS=- read y mon dom <<-END
+ ${value}
+ END
+ ;;
+ esac
+ [ ! "$y" ] && y="$(date +%Y)"
+ [ "$y" -gt 0 -a "$y" -lt 100 ] && y="$((y + 2000))"
+ date -d "${y}-${mon}-${dom}" + && printf %s:%s\\n "$key" "$(date -d "${y}-${mon}-${dom}" +%F)" \
+ || printf %s:\\n "$key"
+ ;;
+ *) printf %s:%s\\n "$key" "$(pdi_escape "$(POST "$key")")" ;;
+ esac
+done >"$tempfile" 2>&-