- hideall="$(echo "$taglist" |sed -rn "s;^([^:]+):.*$;hide('${n}_\\1')\\;;p" |sort -u)hide('${n}_none');"
- echo "
- <p class="filter" id=\"filter$n\" $([ $n -gt 0 ] && echo 'style="display:none;"')>
- <span class=\"help conjunction\">and</span>
- <label class=\"conjunction\"><input type=\"radio\" name=\"type$n\" value=\"pos\" checked>Any</label>
- <label class=\"conjunction\"><input type=\"radio\" name=\"type$n\" value=\"neg\">None</label>
- <span class=\"help\">of the tags selected here:</span>
- <label for=\"category$n\" class=\"category\">Category:</label>
- <select class=\"input category\" name=\"category$n\" size=\"1\" id=\"category$n\"
- onchange=\"${hideall}show_block('${n}_'+this.options[this.options.selectedIndex].value)\">
- <option>none</option>
- $(echo "$taglist" |sed -rn 's;^([^:]+):.*$;<option>\1</option>;p' |sort -u)
- </select>
- <select class=\"input tagfilter\" name=\"cfilter${n}_\" size=\"12\" multiple id=\"${n}_none\"
- onchange=\"show_iblock('filter$((1+$n))')\">
- $(echo "$taglist" |sed -rn 's;^([^:]+)$;<option>\1</option>;p')
- </select>
- $(echo "$taglist" |sed -rn 's;^([^:]+):.*$;\1;p' |sort -u |while read cat; do echo "
- <select class=\"input tagfilter\" name=\"cfilter${n}_\" size=\"12\" multiple id=\"${n}_$cat\" style=\"display:none;\"
- onchange=\"show_iblock('filter$((1+$n))')\">
- $(echo "$taglist" |sed -rn 's;^'"$cat"':(.*)$;<option>\1</option>;p')
- </select>"
- done)
- </p>"
+ cat <<-EOF
+ <input class="tabhandle" type="checkbox" id="filter$n" $([ $n = 0 ] && 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" checked><label for="pos$n" class="conjunction">Any</label>
+ <input type="radio" name="type$n" value="neg" id="neg$n"> <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">
+ $( {echo none; 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 = none ] && 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 -r 's;^[^:]+$;none:&;' |sed -rn 's;^'"$cat"':(.*)$;<option>\1</option>;p')
+ </select>
+ </div>
+ "
+ done)
+ </div>
+ </div>
+ EOF