Patrick's shiny new web interface

This commit is contained in:
Ron Pedde 2005-11-14 05:41:18 +00:00
parent c52a0c9986
commit 341b3a750d
15 changed files with 373 additions and 1241 deletions

View File

@ -112,6 +112,7 @@ Diego Penneno
Patrick Kolla
* Popup "wizard" for smart playlists
* Stylish new web interface look.. woohoo!
slomo (from the forums)
* Musepack tag parsing support.

View File

@ -112,6 +112,7 @@ Diego Penneno
Patrick Kolla
* Popup "wizard" for smart playlists
* Stylish new web interface look.. woohoo!
slomo (from the forums)
* Musepack tag parsing support.

View File

@ -1,11 +1,8 @@
@include hdr.html@
<h1>ASPL License</h1>
<div class="stx">
<PRE>
<p class="license"><pre>
@include aspl-license.txt@
</PRE>
</pre></p>
@include ftr.html@

View File

@ -2,98 +2,104 @@
<h1>Configuration</h1>
<p>
<p class="description">
Note that the following fields will only be editable if the
configuration file itself is writable by the mt-daapd server. If you
make changes to these settings, they will not be reflected in the
running server. The server must be restarted for these values to
take effect.
</p>
<div class="stx">
<form method="post" action="/config-update.html">
<table>
<tr>
<td>Web Root</td>
<td><input type="text" @READONLY@ name="WEB_ROOT" size="80" value="@WEB_ROOT@" /></td>
</tr>
<tr>
<td>Playlist File</td>
<td><input type="text" @READONLY@ name="PLAYLIST" size="80" value="@PLAYLIST@" /></td>
</tr>
<tr>
<td>MP3 Dir</td>
<td><input type="text" @READONLY@ name="MP3_DIR" size="80" value="@MP3_DIR@" /></td>
</tr>
<tr>
<td>Database Dir</td>
<td><input type="text" @READONLY@ name="DB_DIR" size="80" value="@DB_DIR@" /></td>
</tr>
<tr>
<td>Port</td>
<td><input type="text" @READONLY@ name="PORT" value="@PORT@" /></td>
</tr>
<tr>
<td>Server Name</td>
<td><input type="text" @READONLY@ name="SERVERNAME" value="@SERVERNAME@" /></td>
</tr>
<tr>
<td>Logfile</td>
<td><input type="text" @READONLY@ name="LOGFILE" value="@LOGFILE@" /></td>
</tr>
<tr>
<td>Art Filename</td>
<td><input type="text" @READONLY@ name="ART_FILENAME" value="@ART_FILENAME@" /></td>
</tr>
<tr>
<td>Run As</td>
<td><input type="text" @READONLY@ name="RUNAS" value="@RUNAS@" /></td>
</tr>
<tr>
<td>Admin Password</td>
<td><input type="text" @READONLY@ name="ADMIN_PW" value="@ADMIN_PW@" /></td>
</tr>
<tr>
<td>MP3 Password</td>
<td><input type="text" @READONLY@ name="PASSWORD" value="@PASSWORD@" /></td>
</tr>
<tr>
<td>Extensions</td>
<td><input type="text" @READONLY@ name="EXTENSIONS" value="@EXTENSIONS@" /></td>
</tr>
<tr>
<td>Rescan Interval</td>
<td><input type="text" @READONLY@ name="RESCAN_INTERVAL" value="@RESCAN_INTERVAL@" /></td>
</tr>
<tr>
<td>Scan type</td>
<td><input type="text" @READONLY@ name="SCAN_TYPE" value="@SCAN_TYPE@" /></td>
</tr>
<tr>
<td>Always Scan</td>
<td><input type="text" @READONLY@ name="ALWAYS_SCAN" value="@ALWAYS_SCAN@" /></td>
</tr>
<tr>
<td>Compress</td>
<td><input type="text" @READONLY@ name="COMPRESS" value="@COMPRESS@" /></td>
</tr>
<tr>
<td>Process .m3u Files</td>
<td><input type="text" @READONLY@ name="PROCESS_M3U" value="@PROCESS_M3U@" /></td>
</tr>
take effect.</p>
<form method="post" action="/config-update.html">
<table>
<tr>
<td>Compilation Directories</td>
<td><input type="text" @READONLY@ name="COMPDIRS" value="@COMPDIRS@" /></td>
<th>mt-daapd.conf</th>
<th class="config"><input type="submit" name="SUBMIT" value="Submit"/></th>
</tr>
<tr>
<td>Debug Level</td>
<td><input type="text" @READONLY@ name="DEBUGLEVEL" value="@DEBUGLEVEL@" /></td>
<td class="configname">Web Root</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="WEB_ROOT" size="80" value="@WEB_ROOT@" /></td>
</tr>
</table>
<div><input type="submit" name="SUBMIT" value="Submit" /></div>
</form>
</div>
<tr>
<td class="configname">Playlist File</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="PLAYLIST" size="80" value="@PLAYLIST@" /></td>
</tr>
<tr>
<td class="configname">MP3 Directory</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="MP3_DIR" size="80" value="@MP3_DIR@" /></td>
</tr>
<tr>
<td class="configname">Database Directory</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="DB_DIR" size="80" value="@DB_DIR@" /></td>
</tr>
<tr>
<td class="configname">Compilation Directories</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="COMPDIRS" size="80" value="@COMPDIRS@" /></td>
</tr>
<tr>
<td class="configname">Logfile</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="LOGFILE" size="80" value="@LOGFILE@" /></td>
</tr>
<tr>
<td class="configname">Art Filename</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="ART_FILENAME" size="80" value="@ART_FILENAME@" /></td>
</tr>
<tr>
<td class="configname">Port</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="PORT" value="@PORT@" />
&nbsp;The port the server should run at; default is 3689.</td>
</tr>
<tr>
<td class="configname">Server Name</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="SERVERNAME" value="@SERVERNAME@" />
&nbsp;the name iTunes and other daap clients should see.</td>
</tr>
<tr>
<td class="configname">Run As</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="RUNAS" value="@RUNAS@" /></td>
</tr>
<tr>
<td class="configname">Admin Password</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="ADMIN_PW" value="@ADMIN_PW@" />
&nbsp;The password for this administration interface.</td>
</tr>
<tr>
<td class="configname">MP3 Password</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="PASSWORD" value="@PASSWORD@" />
&nbsp;The password clients need to access this server.</td>
</tr>
<tr>
<td class="configname">Extensions</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="EXTENSIONS" value="@EXTENSIONS@" /></td>
</tr>
<tr>
<td class="configname">Rescan Interval</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="RESCAN_INTERVAL" value="@RESCAN_INTERVAL@" />
&nbsp;How often should mt-daapd look for new files? In seconds.</td>
</tr>
<tr>
<td class="configname">Scan Type</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="SCAN_TYPE" value="@SCAN_TYPE@" /></td>
</tr>
<tr>
<td class="configname">Always Scan</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="ALWAYS_SCAN" value="@ALWAYS_SCAN@" /></td>
</tr>
<tr>
<td class="configname">Compress</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="COMPRESS" value="@COMPRESS@" />
&nbsp;Should browsing data be compressed on the way to the client?</td>
</tr>
<tr>
<td class="configname">Process .m3u Files</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="PROCESS_M3U" value="@PROCESS_M3U@" />
Should m3u files be processed as playlists?</td>
</tr>
<tr>
<td class="configname">Debug Level</td>
<td class="configdata"><input class="text" type="text" @READONLY@ name="DEBUGLEVEL" value="@DEBUGLEVEL@" />
&nbsp;Possible values are 0 to 9, 9 being the most detailed debug level.</td>
</tr>
</table>
</form>
@include ftr.html@

View File

@ -2,76 +2,104 @@
<h1>Feedback</h1>
<div class="stx">
<p class="description">
Here you can send feedback on your mt-daapd installation to the developer.
</p>
<form action="http://www.pedde.com/mt-daapd/register.php" method="post">
<table><tr>
<th>Feedback</th>
<th><input type="submit" value="Leave Feedback" /></th>
</th>
</tr>
<table>
<tr valign="top">
<th>Works?</th>
<td><input type="checkbox" name="works" value="CHECKED" checked="checked" /></td>
<td>
<tr>
<td class="feedbackname" rowspan="2">Works?</td>
<td class="feedbacktext">
The most important question. Did this version work for you?
If not, uncheck the box, and put an explanation in the NOTES
entry below.
</td>
</tr>
<tr>
<td class="feedbackdata"><input class="feedbackfield" type="checkbox" name="works" value="CHECKED" checked="checked" /></td>
</tr>
<tr valign="top">
<th>Version</th>
<td><input type="text" name="version" value="@VERSION@" /></td>
<td>
<tr>
<td class="feedbackname" rowspan="2">Version</td>
<td class="feedbacktext">
This is the version of mt-daapd you are running. If you are using a
public release, use the version number (0.1.0, 0.1.1, etc). If it is
manually checked out of cvs, use 'cvs', if it is a nightly snapshot,
use the snapshot name, for example: 'cvs-20040328'.
</td>
</tr>
<tr>
<td class="feedbackdata"><input class="feedbackfield" type="text" size="40" name="version" value="@VERSION@" /></td>
</tr>
<tr valign="top">
<th>System</th>
<td><input type="text" name="system" value="@SYSTEM@" /></td>
<td>
<tr>
<td class="feedbackname" rowspan="2">System</td>
<td class="feedbacktext">
This is the operating system and version you are running.
Use something like "Sparc Solaris 9" or "x86 Linux 2.6.3" or
"Mac OSX 10.3" or something to help identify what platform and
version you are running.
</td>
</tr>
<tr valign="top">
<th>Compile args</th>
<td><input type="text" name="compile" value="@FLAGS@" /></td>
<td>
If you used any compile flags, that would be helpful. Examples
might include '--with-gdbm', or '--enable-howl' or something else.
</td>
<tr>
<td class="feedbackdata"><input class="feedbackfield" type="text" size="40" name="system" value="@SYSTEM@" /></td>
</tr>
<tr valign="top">
<th>Notes</th>
<td><textarea rows="3" cols="40" name="notes"></textarea></td>
<td>
<tr>
<td class="feedbackname" rowspan="2">Compile arguments</td>
<td class="feedbacktext">
If you used any compile flags, that would be helpful. Examples might include
'--with-gdbm', or '--enable-howl' or something else.
</td>
</tr>
<tr>
<td class="feedbackdata"><input class="feedbackfield" type="text" size="40" name="compile" value="@FLAGS@" /></td>
</tr>
<tr>
<td class="feedbackname" rowspan="2">Notes</td>
<td class="feedbacktext">
If it didn't work for you, or if you just want to make a
suggestion, leave those notes here. Remember that these
notes are publicly viewable.
</td>
</tr>
<tr>
<td class="feedbackdata"><textarea class="feedbackfield" rows="3" cols="40" name="notes"></textarea></td>
</tr>
<tr valign="top">
<th>Rating</th>
<td><input type="text" name="rating" /></td>
<td>
<tr>
<td class="feedbackname" rowspan="2">Rating</td>
<td class="feedbacktext">
Just for fun, give this release a rating from 1 to 10, 1 being
so bad it started your computer on fire, 10 meaning works so
well, it even made your breath fresher.
</td>
</tr>
<tr>
<td class="feedbackdata">
<select class="feedbackfield" name="rating">
<option value="10">10 - it made my breath fresher</option>
<option value="9">9</option>
<option value="8">8</option>
<option value="7">7</option>
<option value="6" selected="SELECTED">6 - we're gonna wait and see</option>
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1 - it set my computer on fire</option>
</select>
</td>
</tr>
</table>
<div><input type="submit" value="Leave Feedback" /></div>
</form>
</div>
@include ftr.html@

View File

@ -1,8 +1,3 @@
</div>
</div>
</td>
</tr>
</tbody>
</table>
</body>
</html>
</td></tr></table>
</body></html>

View File

@ -2,10 +2,8 @@
<h1>GPL License</h1>
<div class="stx">
<PRE>
<p class="license"><pre>
@include gpl-license.txt@
</PRE>
</pre></p>
@include ftr.html@

View File

@ -1,131 +1,46 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>.: m t - d a a p d :.</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
<title>mt-daapd</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="stylesheet" type="text/css" href="mt-daapd.css" />
@ispage status.html:<meta http-equiv="refresh" content="10" />:@
@ispage smart.html:<script type="text/javascript" src="smart.js"></script>:@
@ispage playlist.html:<script type="text/javascript" src="playlist.js"></script>:@
</head>
@ispage smart.html:<script type="text/javascript" src="smart.js" />:@
<script type="text/javascript" src="mt-daapd.js" />
</head>
<body @ispage playlist.html:onload="init();":@ @ispage smart.html:onload="init()":@>
<body @ispage playlist.html:onload="init()":@ @ispage smart.html:onload="init()":@>
@ispage playlist.html:<!--:@
<div>
<table border="0" width="100%">
<tr><td style="width: 90%;">&nbsp;</td><td align="center"><img src="mt-daapd.png" alt="mt-daap logo"/>
<br />Version @VERSION@</td></tr>
</table>
</div>
@ispage playlist.html:-->:@
<!-- <hr size="" class="netscape4"> -->
<div class="tabs">
<a href="index.html" class="@ispage index.html:selected:plain@">Home</a>
<a href="config.html" class="@ispage config.html:selected:plain@">Config</a>
<a href="status.html" class="@ispage status.html:selected:plain@">Status</a>
<!-- <a href="playlist.html" class="@ispage
playlist.html:selected:plain@">Playlist</a> -->
<a href="feedback.html" class="@ispage
feedback.html:selected:plain@">Feedback</a>
<a href="smart.html" class="@ispage smart.html:selected:plain@">Smart</a>
<a href="thanks.html" class="@ispage thanks.html:selected:plain@">Thanks</a>
</div>
<table class="main" border="0" width="100%" summary="Main navigation"><tr>
<td class="navi" width="182">
<div class="personalBar">&nbsp;
<span>@session-count@ Connected Users</span>
</div>
<img src="mt-daapd.png" width="182" height="71" alt="mt-daap logo"/>
<div class="pathBar">
Welcome, @user@
</div>
<div class="ministatus">Version @VERSION@</div>
<table class="columns">
<tbody>
<tr>
@ispage playlist.html:<!--:@
<td class="left">
<div class="box">
<h5>Links</h5>
<div class="body">
<div style="white-space: nowrap;">
<span>
&nbsp;
<a href="http://mt-daapd.sourceforge.net"
class="plain" title="Home Page">
<div class="naviheader">Welcome, @user@</div>
<div class="navibox">
<div class="navilink"><a class="@ispage index.html:naviselected:navi@" href="index.html">home</a></div>
<div class="navilink"><a class="@ispage config.html:naviselected:navi@" href="config.html">config</a></div>
<div class="navilink"><a class="@ispage status.html:naviselected:navi@" href="status.html">status</a></div>
<div class="navilink"><a class="@ispage smart.html:naviselected:navi@" href="smart.html">smart</a></div>
<div class="navilink"><a class="@ispage feedback.html:naviselected:navi@" href="feedback.html">feedback</a></div>
<div class="navilink"><a class="@ispage thanks.html:naviselected:navi@" href="thanks.html">thanks</a></div>
</div>
&nbsp;mt-daapd&nbsp;Home
</a>
</span>
</div>
<div class="naviheader">Experimental</div>
<div class="navibox">
<div class="navilink"><a class="@ispage playlist.html:naviselected:navi@" href="playlist.html">playlist</a></div>
<div class="navilink"><a class="@ispage applet.html:naviselected:navi@" href="applet.html">applet</a></div>
</div>
<div style="white-space: nowrap;">
<span>
&nbsp;
<a href="http://cvs.sourceforge.net/viewcvs.py/mt-daapd/"
class="plain" title="CVS">
<div class="naviheader">Links</div>
<div class="navibox">
<div class="navilink"><a class="navi" href="http://mt-daapd.sourceforge.net/">mt-daapd home</a></div>
<div class="navilink"><a class="navi" href="http://cvs.sourceforge.net/viewcvs.py/mt-daapd/">mt-daapd cvs</a></div>
<div class="navilink"><a class="@ispage gpl-license.html:naviselected:navi@" href="gpl-license.html">GPL license</a></div>
<div class="navilink"><a class="@ispage aspl-license.html:naviselected:navi@" href="aspl-license.html">ASPL license</a></div>
</div>
&nbsp;mt-daapd&nbsp;CVS
</a>
</span>
</div>
<div class="ministatus">@session-count@ Connected Users</div>
<div style="white-space: nowrap;">
<span>
&nbsp;
<a href="gpl-license.html"
class="plain" title="GPL License">
&nbsp;GPL&nbsp;License
</a>
</span>
</div>
<div style="white-space: nowrap;">
<span>
&nbsp;
<a href="aspl-license.html"
class="plain" title="ASPL License">
&nbsp;ASPL&nbsp;License
</a>
</span>
</div>
</div>
</div>
<div class="box">
<h5>Experimental</h5>
<div class="body">
<div style="white-space: nowrap;">
<span>
&nbsp;
<a href="playlist.html"
class="plain" title="Playlist page">
&nbsp;Playlist&nbsp;Page
</a>
</span>
</div>
<div style="white-space: nowrap;">
<span>
&nbsp;
<a href="applet.html"
class="plain" title="Java Applet">
&nbsp;Java&nbsp;Applet
</a>
</span>
</div>
</div>
</div>
</td>
@ispage playlist.html:-->:@
<td class="main">
<div class="document">
<div>
</td><td class="main">

View File

@ -1,27 +1,29 @@
@include hdr.html@
<h1>Welcome</h1>
<div class="description">
This is the administrative web interface for
mt-daapd
</div>
<div class="stx">
<p class="description">
This is the administrative web interface for mt-daapd, version @version@.
</p>
<h3>About</h3>
<p class="description">
mt-daapd is a multi-threaded pthreads implementation of Apple's DAAP
server. It works for me, it might work for you, too. No promises
though. See the section below titled "No Warranty". This work,
although released under the GNU General Public License, is Copyright
(C) 2003 Ron Pedde. All Rights reserved. See the link labeled "GPL
License" for more information.
&copy; 2003-2005 Ron Pedde. All Rights reserved. See the link labeled
<a href="gpl-license.html">GPL License</a> for more information.
</p>
<h3>Legal Crap</h3> Portions of this program are Copyright (c)
<h3>Legal Crap</h3>
<p class="description">
Portions of this program are Copyright &copy;
1999-2001 Apple Computer, Inc. All Rights Reserved. See the link
labeled "ASPL License" for more information.
labeled <a href="aspl-license.html">ASPL License</a> for more information.
</p>
<h3>No Warranty</h3>
<p class="license">
BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
@ -31,8 +33,6 @@ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
</div>
</p>
@include ftr.html@

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,5 @@
@include hdr.html@
<div class="stx">
<h2>Smart Playlists</h2>
<table width="400">
<thead><tr><th>ID</th><th>Playlist Name</th><th>Type</th><th>Action</th></tr></thead>
@ -14,29 +12,31 @@
</div>
<div id="pl_editor" style="display:none">
<h3>Playlist Spec</h3>
<h2>Please specify new playlist</h2>
<form name="pl_form" action="">
<input type="hidden" name="playlist_id"/>
<table width="400">
<tr>
<th>Name</th>
<td><input type="text" name="playlist_name"/></td>
</tr>
<tr>
<th>Playlist Criteria</th>
<td><textarea rows="5" name="playlist_spec"></textarea></td>
</tr>
</table>
<th>New playlist</th>
<th>
<input type="button" onclick="javascript:pl_update();" name="submit_button" value="Submit"/>
<input type="button" onclick="javascript:pl_cancel();" value="Cancel"/>
<input type="button" onclick="javascript:pl_popup('smartpopup.html');" value="Wizard"/>
<input type="button" onclick="javascript:popUp('smartpopup.html');" value="Wizard"/>
</th>
<tr>
<td>Name</td>
<td><input class="playlistfield" type="text" name="playlist_name"/></td>
</tr>
<tr>
<td>Playlist criteria</td>
<td><textarea class="playlistfield" rows="5" name="playlist_spec"></textarea></td>
</tr>
</table>
</form>
</div>
<div id="pl_warning" class="message" style="display:none">
Error Messages Go here
Error messages go here...
</div>

View File

@ -2,12 +2,6 @@ var req;
var playlist_info={};
function pl_popup(URL) {
day = new Date();
id = day.getTime();
eval("pagemtdaapdplPop = window.open(URL, 'mtdaapdple', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=500,height=240,left = 320,top = 448');");
}
function pl_editor_state(state) {
var pleditor = document.getElementById("pl_editor");
if(!pleditor)

View File

@ -1,5 +1,10 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>mt-daapd playlist wizard</title></head>
<html>
<head>
<title>mt-daapd playlist wizard</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="stylesheet" type="text/css" href="mt-daapd.css" />
</head>
<script language="JavaScript" type="text/javascript">
function loadOpenerCriteria()
@ -103,8 +108,8 @@ function plRowShow(x)
function plOutputRow(x,vis)
{ document.write('<tr id="rowcrit',x,'" style="visibility:');
document.write(vis?'visible':'hidden');
document.write(';"><th>Criterion ',x,':<\/th>',
'<td><select name="playlist_crit',x,'field" style="width:100%" onChange="javascript:plUpdateComp(\'',x,'\');plTemplateWizard()">',
document.write(';"><td>Criterion ',x,':<\/td>',
'<td><select class="playlistfield" name="playlist_crit',x,'field" style="width:100%" onChange="javascript:plUpdateComp(\'',x,'\');plTemplateWizard()">',
'<optgroup label="Basic">',
'<option value="title">Title<\/option>',
'<option value="artist">Artist<\/option>',
@ -136,10 +141,10 @@ function plOutputRow(x,vis)
'<option value="compilation">Compilation<\/option>',
'<\/optgroup>',
'<\/select><\/td>',
'<td><select name="playlist_crit',x,'comp" style="width:100%" onChange="javascript:plTemplateWizard()">',
'<td><select class="playlistfield" name="playlist_crit',x,'comp" style="width:100%" onChange="javascript:plTemplateWizard()">',
'<option value="=">=<\/option>',
'<\/select><\/td>',
'<td><input name="playlist_crit',x,'data" onChange="javascript:plTemplateWizard()" style="width:100%"/><\/td>');
'<td><input class="playlistfield" name="playlist_crit',x,'data" onChange="javascript:plTemplateWizard()" style="width:100%"/><\/td>');
document.write('<\/tr>');
}
@ -199,6 +204,7 @@ function plUpdateComp(x)
objComp = document.getElementsByName("playlist_crit"+x+"comp");
objComp[0].options.length = 0;
objComp[0].options[0] = new Option('=','=');
objComp[0].options[1] = new Option('not =','not =');
if ((objField[0].value=='artist')
|| (objField[0].value=='title')
|| (objField[0].value=='album')
@ -211,12 +217,12 @@ function plUpdateComp(x)
|| (objField[0].value=='grouping')
|| (objField[0].value=='url')
|| (objField[0].value=='codectype'))
{ objComp[0].options[1] = new Option('includes','includes');
{ objComp[0].options[2] = new Option('includes','includes');
} else
{ objComp[0].options[1] = new Option('>','>');
objComp[0].options[2] = new Option('>=','>=');
objComp[0].options[3] = new Option('<','<');
objComp[0].options[4] = new Option('<=','<=');
{ objComp[0].options[2] = new Option('>','>');
objComp[0].options[3] = new Option('>=','>=');
objComp[0].options[4] = new Option('<','<');
objComp[0].options[5] = new Option('<=','<=');
}
}
@ -305,11 +311,11 @@ function plTemplatePlaylist()
<body onLoad="loadOpenerCriteria();">
<form name="pleditor" action="">
<input type="hidden" name="playlist_id"/>
<table style="border:1px solid black;" width="100%">
<table width="100%">
<tr><th colspan="4">Wizard</th></tr>
<tr><th>Template:</th>
<td colspan="3"><select name="playlist_template" style="width:100%" onChange="javascript:plTemplatePlaylist()">
<tr><th>Wizard</th><th colspan="3"></th></tr>
<tr><td>Template:</td>
<td colspan="3"><select class="playlistfield" name="playlist_template" style="width:100%" onChange="javascript:plTemplatePlaylist()">
<option value="" selected="SELECTED">Custom playlist</option>
<option value="60s">Music from the 60's</option>
<option value="70s">Music from the 70's</option>
@ -328,7 +334,7 @@ plOutputRow(4,true);
plOutputRow(5,true);
</script>
<tr><th>Combine:</th>
<tr><td>Combine:</td>
<td colspan="3">
<input type="radio" name="playlist_combine" value=" AND " checked="CHECKED" onChange="javascript:plTemplateWizard()"> match all
<input type="radio" name="playlist_combine" value=" OR " onChange="javascript:plTemplateWizard()"> match some

View File

@ -1,14 +1,12 @@
@include hdr.html@
<h1>Status</h1>
<div class="stx">
<p>
@THREADSTAT@
</p>
<br />
<p>
@SERVICE-STATUS@
</div>
</p>
@include ftr.html@

View File

@ -2,13 +2,13 @@
<h1>Thanks</h1>
<div class="stx">
<p class="description">
Special thanks to the following people:
</p>
<pre>
<p class="description"><pre>
@include CREDITS@
</pre>
</pre></p>
</div>
@include ftr.html@