/**
 * General JavaScript functions used by BNPP
 */


function confirmAction(str) {
  alert('Why, God, why?');
  return confirm(str);
}


/**
 * Show loading notification in status bar.
 */
var childs = false;
function displayLoad() {
  var loc = document.getElementById("statusleft");
  var text = document.createTextNode("Loading...");
  if (!childs) {
    loc.appendChild(text);
    loc.style.display = 'inline';
    childs=true;
  }
}

function hideLoad() {
  var loc = document.getElementById("statusleft");
  loc.style.display = '';
}

/**
 * This one was not easy to make it work either for Firefox AND Internet Explorer
 * Grabs an object from the document by its identifier, switches its status from visible to invisible and vice versa, and set the gifs.
 */
function displaySwap(id,img,last) {
  var home = 'img/ol/';
  var object = document.getElementById(id+'_offsprings');
  if (object.style.display == 'none') {
    object.style.display = '';
    img.alt = " - ";
    img.title = "Collapse";
    if (last) { img.src = home+"minusbottom.gif"; } else { img.src = home+"minus.gif"; }
  } else {
    object.style.display = 'none';
    img.alt= " + ";
    img.title= "Expand";
    if (last) { img.src = home+"plusbottom.gif"; } else { img.src = home+"plus.gif"; }
  }
}


function collapseAll() {
  var div = document.getElementsByTagName('div');
  for (var i=0;i<div.length;i++) {
    var result = div[i].id.search(/([a-z])+_offsprings/);
    if (result != -1) {
      div[i].style.display = 'none';
    }
  }

  var img = document.getElementsByTagName('img');
  for (var i=0;i<img.length;i++) {
    img[i].src = img[i].src.replace(/minusbullet.gif/, 'plusbullet.gif');
    img[i].src = img[i].src.replace(/minusbottom.gif/, 'plusbottom.gif');
    img[i].src = img[i].src.replace(/minus.gif/, 'plus.gif');
    img[i].alt = " + ";
    img[i].title = "Expand";
  }
  document.getElementById('ExpandList').style.display = '';
  document.getElementById('CollapseList').style.display = 'none';
  hideLoad();
}

function expandAll() {
  var div = document.getElementsByTagName('div');
  for (var i=0;i<div.length;i++) {
    var result = div[i].id.search(/([a-z])+_offsprings/);
    if (result != -1) {
      div[i].style.display = '';
    }
  }

  var img = document.getElementsByTagName('img');
  for (var i=0;i<img.length;i++) {
    img[i].src = img[i].src.replace(/plusbullet.gif/, 'minusbullet.gif');
    img[i].src = img[i].src.replace(/plusbottom.gif/, 'minusbottom.gif');
    img[i].src = img[i].src.replace(/plus.gif/, 'minus.gif');
    img[i].alt = " - ";
    img[i].title = "Collapse";
  }
  document.getElementById('CollapseList').style.display = '';
  document.getElementById('ExpandList').style.display = 'none';
  hideLoad();
}