function minAndSec(sec) {
   sec = parseInt(sec)
        return Math.floor(sec / 60) + ":" + (sec % 60 < 10 ? '0' : '') + 
	  Math. floor(sec % 60);
      }

function minAndSecMS(ms) {
   sec = Math.floor(parseInt(ms)/1000);
   return minAndSec(sec);
      }

jQuery.fn.storeplayer=function(options) {

  var global_lp = 0;
  var opts = jQuery.extend({}, jQuery.fn.storeplayer.defaults, options);
  return this.each( function () {
      var html='';
      var global_lp = 0;
      var current_id=$(this).attr('id');
      var currenttrack='';
      $(this).html(html+'<div id="'+current_id+'_jplayer"></div><div class="trackartist"></div><div class="tracktitle"></div><ul class="buttons"><li><a class="playpause" href="#">Play</a></li><li><a class="next" href="#">Next</a></li><li><a class="previous" href="#">Previous</a></li></ul><div class="progressbars"><a class="volumemin" id="'+current_id+'_volumemin" href="#">Mute</a><div class="volumebar"><div class="volume" id="'+current_id+'_volume"></div></div><a  class="volumemax" id="'+current_id+'_volumemax" href="#">Max</a>');
      $(this).addClass('threadsplayer');
      $(this).addClass('ui-widget');
      $(this).addClass('ui-widget-header');
      $(this).addClass('ui-corner-all');
      $(this).addClass('ui-helper-clearfix');
      $jplayer=$('#'+current_id+'_jplayer');
      $volume=$('#'+current_id+'_volume');
      $currenttime=$('#'+current_id+'_currenttime');
      $totaltime=$('#'+current_id+'_totaltime');

      $(this).bind('jumpTo',function(e, track) {
	  if ( track==currenttrack ) {
	    icon=$(".playpause").button( "option", "icons").primary;
	    if ( icon=='ui-icon-pause' ) {
	      $(".playpause").button( "option", "icons",{ primary: 'ui-icon-play' });
	      $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-play' });
	      $jplayer.jPlayer("pause");
	    } else {
	      $(".playpause").button( "option", "icons",{ primary: 'ui-icon-pause' });
	      $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' });
	      $jplayer.jPlayer("play");      
	    }
	  } else {    
	    loadTrack('jump',track);
	  }
	});
      
      var loadTrack=function(action,track) {
	if ( opts.player_method=='album' ) {
	  ajaxurl='/threadsplayer.php?player_method=album&player_action='+action+'&player_album_id='+opts.album_id
	} else {
	  ajaxurl='/threadsplayer.php?player_method='+opts.player_method+'&player_action='+action;
	}
	if ( currenttrack!='' ) { 
	  ajaxurl=ajaxurl+'&player_currenttrack_id='+currenttrack; 
	  $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-play' });
	}
	if ( track!='' ) { 
	  ajaxurl=ajaxurl+'&player_track_id='+track; 
	}
	$.ajax({ url:ajaxurl,
	      dataType:'xml',
	      success: function(xml) { 
	      currenttrack=$('track > id',xml).text();
	      $('.trackartist').html($('track > artist',xml).text()); 
	      $('.tracktitle').html($('track > title',xml).text()); 
	      $totaltime.text(minAndSec($('track > duration',xml).text()));
	      $jplayer.jPlayer("setFile",$('track > mp3',xml).text());
	      icon=$(".playpause").button( "option", "icons").primary;
	      if ( icon=='ui-icon-pause' ) {
		$jplayer.jPlayer("play");
		$('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' })
	      } else {
		if ( action=='' ) {
		} else {
		  $(".playpause").button( "option", "icons",{ primary: 'ui-icon-pause' });
		  $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' })
		    $jplayer.jPlayer("play");

		}
	      }
	    }
	  });
      }

      

      $jplayer.jPlayer({
		ready: function ()
		{
		  loadTrack('');
		},
	    customCssIds: true,
	    nativeSupport: false, oggSupport: false,
	    swfPath: "/threads_assets/threadsplayer/jplayer/"
	})
	.jPlayer("onSoundComplete", function() {
	    loadTrack('next','');
	  });

      $(".playpause").button({
            icons: {
                primary: 'ui-icon-play'
            },
            text: false});
      $(".playpause").click(function() { 
	  icon=$(".playpause").button( "option", "icons").primary;
	  if ( icon=='ui-icon-pause' ) {
	    $(".playpause").button( "option", "icons",{ primary: 'ui-icon-play' });
	    $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-play' });
	    $jplayer.jPlayer("pause");
	  } else {
	    $(".playpause").button( "option", "icons",{ primary: 'ui-icon-pause' });
	    $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' });
	   $jplayer.jPlayer("play");
	  }
	  return false;
	});

      $(".next").button({
            icons: {
                primary: 'ui-icon-seek-end'
            },
            text: false});

      $(".next").click(function() { 
	  loadTrack('next','');
	  return false;
	});

      $(".previous").button({
            icons: {
                primary: 'ui-icon-seek-first'
            },
            text: false});


      $(".previous").click(function() { 
	  loadTrack('previous','');
	  return false;
	});

      $(".volumemin").button({
            icons: {
                primary: 'ui-icon-volume-off'
            },
            text: false});

      $(".volumemax").button({
            icons: {
                primary: 'ui-icon-volume-on'
            },
            text: false});




	$volume.slider({
		value : 50,
		max: 100,
		animate: true,
		slide: function(event, ui) {
			$jplayer.jPlayer("volume", ui.value);
		}
	});

	$(".volumemin").click( function() {
		$jplayer.jPlayer("volume", 0);
		$volume.slider('option', 'value', 0);
		return false;
	});

	$(".volumemax").click( function() {
		$jplayer.jPlayer("volume", 100);
		$volume.slider('option', 'value', 100);
		return false;
	});

    })
}




jQuery.fn.hiddenplayer=function(options) {

  var global_lp = 0;
  var opts = jQuery.extend({}, jQuery.fn.hiddenplayer.defaults, options);
  return this.each( function () {
      var html='';
      var global_lp = 0;
      var current_id=$(this).attr('id');
      var currenttrack='';
      $(this).html(html+'<div id="'+current_id+'_jplayer"></div>');
     
      $jplayer=$('#'+current_id+'_jplayer');

      $(this).bind('jumpTo',function(e, track) {
	  if ( track==currenttrack ) {
	    icon=$('#'+currenttrack+'btn').button( "option", "icons").primary;
	    if ( icon=='ui-icon-pause' ) {
	      $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-play' });
	      $jplayer.jPlayer("pause");
	    } else {
	      $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' });
	      $jplayer.jPlayer("play");      
	    }
	  } else {    
	    loadTrack('jump',track);
	  }
	});
      
      var loadTrack=function(action,track) {
	if ( opts.player_method=='album' ) {
	  ajaxurl='/threadsplayer.php?player_method=album&player_action='+action+'&player_album_id='+opts.album_id
	} else {
	  ajaxurl='/threadsplayer.php?player_method='+opts.player_method+'&player_action='+action;
	}
	if ( currenttrack!='' ) { 
	  ajaxurl=ajaxurl+'&player_currenttrack_id='+currenttrack; 
	  $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-play' });
	}
	if ( track!='' ) { 
	  ajaxurl=ajaxurl+'&player_track_id='+track; 
	}
	$.ajax({ url:ajaxurl,
	      dataType:'xml',
	      success: function(xml) { 
	      currenttrack=$('track > id',xml).text();
	      $jplayer.jPlayer("setFile",$('track > mp3',xml).text());
	      icon=$('#'+currenttrack+'btn').button( "option", "icons").primary;
	      if ( icon=='ui-icon-pause' ) {
		$jplayer.jPlayer("play");
		$('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' })
	      } else {
		if ( action=='' ) {
		} else {
		  $('#'+currenttrack+'btn').button( "option", "icons",{ primary: 'ui-icon-pause' })
		    $jplayer.jPlayer("play");
		}
	      }
	    }
	  });

      }

      

      $jplayer.jPlayer({
		ready: function ()
		{
		  loadTrack('');
		},
	    customCssIds: true,
	    nativeSupport: false, oggSupport: false,
	    swfPath: "/threads_assets/threadsplayer/jplayer/"
	})
	.jPlayer("onSoundComplete", function() {
	    loadTrack('next','');
	  });



    })
}

