- var new_time = status.getElementsByTagName( 'time' )[0].firstChild.data;
- var length = status.getElementsByTagName( 'length' )[0].firstChild.data;
- var slider_position;
- if( length < 100 )
+ var timetag = status.getElementsByTagName( 'time' );
+ if( timetag.length > 0 )
+ {
+ var new_time = timetag[0].firstChild.data;
+ }
+ else
- slider_position = ( status.getElementsByTagName( 'position' )[0]
- .firstChild.data * 4 ) + "px";
+ new_time = old_time;
+ }
+ var lengthtag = status.getElementsByTagName( 'length' );
+ var length;
+ if( lengthtag.length > 0 )
+ {
+ length = lengthtag[0].firstChild.data;
{
/* this is more precise if length > 100 */
slider_position = Math.floor( ( new_time * 400 ) / length ) + "px";
}
{
/* this is more precise if length > 100 */
slider_position = Math.floor( ( new_time * 400 ) / length ) + "px";
}
if( old_time > new_time )
setTimeout('update_playlist()',50);
old_time = new_time;
if( old_time > new_time )
setTimeout('update_playlist()',50);
old_time = new_time;
set_text( 'length', format_time( length ) );
if( status.getElementsByTagName( 'volume' ).length != 0 )
set_text( 'volume', Math.floor(status.getElementsByTagName( 'volume' )[0].firstChild.data/5.12)+'%' );
set_text( 'length', format_time( length ) );
if( status.getElementsByTagName( 'volume' ).length != 0 )
set_text( 'volume', Math.floor(status.getElementsByTagName( 'volume' )[0].firstChild.data/5.12)+'%' );
- set_text( 'state', status.getElementsByTagName( 'state' )[0].firstChild.data );
+ var statetag = status.getElementsByTagName( 'state' );
+ if( statetag.length > 0 )
+ {
+ set_text( 'state', statetag[0].firstChild.data );
+ }
+ else
+ {
+ set_text( 'state', '(?)' );
+ }
if( slider_mouse_down == 0 )
{
document.getElementById( 'main_slider_point' ).style.left = slider_position;
}
if( slider_mouse_down == 0 )
{
document.getElementById( 'main_slider_point' ).style.left = slider_position;
}
{
document.getElementById( 'btn_pause_img' ).setAttribute( 'src', 'images/pause.png' );
document.getElementById( 'btn_pause_img' ).setAttribute( 'alt', 'Pause' );
{
document.getElementById( 'btn_pause_img' ).setAttribute( 'src', 'images/pause.png' );
document.getElementById( 'btn_pause_img' ).setAttribute( 'alt', 'Pause' );
if( pos.hasChildNodes() )
pos.appendChild( document.createElement( "br" ) );
var nda = document.createElement( 'a' );
if( pos.hasChildNodes() )
pos.appendChild( document.createElement( "br" ) );
var nda = document.createElement( 'a' );
nda.setAttribute( 'href', 'javascript:toggle_show_node(\''+elt.getAttribute( 'id' )+'\');' );
var ndai = document.createElement( 'img' );
nda.setAttribute( 'href', 'javascript:toggle_show_node(\''+elt.getAttribute( 'id' )+'\');' );
var ndai = document.createElement( 'img' );
ndai.setAttribute( 'src', 'images/minus.png' );
ndai.setAttribute( 'alt', '[-]' );
ndai.setAttribute( 'id', 'pl_img_'+elt.getAttribute( 'id' ) );
ndai.setAttribute( 'src', 'images/minus.png' );
ndai.setAttribute( 'alt', '[-]' );
ndai.setAttribute( 'id', 'pl_img_'+elt.getAttribute( 'id' ) );
pos.appendChild( document.createTextNode( ' ' + elt.getAttribute( 'name' ) ) );
var nd = document.createElement( "div" );
pos.appendChild( document.createTextNode( ' ' + elt.getAttribute( 'name' ) ) );
var nd = document.createElement( "div" );
nd.setAttribute( 'class', 'pl_node' );
nd.setAttribute( 'id', 'pl_'+elt.getAttribute( 'id' ) );
nd.setAttribute( 'class', 'pl_node' );
nd.setAttribute( 'id', 'pl_'+elt.getAttribute( 'id' ) );
}
else if( elt.nodeName == "leaf" )
{
if( pos.hasChildNodes() )
pos.appendChild( document.createElement( "br" ) );
var pl = document.createElement( "a" );
}
else if( elt.nodeName == "leaf" )
{
if( pos.hasChildNodes() )
pos.appendChild( document.createElement( "br" ) );
var pl = document.createElement( "a" );
pl.setAttribute( 'class', 'pl_leaf' );
pl.setAttribute( 'href', 'javascript:pl_play('+elt.getAttribute( 'id' )+');' );
pl.setAttribute( 'id', 'pl_'+elt.getAttribute( 'id' ) );
if( elt.getAttribute( 'current' ) == 'current' )
{
pl.setAttribute( 'style', 'font-weight: bold;' );
pl.setAttribute( 'class', 'pl_leaf' );
pl.setAttribute( 'href', 'javascript:pl_play('+elt.getAttribute( 'id' )+');' );
pl.setAttribute( 'id', 'pl_'+elt.getAttribute( 'id' ) );
if( elt.getAttribute( 'current' ) == 'current' )
{
pl.setAttribute( 'style', 'font-weight: bold;' );
- document.getElementById( 'nowplaying' ).textContent
- = elt.getAttribute( 'name' );
+ var nowplaying = document.getElementById( 'nowplaying' );
+ clear_children( nowplaying );
+ nowplaying.appendChild( document.createTextNode( elt.getAttribute( 'name' ) ) );
+ pl.appendChild( document.createTextNode( '* '));
}
pl.setAttribute( 'title', elt.getAttribute( 'uri' ));
pl.appendChild( document.createTextNode( elt.getAttribute( 'name' ) ) );
}
pl.setAttribute( 'title', elt.getAttribute( 'uri' ));
pl.appendChild( document.createTextNode( elt.getAttribute( 'name' ) ) );
- del.appendChild( document.createElement( "img" ) );
- del = del.lastChild;
- del.setAttribute( 'src', 'images/delete_small.png' );
- del.setAttribute( 'alt', '(delete)' );
+ var delimg = document.createElement( "img" );
+ delimg.setAttribute( 'src', 'images/delete_small.png' );
+ delimg.setAttribute( 'alt', '(delete)' );
+ del.appendChild( delimg );
+ pos.appendChild( del );
var browser = document.getElementById( 'browser' );
var pos = document.createElement( "div" );
var elt = answer.firstChild;
var browser = document.getElementById( 'browser' );
var pos = document.createElement( "div" );
var elt = answer.firstChild;
- pos.appendChild( document.createElement( "a" ) );
- pos.lastChild.setAttribute( 'class', 'browser' );
+ var item = document.createElement( "a" );
+ item.setAttribute( 'class', 'browser' );
- pos.appendChild( document.createElement( "a" ) );
- pos.lastChild.setAttribute( 'class', 'browser' );
- pos.lastChild.setAttribute( 'href', 'javascript:browse_path(\''+addslashes(elt.getAttribute( 'path' ))+'\');');
- pos.lastChild.appendChild( document.createTextNode( '(select)' ) );
+ var item = document.createElement( "a" );
+ item.setAttribute( 'class', 'browser' );
+ item.setAttribute( 'href', 'javascript:browse_path(\''+escapebackslashes(addslashes(elt.getAttribute( 'path' )))+'\');');
+ item.appendChild( document.createTextNode( '(select)' ) );
+ pos.appendChild( item );