function ajaxFailure(resp) {
  alert("Ongelma tiedonhaussa:\n" + resp.statusText);  
}

function hasClass(obj,cName) {
  return new RegExp('\\b'+cName+'\\b').test(obj.className);
}

function addClass(obj,cName) { 
  if (obj && !hasClass(obj,cName)) { 
    obj.className+=obj.className?' '+cName:cName; 
  } 
} 

function removeClass(obj,cName) { 
  if (!obj || !hasClass(obj,cName)) return; 
  var rep=obj.className.match(' '+cName)?' '+cName:cName; 
  obj.className=obj.className.replace(rep,''); 
}

/* Profiilisivun funktiot */

function avaaGraafi(url) {
  window.open(url,"Graafi","toolbar=no,location=no,directories=no,status=no,menubar=no,width=660,height=500");
}

function avaaKuvaaja(kuvaaja) {
  avaaGraafi(cgi+"/"+kuvaaja+".cgi?pelaaja="+pelaaja);
}

function avaaVertailu(kuvaaja) {
  avaaGraafi(cgi+"/"+kuvaaja+".cgi?pelaaja="+pelaaja+"&vastaan="+vastaan);
}

function changeMano() {
  var select = document.getElementById("manoselect");
  vastaan = select.options[select.selectedIndex].value;
}

function fetchMano() {
  new Ajax.Updater({ success : "mano", failure : "" }, "mano.php", {
    parameters : "pelaaja=" + pelaaja + "&vastaan=" + vastaan,
    method : "get",
    onFailure : ajaxFailure
  });
}

function showPowerRanking() {
  addClass(normalRanking, "hidden");
  removeClass(normalTab, "selected");
  addClass(powerTab, "selected");
  removeClass(powerRanking, "hidden");
}

function showSingleRanking() {
  addClass(powerRanking, "hidden");
  removeClass(powerTab, "selected");
  addClass(normalTab, "selected");
  removeClass(normalRanking, "hidden");
}

function showPowerManoRanking() {
  addClass(normalMano, "hidden");
  removeClass(normalManoTab, "selected");
  addClass(powerManoTab, "selected");
  removeClass(powerMano, "hidden");
}

function showNormalManoRanking() {
  addClass(powerMano, "hidden");
  removeClass(powerManoTab, "selected");
  addClass(normalManoTab, "selected");
  removeClass(normalMano, "hidden");
}

function showPowerLohkoRanking() {
  addClass(normalLohko, "hidden");
  removeClass(normalLohkoTab, "selected");
  addClass(powerLohkoTab, "selected");
  removeClass(powerLohko, "hidden");
}

function showNormalLohkoRanking() {
  addClass(powerLohko, "hidden");
  removeClass(powerLohkoTab, "selected");
  addClass(normalLohkoTab, "selected");
  removeClass(normalLohko, "hidden");
}

/* Tyylien muuttaminen lennosta */

function colorOn(t) {
  var reg = /.*(t[1-9]{1}[0-9]{0,1}).*/;
  var ar = reg.exec(t.className);
  setStyleByClass("td",ar[1], "background", "#9AC8A6");
}

function colorOff(t) {
  var reg = /.*(t[1-9]{1}[0-9]{0,1}).*/;
  var ar = reg.exec(t.className);
  setStyleByClass("td",ar[1], "background", "");
}

function setStyleByClass(tag,className,property,value){
  var elements;
  if(tag == '*') {
    // '*' not supported by IE/Win 5.5 and below
    elements = (ie) ? document.all : document.getElementsByTagName('*');
  } else {
    elements = document.getElementsByTagName(tag);
  }
  var r = new RegExp(className + "(\D|$)");
  for(var i = 0; i < elements.length; i++) {
    if (elements[i].className.search(r) >= 0) {
      eval('elements[' + i + '].style.' + property + " = '" + value + "'");
    }
  }
}

