/* ADMINISTRATION SYSTEM */ 

// Fetch episode data
function fetchEpisode() {
  
  var id = document.getElementById('function').value;
  
  // Fetch data for requested episode
  if (id != 0) {
    
    // AJAX-request  
    var xhttp = new XMLHttpRequest();    
    xhttp.open('GET', '/ajax.php?function=fetch&id=' + id, false);
    xhttp.send(null);
    
    var episode = xhttp.responseXML; // XML-response data
    var fields = new Array('id', 'author', 'title', 'content', 'file_url', 'duration', 'image_url'); // Field names
    
    // Parse XML-data and insert into fields
    for (var field in fields) {      
      document.getElementById(fields[field]).value = episode.getElementsByTagName(fields[field])[0].childNodes[0].nodeValue.replace(/<br>/g, "\n").replace(/%20/g, " ");
    }

  }
  
  // Clear fields to default values
  else {

    document.getElementById('id').value = '0';
    document.getElementById('author').value = '';
    document.getElementById('title').value = '';
    document.getElementById('content').value = '';
    document.getElementById('file_url').value = 'http://';
    document.getElementById('duration').value = '00:00:00';
    document.getElementById('image_url').value = 'http://';
   
  }
  
  // Submit or update
  if (document.getElementById('function').value == 0) { document.getElementById('submit').value = 'Save'; }
  else { document.getElementById('submit').value = 'Update'; }
   
}

/* MEDIA PLAYER */

var player = null;

// Media player listener events
function addListeners() {
  if (player) { player.addModelListener('STATE', 'stateListener'); }
  else { setTimeout('addListeners()', 100); }
}

function playerReady(thePlayer) {
  player = window.document[thePlayer.id];
  addListeners();
}

// Close player when completed
function stateListener(obj) {
  currentState = obj.newstate; 
  previousState = obj.oldstate;
  if ((currentState == 'COMPLETED') && (previousState == 'PLAYING')) { closePlayer(); }
}

// Create new media player
function createPlayer() {  
  var flashvars = { autostart: 'false', controlbar: 'none', playlist: 'none' }  
  var params = { allowfullscreen: 'false', allowscriptaccess: 'always' }
  var attributes = { id: 'mediaplayer', name: 'mediaplayer' }
  swfobject.embedSWF('/js/player.swf', 'player', '0', '0', '9.0.115', false, flashvars, params, attributes);
}

// Open media player
function openPlayer(episode, id) {
  
  // Send events to media player
  player.sendEvent('STOP');
  player.sendEvent('LOAD', episode);
  player.sendEvent('VOLUME', 100);
  player.sendEvent('PLAY');
  
  // Fade in player icon
  document.getElementById('controls').style.opacity = '0.0';
  document.getElementById('controls').style.visibility = 'visible';
  setTimeout("document.getElementById('controls').style.opacity = '0.1';", 50);
  setTimeout("document.getElementById('controls').style.opacity = '0.2';", 100);
  setTimeout("document.getElementById('controls').style.opacity = '0.3';", 150);
  setTimeout("document.getElementById('controls').style.opacity = '0.4';", 200);
  setTimeout("document.getElementById('controls').style.opacity = '0.5';", 250);
  setTimeout("document.getElementById('controls').style.opacity = '0.6';", 300);
  setTimeout("document.getElementById('controls').style.opacity = '0.7';", 350);
  setTimeout("document.getElementById('controls').style.opacity = '0.8';", 400);
  setTimeout("document.getElementById('controls').style.opacity = '0.9';", 450);
  setTimeout("document.getElementById('controls').style.opacity = '1.0';", 500);
  
  // Update clicks count
  var xmlHttp = new XMLHttpRequest();
  xmlHttp.open('GET', '/ajax.php?function=clicks&id=' + id, true);
  xmlHttp.send(null);
  
}

// Close media player
function closePlayer() {
    
  // Fade out player icon 
  setTimeout("document.getElementById('controls').style.opacity = '0.9';", 0);
  setTimeout("player.sendEvent('VOLUME', 90);", 0);
  setTimeout("document.getElementById('controls').style.opacity = '0.8';", 50);
  setTimeout("player.sendEvent('VOLUME', 80);", 50);
  setTimeout("document.getElementById('controls').style.opacity = '0.7';", 100);
  setTimeout("player.sendEvent('VOLUME', 70);", 100);
  setTimeout("document.getElementById('controls').style.opacity = '0.6';", 150);
  setTimeout("player.sendEvent('VOLUME', 60);", 150);
  setTimeout("document.getElementById('controls').style.opacity = '0.5';", 200);
  setTimeout("player.sendEvent('VOLUME', 50);", 200);
  setTimeout("document.getElementById('controls').style.opacity = '0.4';", 250);
  setTimeout("player.sendEvent('VOLUME', 40);", 250);
  setTimeout("document.getElementById('controls').style.opacity = '0.3';", 300);
  setTimeout("player.sendEvent('VOLUME', 30);", 300);
  setTimeout("document.getElementById('controls').style.opacity = '0.2';", 350);
  setTimeout("player.sendEvent('VOLUME', 20);", 350);
  setTimeout("document.getElementById('controls').style.opacity = '0.1';", 400);
  setTimeout("player.sendEvent('VOLUME', 10);", 400);
  setTimeout("document.getElementById('controls').style.opacity = '0.0';", 450);
  setTimeout("player.sendEvent('VOLUME', 0);", 450);
  setTimeout("document.getElementById('controls').style.visibility = 'hidden';", 500);
  setTimeout("player.sendEvent('STOP');", 500);

}