table.calendar input[type=checkbox] {
display: none;
}
-table.calendar td label {
+table.calendar td label,
+table.calendar td button {
display: inline-block;
width: 2em;
margin: 0; padding: .25em;
text-align: right;
line-height: 1em;
+ box-shadow: none;
+ border-radius: 0;
+ border: none;
}
table.calendar td input:checked + label,
-table.calendar td label[checked] {
+table.calendar td label[checked],
+table.calendar td button[name$=_remove] {
font-weight: bold;
line-height: .75em;
border: .125em solid;
w_month() {
# Arguments:
- # 1. (optional) select, multiple, none - default: select
+ # 1. (optional) select, multiple, submit, none - default: select
# 2. (optional) Name of form field - default: "date"
# 3. (optional) Month to display in format: YYYY-MM - default: current month
# 4. (optional, multiple) Days to preselect in format: DD - default: none
printf '[td [input type=checkbox id="%s_%s" name="%s" value="%s" %s][label for="%s_%s" . %i]]' \
"$input" "$date" "$input" "$date" "$(checked $dom $selected)" "$input" "$date" "$dom"
;;
+ submit)
+ [ "$(checked $dom $selected)" ] \
+ && printf '[td [submit "%s_remove" "%s" . %i][hidden "%s" "%s"]]' "$input" "$date" "$dom" "$input" "$date" \
+ || printf '[td [submit "%s_add" "%s" . %i]]' "$input" "$date" "$dom"
+ ;;
select|*)
printf '[td [input type=radio id="%s_%s" name="%s" value="%s" %s][label for="%s_%s" . %i]]' \
"$input" "$date" "$input" "$date" "$(checked $dom $selected)" "$input" "$date" "$dom"