| 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> |
| 2 | <!-- |
| 3 | This file is part of DisOrder. |
| 4 | Copyright (C) 2004, 2005 Richard Kettlewell |
| 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> |
| 23 | @include:stdhead@ |
| 24 | <title>@if{@isplaying@}{@playing{@part:title@}@}{@label:playing.title@}@</title> |
| 25 | </head> |
| 26 | <body> |
| 27 | @include{@label{menu}@}@ |
| 28 | <h1 class=title>@label:playing.title@</h1> |
| 29 | |
| 30 | @#{extra control buttons for the management page}@ |
| 31 | @if{@arg:mgmt@}{ |
| 32 | <p class=mgmt> |
| 33 | @if{@paused@}{ |
| 34 | <!-- paused --> |
| 35 | <span class=button> |
| 36 | <a class=button |
| 37 | href="@url@?action=resume&nonce=@nonce@&mgmt=true" |
| 38 | title="@label:playing.resumeverbose@">@label:playing.pause@</a> |
| 39 | </a> |
| 40 | </span> |
| 41 | <img width=16 height=16 class=imgbutton src="@label:images.enabled@"> |
| 42 | }{ |
| 43 | <!-- not paused --> |
| 44 | <span class=button> |
| 45 | <a class=button |
| 46 | href="@url@?action=pause&nonce=@nonce@&mgmt=true" |
| 47 | title="@label:playing.pauseverbose@">@label:playing.pause@</a> |
| 48 | </a> |
| 49 | </span> |
| 50 | <img width=16 height=16 class=imgbutton src="@label:images.disabled@"> |
| 51 | }@ |
| 52 | @if{@random-enabled@}{ |
| 53 | <!-- random played enabled --> |
| 54 | <span class=button> |
| 55 | <a class=button |
| 56 | href="@url@?action=random-disable&nonce=@nonce@&mgmt=true" |
| 57 | title="@label:playing.randomdisableverbose@">@label:playing.random@</a> |
| 58 | </a> |
| 59 | </span> |
| 60 | <img width=16 height=16 class=imgbutton src="@label:images.enabled@"> |
| 61 | }{ |
| 62 | <!-- random played disabled --> |
| 63 | <span class=button> |
| 64 | <a class=button |
| 65 | href="@url@?action=random-enable&nonce=@nonce@&mgmt=true" |
| 66 | title="@label:playing.randomenableverbose@">@label:playing.random@</a> |
| 67 | </a> |
| 68 | </span> |
| 69 | <img width=16 height=16 class=imgbutton src="@label:images.disabled@"> |
| 70 | }@ |
| 71 | @if{@enabled@}{ |
| 72 | <!-- playing enabled --> |
| 73 | <span class=button> |
| 74 | <a class=button |
| 75 | href="@url@?action=disable&nonce=@nonce@&mgmt=true" |
| 76 | title="@label:playing.disableverbose@">@label:playing.playing@</a> |
| 77 | </a> |
| 78 | </span> |
| 79 | <img width=16 height=16 class=imgbutton src="@label:images.enabled@"> |
| 80 | }{ |
| 81 | <!-- playing disabled --> |
| 82 | <span class=button> |
| 83 | <a class=button |
| 84 | href="@url@?action=enable&nonce=@nonce@&mgmt=true" |
| 85 | title="@label:playing.enableverbose@">@label:playing.playing@</a> |
| 86 | </a> |
| 87 | </span> |
| 88 | <img width=16 height=16 class=imgbutton src="@label:images.disabled@"> |
| 89 | }@ |
| 90 | <form class=volume action="@url@" method=POST |
| 91 | enctype="multipart/form-data" accept-charset=utf-8> |
| 92 | <span class=volume> |
| 93 | @label:playing.volume@ |
| 94 | <a class=imgbutton |
| 95 | href="@url@?action=volume&delta=-@label:volume.resolution@&back=@urlquote{@thisurl@?mgmt=true}@"> |
| 96 | <img class=button src="@label:images.down@" |
| 97 | alt="@label:volume.reduce@" title="@label:volume.reduceverbose@"> |
| 98 | </a> |
| 99 | @label:volume.left@ <input size=3 name=left type=text value="@volume:left@"> |
| 100 | @label:volume.right@ <input size=3 name=right type=text value="@volume:right@"> |
| 101 | <input name=nonce type=hidden value="@nonce@"> |
| 102 | <input name=back type=hidden value="@thisurl@?mgmt=true"> |
| 103 | <button class=search name=action type=submit value=volume> |
| 104 | @label:volume.set@ |
| 105 | </button> |
| 106 | <a class=imgbutton |
| 107 | href="@url@?action=volume&delta=@label:volume.resolution@&back=@urlquote{@thisurl@?mgmt=true}@"> |
| 108 | <img class=button src="@label:images.up@" |
| 109 | alt="@label:volume.increase@" title="@label:volume.increaseverbose@"> |
| 110 | </a> |
| 111 | </form> |
| 112 | </span> |
| 113 | }@ |
| 114 | |
| 115 | @#{only display the table if there is something to put in it}@ |
| 116 | @if{@or{@isplaying@}{@isqueue@}@}{ |
| 117 | <table class=playing> |
| 118 | <tr class=headings> |
| 119 | <th class=when>@label:heading.when@</th> |
| 120 | <th class=who>@label:heading.who@</th> |
| 121 | <th class=artist>@label:heading.artist@</th> |
| 122 | <th class=album>@label:heading.album@</th> |
| 123 | <th class=title>@label:heading.title@</th> |
| 124 | <th class=length>@label:heading.length@</th> |
| 125 | <th class=button> </th> |
| 126 | @if{@arg:mgmt@}{ |
| 127 | <th class=imgbutton> </th> |
| 128 | <th class=imgbutton> </th> |
| 129 | <th class=imgbutton> </th> |
| 130 | <th class=imgbutton> </th> |
| 131 | }@ |
| 132 | </tr> |
| 133 | @if{@isplaying@}{ |
| 134 | <tr class=nowplaying> |
| 135 | <td colspan=@if{@arg:mgmt@}{11}{7}@ class=nowplaying>@label:playing.now@</td> |
| 136 | </tr> |
| 137 | @playing{ |
| 138 | <tr class=playing> |
| 139 | <td class=when>@when@</td> |
| 140 | <td class=who>@if{@eq{@who@}{}@}{@if{@eq{@state@}{random}@}{@label:playing.randomtrack@}{ }@}{@who@}@</td> |
| 141 | <td class=artist><a class=directory |
| 142 | href="@url@?action=choose&directory=@urlquote{@dirname{@dirname{@part:path@}@}@}@" |
| 143 | title="@label:playing.artistverbose@">@part:artist@</a></td> |
| 144 | <td class=album><a class=directory |
| 145 | href="@url@?action=choose&directory=@urlquote{@dirname{@part:path@}@}@" |
| 146 | title="@label:playing.albumverbose@">@part:album@</a></td> |
| 147 | <td class=title>@part:title@</td> |
| 148 | <td class=length>@length@</td> |
| 149 | <td class=imgbutton>@if{@scratchable@}{<a class=imgbutton |
| 150 | href="@url@?action=scratch&nonce=@nonce@&id=@id@&mgmt=@arg:mgmt@"><img |
| 151 | class=button src="@label:images.scratch@" |
| 152 | title="@label:playing.scratchverbose@" |
| 153 | alt="@label:playing.scratch@"></a>}{<img |
| 154 | class=button src="@label:images.noscratch@" |
| 155 | title="@label:playing.scratchverbose@" |
| 156 | alt="@label:playing.scratch@">}@</td> |
| 157 | @if{@arg:mgmt@}{ |
| 158 | <td class=imgbutton> </td> |
| 159 | <td class=imgbutton> </td> |
| 160 | <td class=imgbutton> </td> |
| 161 | <td class=imgbutton> </td> |
| 162 | }@ |
| 163 | </tr> |
| 164 | }@}@ |
| 165 | @if{@isqueue@}{ |
| 166 | <tr class=next> |
| 167 | <td colspan=@if{@arg:mgmt@}{11}{7}@ class=next>@label:playing.next@</td> |
| 168 | </tr> |
| 169 | @queue{ |
| 170 | <tr class=@parity@> |
| 171 | <td class=when>@when@</td> |
| 172 | <td class=who>@if{@eq{@who@}{}@}{@if{@eq{@state@}{random}@}{@label:queue.randomtrack@}{ }@}{@who@}@</td> |
| 173 | <td class=artist><a class=directory href="@url@?action=choose&directory=@urlquote{@dirname{@dirname{@part:path@}@}@}@">@part:artist@</a></td> |
| 174 | <td class=album><a class=directory href="@url@?action=choose&directory=@urlquote{@dirname{@part:path@}@}@">@part:album@</a></td> |
| 175 | <td class=title>@part:title@</td> |
| 176 | <td class=length>@length@</td> |
| 177 | <td class=imgbutton>@if{@removable@}{<a class=imgbutton |
| 178 | href="@url@?action=remove&nonce=@nonce@&id=@id@&mgmt=@arg:mgmt@"><img |
| 179 | class=button src="@label:images.scratch@" |
| 180 | title="@label:playing.removeverbose@" |
| 181 | alt="@label:playing.remove@"></a>}{ }@</td> |
| 182 | @if{@arg:mgmt@}{ |
| 183 | @if{@isfirst@} |
| 184 | {<td class=imgbutton> |
| 185 | <img |
| 186 | class=button src="@label:images.noupall@" |
| 187 | title="@label:playing.upallverbose@" alt=""> |
| 188 | <td class=imgbutton> |
| 189 | <img |
| 190 | class=button src="@label:images.noup@" |
| 191 | title="@label:playing.upverbose@" alt="">} |
| 192 | {<td class=imgbutton> |
| 193 | <a class=imgbutton |
| 194 | href="@url@?action=move&nonce=@nonce@&id=@id@&delta=2147483647&mgmt=true"><img |
| 195 | class=button src="@label:images.upall@" |
| 196 | title="@label:playing.upallverbose@" |
| 197 | alt="@label:playing.upall@"></a> |
| 198 | <td class=imgbutton> |
| 199 | <a class=imgbutton |
| 200 | href="@url@?action=move&nonce=@nonce@&id=@id@&delta=1&mgmt=true"><img |
| 201 | class=button src="@label:images.up@" |
| 202 | title="@label:playing.upverbose@" alt="@label:playing.up@"></a>}@ |
| 203 | @if{@islast@} |
| 204 | {<td class=imgbutton> |
| 205 | <img |
| 206 | class=button src="@label:images.nodown@" |
| 207 | title="@label:playing.downverbose@" alt=""> |
| 208 | <td class=imgbutton> |
| 209 | <img |
| 210 | class=button src="@label:images.nodownall@" |
| 211 | title="@label:playing.downallverbose@" alt="">} |
| 212 | {<td class=imgbutton> |
| 213 | <a class=imgbutton href="@url@?action=move&nonce=@nonce@&id=@id@&delta=-1&mgmt=true"><img |
| 214 | class=button src="@label:images.down@" |
| 215 | title="@label:playing.downverbose@" |
| 216 | alt="@label:playing.down@"> |
| 217 | <td class=imgbutton> |
| 218 | <a class=imgbutton href="@url@?action=move&nonce=@nonce@&id=@id@&delta=-2147483647&mgmt=true"><img |
| 219 | class=button src="@label:images.downall@" |
| 220 | title="@label:playing.downallverbose@" |
| 221 | alt="@label:playing.downall@">}@</a> |
| 222 | }@ |
| 223 | </tr> |
| 224 | }@}@ |
| 225 | </table> |
| 226 | }@ |
| 227 | |
| 228 | @include{@label{menu}@end}@ |
| 229 | </body> |
| 230 | </html> |
| 231 | @@ |
| 232 | <!-- |
| 233 | Local variables: |
| 234 | mode:sgml |
| 235 | sgml-always-quote-attributes:nil |
| 236 | sgml-indent-step:1 |
| 237 | sgml-indent-data:t |
| 238 | End: |
| 239 | --> |