+ <span class="help">Up to <b>10</b> filter boxes will appear as you start selecting tags. You can select <b>multiple</b> tags in each box by holding down the <b>Ctrl</b>-key. Click the "<b>Filter!</b>" button when you are ready.</span>
+
+ $(for n in {0..9}; do
+ hideall="$(sed -rn "s;^([^:]+):.*$;hide('${n}_\\1')\\;;p" <<<"$taglist" |sort -u)hide('${n}_none');"
+ echo "
+ <div class="filter" id=\"filter$n\" $([ $n -gt 0 ] && echo 'style="display:none;"')>
+ <span class=\"help conjunction\">and</span>
+ <input type=\"radio\" name=\"type$n\" value=\"pos\" checked><span class=\"label conjunction\">Any</span>
+ <input type=\"radio\" name=\"type$n\" value=\"neg\"><span class=\"label conjunction\">None</span>
+ <span class=\"help\">of the tags selected here:</span>
+ <span class=\"label category\">Category:</span>
+ <select class=\"input category\" name=\"category\" size=\"1\" onchange=\"${hideall}show_block('${n}_'+this.options[this.options.selectedIndex].value)\">
+ <option>none</option>
+ $(sed -rn 's;^([^:]+):.*$;<option>\1</option>;p' <<<"$taglist" |sort -u)
+ </select>
+ <select class=\"input tagfilter\" name=\"filter\" size=\"12\" multiple id=\"${n}_none\"
+ onchange=\"show_iblock('filter$((1+$n))')\">
+ $(sed -rn 's;^([^:]+)$;<option>\1</option>;p' <<<"$taglist")
+ </select>
+ $(sed -rn 's;^([^:]+):.*$;\1;p' <<<"$taglist" |sort -u |while read cat; do echo "
+ <select class=\"input tagfilter\" name=\"cfilter\" size=\"12\" multiple id=\"${n}_$cat\" style=\"display:none;\"
+ onchange=\"show_iblock('filter$((1+$n))')\">
+ $(sed -rn "s;^$cat:(.*)$;<option>\\1</option>;p" <<<"$taglist")
+ </select>"
+ done)
+ </div>"
+ done)
+
+ <div class="filter final">
+ <span class="label order">Order by:</span>
+ <select class="edit order" size="1" name="o">
+ <option>Name</option>
+ <option>Date</option>
+ <option>Length</option>
+ </select>
+ <input type="submit" value="Filter!">
+ </div>
+
+ <div class="quicklinks">
+ <span class="label quicklinks">Most recent</span>
+ $(output=''
+ tac ${_DATA}/meta/recent |while [ "$(echo "$output" |wc -l)" -lt 10 ]; do
+ read line
+ line="<a href="$line">$line</a>"
+ echo "$output" |grep -qF "$line" || output="$output$line\n"
+ done
+ echo $output
+ )
+ </div>
+ </form>