-
- $(for n in {0..9}; do
- filter="$(printf '%s^' "$filters" |cut -d^ -f$(($n+1)))"
- fneg="${filter%%[a-zA-Z]*}"
- filter="${filter#!}"
- fcat="${filter%%:*}"
- [ "$fcat" = "$filter" ] && fcat=none
-
- debug "fneg: $fneg fcat: $fcat filter: $filter"
-
- cat <<-EOF
- <input class="tabhandle" type="checkbox" id="filter$n" $([ $n = 0 -o -n "$filter" ] && echo checked) >
- <label class="tabhandle filter" for="filter$n">+ and</label>
- <div class="tabcontent filter">
- <input type="radio" name="type$n" value="pos" id="pos$n" ${fneg:-checked} ><label for="pos$n" class="conjunction">Any</label>
- <input type="radio" name="type$n" value="neg" id="neg$n" ${fneg:+checked} ><label for="neg$n" class="conjunction">None</label>
- <span class="help">of the items selected here:</span>
-
- <label class="category">Category:</label>
- <div class="category tabcontainer">
- <div class="tab">
- <input class="tabhandle" type="radio" name="category$n" id="cat${n}_none" value="none" $([ "none" = "$fcat" ] && echo checked)>
- <label class="category tabhandle" for="cat${n}_none">general</label>
- <select class="category tabcontent" class="input tagfilter" name="cfilter${n}_" size="12" multiple>
- $(echo "$taglist" |grep -v : |while read item; do
- echo -E "$item" |egrep -q "^($filter)$" && \
- echo "<option selected >$item</option>" \
- || echo "<option>$item</option>"
- done)
- </select>
- </div>
- $( echo "$taglist" |sed -rn 's;^([^:]+):.*$;\1;p' |sort -u \
- |while read cat; do echo "
- <div class="tab">
- <input class="tabhandle" type="radio" name="category$n" id="cat${n}_$cat" value="$cat" $([ "$cat" = "$fcat" ] && echo checked)>
- <label class=\"category tabhandle\" for="cat${n}_$cat">$cat</label>
- <select class=\"category tabcontent\" class=\"input tagfilter\" name="cfilter${n}_" size="12" multiple>
- $(echo "$taglist" |sed -rn "s;^$cat:;;p" | while read item; do
- echo -E "${cat}:${item}" |egrep -q "^($filter)$" && \
- echo "<option selected >$item</option>" \
- || echo "<option>$item</option>"
- done)
- </select>
- </div>
- "
- done)
- </div>
- </div>
- EOF
- done)