function pic(name,x,y)
{
if (picwin) picwin.close();
var picwin = window.open("http://www.tabletopturniere.de/t3_picture.php?pic="+name,"picwin","width="+x+",height="+y+",screenx=0,screeny=0,scrollbars=no");
}
function newpic(name) {
  getpic(name);
}
function getpic(img) {
  pic1 = new Image();
  pic1.src=("/gallery/"+img+".jpg");
  check(img);
}
function check(img){
  if ((pic1.width!=0)&&(pic1.height!=0)){
    pic(img,pic1.width+2,pic1.height+44);
  }
  else {
    fkt="check('"+img+"')";
    timeout=setTimeout(fkt,20);
  }
}

function toggle(id) {
  if (document.getElementById(id+'a').style.display!='block') {
    document.getElementById(id+'a').style.display='block';
    document.getElementById(id+'b').style.display='none';
    if (document.getElementById(id+'c')) document.getElementById(id+'c').style.display='block';
  }
  else {
    document.getElementById(id+'a').style.display='none';
    document.getElementById(id+'b').style.display='block';
    if (document.getElementById(id+'c')) document.getElementById(id+'c').style.display='none';
  }
}

function toggleDisplay(id) {
  var ele = document.getElementById(id);
  if (ele) {
    ele.className = (ele.className=='show') ? 'hide' : 'show';
  }
}

function toggleElement(id) {
  var ele = document.getElementById(id);
  if (ele) {
    ele.style.display = (ele.style.display=='block') ? 'none' : 'block';
  }
}

function loadArmyGroups(maxgid) {
  var ag = document.getElementById('agroups'+gid);
  var gid = document.regForm.t_game.value;
  for (var i=0; i<maxgid; i++) {
    if (ag = document.getElementById('agroups'+i)) {
      if (i==gid) {ag.style.display='block';}
      else {ag.style.display='none'};
    }
  }
  //ugly, but will work for now
  document.regForm.js.value='1';
}

adm_old = null;
function loadADM() {
  var adm0 = document.admform.adm0.value;
  if (adm_old) {
    var adm1=document.getElementById(adm_old);
    if (adm1) {
      adm1.style.display='none';
    }
  }
  if (adm0) {
    var adm1=document.getElementById(adm0);
    if (adm1) {
      adm1.style.display='block';
      adm_old=adm0;
    }
  }
}

//checks if extended regmode is used and enables regexp
function checkRegmode() {
  if (document.getElementById('regmode1').checked==true) id=1;
  else if (document.getElementById('regmode2').checked==true) id=2;
  else if (document.getElementById('regmode2').checked==true) id=3;
  else id=4;
  //handle regexpire
  if (id==1) {
    document.getElementById('regexp1').checked=true;
    document.getElementById('regexp1').disabled=true;
    document.getElementById('regexp2').disabled=true;
    document.getElementById('regexp3').disabled=true;
    document.getElementById('regexp4').disabled=true;
    document.getElementById('spanregexp1').className='disabled';
    document.getElementById('spanregexp2').className='disabled';
    document.getElementById('spanregexp3').className='disabled';
    document.getElementById('spanregexp4').className='disabled';
  }
  else {
    document.getElementById('regexp1').disabled=false;
    document.getElementById('regexp2').disabled=false;
    document.getElementById('regexp3').disabled=false;
    document.getElementById('regexp4').disabled=false;
    document.getElementById('spanregexp1').className='';
    document.getElementById('spanregexp2').className='';
    document.getElementById('spanregexp3').className='';
    document.getElementById('spanregexp4').className='';
  }
  //handle armylist
  if (id==3 || id==4) {
    document.getElementById('armylist1').disabled=true;
    document.getElementById('armylist1').checked=false;
    document.getElementById('spanarmylist1').className='disabled';
  }
  else {
    document.getElementById('armylist1').disabled=false;
    document.getElementById('spanarmylist1').className='';
  }
}

//checks if team size value is needed
function checkTeam() {
  if (document.getElementById('team_no').checked==true) team=false;
  else team=true;
  //handle teamsize
  if (team) {
    document.getElementById('team_size').disabled=false;
  }
  else {
    document.getElementById('team_size').disabled=true;
    document.getElementById('team_size').value='';
  }
}

//check radio button
function checkRadio(id) {
  var r = document.getElementById(id);
  if (r) {
    r.checked = true;
  }
}

//switch checkbox
function switchCheckBox(id,caller) {
  var r = document.getElementById(id);
  if (r && caller.type!='checkbox') {
    r.checked = r.checked ? false : true;
  }
}

//User games and factions
function checkBoxCB(id,caller) {
  var box = document.getElementById('a'+id);
  var text = document.getElementById('v'+id);
  if (box && text) {
    if (caller.type!='checkbox') box.checked = box.checked ? false : true;
    text.readOnly = box.checked ? false : true;
    text.value = box.checked ? text.value : '';
    text.style.backgroundColor = '';
  }
}
function onClickInput(id) {
  var box = document.getElementById('a'+id);
  var text = document.getElementById('v'+id);
  //alert('click');
  if (box && text) {
    box.checked = true;
    text.readOnly = false;
  }
}
function checkInputOnExit(id,regex) {
  var text = document.getElementById(id);
  if (text) {
    if (regex != '') {
      var match = text.value.search(regex);
      //alert(match + ' || ' + text.value + ' || ' + regex);
      if (match == -1) {
        text.style.backgroundColor = '#FF0000';
      }
      else {
        text.style.backgroundColor = '';
      }
    }
  }
}

//NTRA - switch fields
function switchFields(fid1,fid2) {
  var f1 = document.getElementById(fid1);
  var f2 = document.getElementById(fid2);
  var temp = f1.value;
  f1.value = f2.value;
  f2.value = temp;
}

//NTRA - select name for search
function useName(name,lastname) {
  var f1 = document.getElementById('name');
  var f2 = document.getElementById('lastname');
  var f3 = document.getElementById('nickname');

  if (lastname) {
    f1.value=name;
    f2.value=lastname;
    f3.value='%';
  }
  //set nickname
  else {
    f1.value='%';
    f2.value='%';
    f3.value=name;
  }
}

//NTRA - set to unkown
function setUnkown(fid) {
  var f = document.getElementById(fid);
  f.value = 'unbekannt';
}

//TREG - check for "Tunier" :/
function checkSpelling(input) {
  //var input = document.getElementById(id);
  var hint = document.getElementById('tntSpelling');
  if (input.value.match(/tunier/i)) {
    hint.style.display = 'block';
  }
  else {
    hint.style.display = 'none';
  }
}

function getElementsByClassName(className, tag, elm){
        var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
        var tag = tag || "*";
        var elm = elm || document;
        var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
        var returnElements = [];
        var current;
        var length = elements.length;
        for(var i=0; i<length; i++){
                current = elements[i];
                if(testClass.test(current.className)){
                        returnElements.push(current);
                }
        }
        return returnElements;
}


/**************************************************************************
 * Limits the Chars of Textarea Elements or Input Elements
 *
 * @Author: Michael Schwarz (M.Schwarz@php-vision.de)
 * @Date: 14/04/2006
 * @param: Obj     Das zu überwachende Element
 * @param: maxChr  Maximale Zeichen Anzahl
 * @param: counter ID eines HTML Obj. für Aktuellen Counterstand
 * @Version: 0.5 ( available on www.php-vision.de )
 * -----------------------------------------------------------------------
 * Usage :
 *  <script type="text/javascript" src="textarea-char-limit.js"> </script>
 *  Currently <span id="counter_field">0</span> Chars of 250 entered<br />
 *  <textarea onfocus="textlimit(this,250,'counter_field');">  </textarea>
 * -----------------------------------------------------------------------
 * Donate to Paypal Account M.Schwarz@php-vision.de
/*************************************************************************/

function textlimit(Obj,maxcount,counter)
{
  function c_len(){
    if(this.value.length > this.maxcount && this.maxcount != 0)
      return false;
    update_count(this);
  }

  function upd_count(){  update_count(this);}

  function update_count(elem){
    if(elem.counter != null){
      cnt = getObj(elem.counter);
      cnt.innerHTML = elem.value.length
  }}

  function check(){
    if (this.value.length  > this.maxcount && this.maxcount != 0)
      this.value = this.value.substr(0,this.maxcount);
      update_count(this);
  }

  Obj.counter   = counter;    Obj.maxcount  = maxcount;
  Obj.onkeypress= c_len;    Obj.onkeydown = upd_count;
  Obj.onkeyup   = check;    Obj.onfocus   = check;
  Obj.onblur    = check;
  Obj.onmouseup = check;

  update_count(Obj);

/*************** OTHER USED / NEEDED FUNCTIONS ***************************/
function getObj( ref ) { if( document.getElementById( ref ) != null )//W3C/
return document.getElementById(ref); else if(document.all[ref]!=null)//IE5/
return document.all[ ref ]; else if( document.layers[ ref ] != null )//NN4/
return document.layers[ref]; else alert('Object "'+ref+'" not Found')//ERR/
}/************************************************************************/
}