]> git.plutz.net Git - serve0/blob - templates/filterdiag.html.sh
html/css cleanup
[serve0] / templates / filterdiag.html.sh
1 #!/bin/zsh    
2
3 cat <<FilterEnd
4   <form class="panel" id="search" style="display: block;"
5         action="?" method="get" accept-charset="UTF-8">
6     <input type="text" name="s" value="$search" placeholder="Search">
7
8     <span class="label order">Order by:</span>
9     <select class="order" size="1" name="o">
10       <option>Name</option>
11       <option>Date</option>
12       <option>Length</option>
13     </select>
14     <input type="submit" name="submit" value="Find">
15
16     <a class="panel clearsearch" href="?">Clear All</a>
17     <a class="panel advanced show" href="#" onclick="javascript:hide('search');show_block('advfilter');">Advanced</a>
18
19     <div class="pagination_nav">
20       <span class="label">Page:</span>
21       <a href="?${page_prev}">&lt;&lt;</a>
22       <a href="?${page_this}">$(($page + 1))</a>
23       <a href="?${page_next}">&gt;&gt;</a>
24     </div>
25   </form>
26
27   <form class="panel" id="advfilter" style="display: none;"
28         action="?action=filter" method="post" accept-charset="UTF-8">
29     <input disabled type="text" name="s" value="$search" placeholder="Search">
30     <input disabled type="submit" name="submit" value="Find">
31
32     <a class="panel clearsearch" href="?">Clear All</a>
33     <a class="panel advanced hide" href="#" 
34      onclick="javascript:hide('advfilter');$(for n in {1..9}; do echo "hide('filter$n');"; done)show_block('search')"
35     >Hide</a>
36     <hr>
37
38     <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>
39
40   $(for n in {0..9}; do
41     hideall="$(sed -rn "s;^([^:]+):.*$;hide('${n}_\\1')\\;;p" <<<"$taglist" |sort -u)hide('${n}_none');"
42     echo "
43     <div class="filter" id=\"filter$n\" $([ $n -gt 0 ] && echo 'style="display:none;"')>
44       <span class=\"help conjunction\">and</span>
45       <input type=\"radio\" name=\"type$n\" value=\"pos\" checked><span class=\"label conjunction\">Any</span>
46       <input type=\"radio\" name=\"type$n\" value=\"neg\"><span class=\"label conjunction\">None</span>
47       <span class=\"help\">of the tags selected here:</span>
48       <span class=\"label category\">Category:</span>
49       <select class=\"input category\" name=\"category\" size=\"1\" onchange=\"${hideall}show_block('${n}_'+this.options[this.options.selectedIndex].value)\">
50         <option>none</option>
51         $(sed -rn 's;^([^:]+):.*$;<option>\1</option>;p' <<<"$taglist" |sort -u)
52       </select>
53       <select class=\"input tagfilter\" name=\"filter\" size=\"12\" multiple id=\"${n}_none\"
54               onchange=\"show_iblock('filter$((1+$n))')\">
55          $(sed -rn 's;^([^:]+)$;<option>\1</option>;p' <<<"$taglist")
56       </select>
57       $(sed -rn 's;^([^:]+):.*$;\1;p' <<<"$taglist" |sort -u |while read cat; do echo "
58       <select class=\"input tagfilter\" name=\"cfilter\" size=\"12\" multiple id=\"${n}_$cat\" style=\"display:none;\"
59               onchange=\"show_iblock('filter$((1+$n))')\">
60          $(sed -rn "s;^$cat:(.*)$;<option>\\1</option>;p" <<<"$taglist")
61       </select>"
62       done)
63     </div>"
64   done)
65
66     <div class="filter final">
67       <span class="label order">Order by:</span>
68       <select class="edit order" size="1" name="o">
69         <option>Name</option>
70         <option>Date</option>
71         <option>Length</option>
72       </select>
73       <input type="submit" value="Filter!">
74     </div>
75
76     <div class="quicklinks">
77       <span class="label quicklinks">Most recent</span>
78       $(output=''
79         tac ${_DATA}/meta/recent |while [ "$(echo "$output" |wc -l)" -lt 10 ]; do
80           read line
81           line="<a href="$line">$line</a>"
82           echo "$output" |grep -qF "$line" || output="$output$line\n"
83         done
84         echo $output
85       )
86     </div>
87   </form>
88 FilterEnd
89
90 # vi:set filetype=html:
91