Commit | Line | Data |
---|---|---|
460b9539 | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> |
2 | <!-- | |
3 | This file is part of DisOrder. | |
3225872d | 4 | Copyright (C) 2004-2008 Richard Kettlewell |
460b9539 | 5 | |
6 | This program is free software; you can redistribute it and/or modify | |
7 | it under the terms of the GNU General Public License as published by | |
8 | the Free Software Foundation; either version 2 of the License, or | |
9 | (at your option) any later version. | |
10 | ||
11 | This program is distributed in the hope that it will be useful, but | |
12 | WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 | General Public License for more details. | |
15 | ||
16 | You should have received a copy of the GNU General Public License | |
17 | along with this program; if not, write to the Free Software | |
18 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 | |
19 | USA | |
20 | --> | |
21 | <html> | |
22 | <head> | |
0d0253c9 | 23 | @stdhead{choose} |
460b9539 | 24 | </head> |
25 | <body> | |
0d0253c9 | 26 | @stdmenu{choose} |
e7ce7665 | 27 | <h1>@label{choose.title}</h1> |
328248ba | 28 | |
99955407 | 29 | @if{@eq{@label{menu.choosewhich}}{choosealpha}} |
48e472fa | 30 | { |
328248ba | 31 | <p class=choosealpha> |
3225872d | 32 | <a title="Directories starting with 'a'" |
54755335 | 33 | href="@url?action=choose&re=^(the )?a">A</a> | |
3225872d | 34 | <a title="Directories starting with 'b'" |
54755335 | 35 | href="@url?action=choose&re=^(the )?b">B</a> | |
3225872d | 36 | <a title="Directories starting with 'c'" |
54755335 | 37 | href="@url?action=choose&re=^(the )?c">C</a> | |
3225872d | 38 | <a title="Directories starting with 'd'" |
54755335 | 39 | href="@url?action=choose&re=^(the )?d">D</a> | |
3225872d | 40 | <a title="Directories starting with 'e'" |
54755335 | 41 | href="@url?action=choose&re=^(the )?e">E</a> | |
3225872d | 42 | <a title="Directories starting with 'f'" |
54755335 | 43 | href="@url?action=choose&re=^(the )?f">F</a> | |
3225872d | 44 | <a title="Directories starting with 'g'" |
54755335 | 45 | href="@url?action=choose&re=^(the )?g">G</a> | |
3225872d | 46 | <a title="Directories starting with 'h'" |
54755335 | 47 | href="@url?action=choose&re=^(the )?h">H</a> | |
3225872d | 48 | <a title="Directories starting with 'i'" |
54755335 | 49 | href="@url?action=choose&re=^(the )?i">I</a> | |
3225872d | 50 | <a title="Directories starting with 'j'" |
54755335 | 51 | href="@url?action=choose&re=^(the )?j">J</a> | |
3225872d | 52 | <a title="Directories starting with 'k'" |
54755335 | 53 | href="@url?action=choose&re=^(the )?k">K</a> | |
3225872d | 54 | <a title="Directories starting with 'l'" |
54755335 | 55 | href="@url?action=choose&re=^(the )?l">L</a> | |
3225872d | 56 | <a title="Directories starting with 'm'" |
54755335 | 57 | href="@url?action=choose&re=^(the )?m">M</a> | |
3225872d | 58 | <a title="Directories starting with 'n'" |
54755335 | 59 | href="@url?action=choose&re=^(the )?n">N</a> | |
3225872d | 60 | <a title="Directories starting with 'o'" |
54755335 | 61 | href="@url?action=choose&re=^(the )?o">O</a> | |
3225872d | 62 | <a title="Directories starting with 'p'" |
54755335 | 63 | href="@url?action=choose&re=^(the )?p">P</a> | |
3225872d | 64 | <a title="Directories starting with 'q'" |
54755335 | 65 | href="@url?action=choose&re=^(the )?q">Q</a> | |
3225872d | 66 | <a title="Directories starting with 'r'" |
54755335 | 67 | href="@url?action=choose&re=^(the )?r">R</a> | |
3225872d | 68 | <a title="Directories starting with 's'" |
54755335 | 69 | href="@url?action=choose&re=^(the )?s">S</a> | |
3225872d | 70 | <a title="Directories starting with 't'" |
54755335 | 71 | href="@url?action=choose&re=^(?!the [^t])t">T</a> | |
3225872d | 72 | <a title="Directories starting with 'u'" |
54755335 | 73 | href="@url?action=choose&re=^(the )?u">U</a> | |
3225872d | 74 | <a title="Directories starting with 'v'" |
54755335 | 75 | href="@url?action=choose&re=^(the )?v">V</a> | |
3225872d | 76 | <a title="Directories starting with 'w'" |
54755335 | 77 | href="@url?action=choose&re=^(the )?w">W</a> | |
3225872d | 78 | <a title="Directories starting with 'x'" |
54755335 | 79 | href="@url?action=choose&re=^(the )?x">X</a> | |
3225872d | 80 | <a title="Directories starting with 'y'" |
54755335 | 81 | href="@url?action=choose&re=^(the )?y">Y</a> | |
3225872d | 82 | <a title="Directories starting with 'z'" |
54755335 | 83 | href="@url?action=choose&re=^(the )?z">Z</a> | |
3225872d | 84 | <a title="Directories starting with anything else" |
54755335 | 85 | href="@url?action=choose&re=^[^a-z]">*</a> |
328248ba | 86 | </p> |
48e472fa RK |
87 | } |
88 | ||
b43dc0cc RK |
89 | @# Always have a search form |
90 | <form class=search | |
91 | action="@url" | |
92 | method=POST | |
93 | enctype="multipart/form-data" accept-charset=utf-8> | |
94 | <p class=search>Enter search terms: | |
95 | <input class=query name=query type=text value="@argq{query}" | |
96 | size=50> | |
8b15f02d | 97 | @submit{@label{search.search}} |
e7ce7665 | 98 | <input name=action type=hidden value=choose> |
54755335 RK |
99 | <a class=button |
100 | href="@url?action=choose"> | |
101 | @label{search.clear} | |
102 | </a> | |
b43dc0cc RK |
103 | </p> |
104 | </form> | |
105 | ||
106 | @if{@ne{@arg{query}}{}} | |
54755335 | 107 | {@# There's a search query |
35248665 RK |
108 | <table class=search> |
109 | <tr class=headings> | |
110 | <th class=artist>@label{heading.artist}</th> | |
111 | <th class=album>@label{heading.album}</th> | |
112 | <th class=title>@label{heading.title}</th> | |
113 | <th class=length>@label{heading.length}</th> | |
114 | @right{prefs}{ | |
115 | <th class=button> </th>} | |
116 | </tr> | |
117 | @search{@arg{query}}{ | |
118 | <tr class=@parity> | |
119 | <td class=artist>@martist{search}{@track}</td> | |
120 | <td class=album>@malbum{search}{@track}</td> | |
e7ce7665 RK |
121 | <td class=title>@mtitleplay{search}{@track}</td> |
122 | <td class=length>@length{@track}</td> | |
35248665 RK |
123 | @right{prefs}{ |
124 | <td class=imgbutton> | |
125 | <a class=imgbutton | |
02eaa49d | 126 | href="@url?action=prefs&track=@urlquote{@track}"> |
35248665 RK |
127 | <img class=button src="@image{edit}" |
128 | title="@label{choose.prefsverbose}" | |
129 | alt="@label{choose.prefs}"> | |
130 | </a> | |
131 | </td> | |
132 | </tr>} | |
133 | } | |
134 | </table>} | |
54755335 RK |
135 | {@# No search query |
136 | ||
137 | @# We have the following possible cases: | |
138 | @# choose.which dir re result | |
139 | @# choose "" - Ask for top level | |
140 | @# choose "" present Ask for top level with re applied | |
141 | @# choose present - Ask for dir | |
142 | @# choose present re Ask for dir with re applied | |
143 | @# choosealpha "" - Nothing | |
144 | @# choosealpha "" present Ask for top level with re applied | |
145 | @# choosealpha present - Ask for dir | |
146 | @# choosealpha present re Ask for dir with re applied | |
147 | @# | |
148 | @# So in fact the only oddity is choosealpha + no dir + no re. | |
149 | @# | |
150 | @# NB we don't really bother distinguishing between re being empty or absent, | |
151 | @# and the server deliberately cooperates in this. | |
b43dc0cc | 152 | |
f4a26919 RK |
153 | @if{@ne{@arg{dir}}{}}{ |
154 | <p class=directoryname>@# | |
155 | @breadcrumbs{@arg{dir}} | |
156 | {/<a href="@url?action=choose&dir=@urlquote{@dir}">@# | |
157 | @basename{@dir}</a>}:</p>} | |
48e472fa | 158 | |
54755335 RK |
159 | @# <p>dir=[@arg{dir}]<br>re=[@arg{re}]<br>which=@label{choose.which}</p> |
160 | ||
161 | @if{@or{@ne{@label{menu.choosewhich}}{choosealpha}} | |
162 | {@ne{@arg{dir}}{}} | |
163 | {@ne{@arg{re}}{}}} | |
164 | {@# | |
48e472fa RK |
165 | <div class=directories> |
166 | <div class=filesdirectories> | |
167 | @dirs{@arg{dir}}{@arg{re}}{ | |
168 | <p class=entry> | |
169 | <a href="@url?action=choose&dir=@urlquote{@track}"> | |
170 | <img class=button src="@image{directory}" alt=""> | |
171 | @display | |
172 | </a> | |
173 | </p>} | |
174 | </div> | |
175 | </div> | |
460b9539 | 176 | |
48e472fa | 177 | @define{sometracks}{template}{} |
460b9539 | 178 | |
48e472fa RK |
179 | <div class=files> |
180 | <div class=filesdirectories> | |
e7ce7665 | 181 | @tracks{@arg{dir}}{@arg{re}}{ |
48e472fa RK |
182 | <p class=entry> |
183 | @define{sometracks}{template}{@template}@# | |
e7ce7665 | 184 | @right{prefs}{ |
48e472fa | 185 | <a class=imgprefs |
02eaa49d | 186 | href="@url?action=prefs&track=@urlquote{@resolve{@track}}"> |
b43dc0cc RK |
187 | <img class=button |
188 | src="@image{edit}" | |
e7ce7665 RK |
189 | title="@label{choose.prefsverbose}" |
190 | alt="@label{choose.prefs}"> | |
48e472fa RK |
191 | </a> |
192 | }@# | |
02eaa49d | 193 | <a href="@url?action=play&track=@urlquote{@track}&back=@urlquote{@thisurl}" |
48e472fa RK |
194 | title="@label{choose.play}"> |
195 | @display | |
196 | </a> | |
197 | @if{@eq{@trackstate{@track}}{playing}} | |
198 | {[<b>playing</b>]} | |
199 | @if{@eq{@trackstate{@track}}{queued}} | |
200 | {[<b>queued</b>]} | |
201 | </p>} | |
202 | @sometracks{ | |
203 | <p class=all> | |
204 | @right{prefs}{ | |
205 | <a class=imgprefs | |
206 | href="@url?action=prefs&dir=@urlquote{@arg{dir}}"> | |
207 | <img class=button | |
208 | src="@image{edit}" | |
e7ce7665 RK |
209 | title="@label{choose.allprefsverbose}" |
210 | alt="@label{choose.allprefs}"> | |
48e472fa RK |
211 | </a>} |
212 | <a class=button | |
54755335 | 213 | href="@url?action=play&dir=@urlquote{@arg{dir}}&back=@urlquote{@thisurl}"> |
48e472fa RK |
214 | @label{choose.playall} |
215 | </a> | |
216 | </p>} | |
217 | </div> | |
218 | </div> | |
54755335 | 219 | } |
b43dc0cc RK |
220 | } |
221 | ||
0d0253c9 | 222 | @credits |
460b9539 | 223 | </body> |
224 | </html> | |
0d0253c9 | 225 | @discard{ |
460b9539 | 226 | Local variables: |
227 | mode:sgml | |
228 | sgml-always-quote-attributes:nil | |
229 | sgml-indent-step:1 | |
230 | sgml-indent-data:t | |
0d0253c9 RK |
231 | indent-tabs-mode:nil |
232 | fill-column:79 | |
460b9539 | 233 | End: |
0d0253c9 | 234 | }@# |