
var ovs = 0;
var rfls = -1;
var fotos = 0;
var iAppForm = -1;
document.cookie = 'SCREEN_W='+screen.width;
document.cookie = 'SCREEN_H='+screen.height;

function CheckUserFields(form) {
  var red = false;
  var text = '';
  red = (form.USERNAME.value == '') || (form.PASSWORD.value == '') || (form.PASSWORD_.value == '');
  if (red) text = 'Všechna tučně označená pole musí být vyplněna';
  if (form.PASSWORD.value != form.PASSWORD_.value) text += '\\r\\nHeslo a ověření hesla musí být totožné';
  if (form.EMAIL.value.search('[a-zA-Z0-9_.]+@[a-zA-Z0-9_.]+') == -1) text += '\\r\\nKolonka e-mail musí obsahovat emailovou adresu.';
  if (text) {
    alert(text);
    return false;
    }
  }

function CheckEditUserFields(form) {
  var red = false;
  var text = '';
  red = (form.STREET.value == '');
  if (red) text = 'Všechna tučně označená pole musí být vyplněna';
  if (form.EMAIL.value.search('[a-zA-Z0-9_.]+@[a-zA-Z0-9_.]+') == -1) text += '\\r\\nKolonka e-mail musí obsahovat emailovou adresu.';
  if (text) {
    alert(text);
    return false;
    }
  }

function CheckClubFields(form) {
  var red = false;
  var text = '';
  red = (form.NAME.value == '');
  if (red) text = 'Všechna tučně označená pole musí být vyplněna';
  if (form.EMAIL.value && form.EMAIL.value.search('[a-zA-Z0-9_.]+@[a-zA-Z0-9_.]+') == -1) text += '\\r\\nKolonka e-mail musí obsahovat emailovou adresu.';
  if (text) {
    alert(text);
    return false;
    }
  }

function CheckArticle(form) {
  var red = false;
  var text = '';
  red = (form.TITLE.value == '' || form.TEXT.value == '');
  if (red) text = 'Všechna tučně označená pole musí být vyplněna';
  if (text) {
    alert(text);
    return false;
    }
  }

function CheckRaceFields(form) {
  var red = false;
  var text = '';
  red = (form.NAME.value == '');
  if (red) text = 'Všechna tučně označená pole musí být vyplněna';
  if (text) {
    alert(text);
    return false;
    }
  }

function CheckSerialFields(form) {
  var red = false;
  var text = '';
  red = (form.NAME.value == '' || form.YEAR.value == '');
  if (red) text = 'Všechna tučně označená pole musí být vyplněna';
  if (text) {
    alert(text);
    return false;
    }
  }

function SwitchBookmark(name, list) {
  el = document.getElementById(name);
  el.className = 'tile';
  l = list.split(';');
  for (i=0;i<l.count-1;i++) {
    el = document.getElementById(l[i]);
    if (el) el.style.display = 'none';
    }
  /*el = document.getElementById('DIV_RACE');
  if (el) el.style.display = 'none';
  el = document.getElementById('DIV_ROUTE');
  if (el) el.style.display = 'none';
  el = document.getElementById('DIV_RACERS');
  if (el) el.style.display = 'none';*/
}

function AddOverview(element) {
  ovs++;
  if (element.nextSibling.type != 'file') {
    el = document.getElementById('foto0');
    me = document.getElementById('memos0');
    oh = document.getElementById('oh');
    _new = el.cloneNode();
    _new.name = 'FOTOS[' + ovs + ']';
    _newM = me.cloneNode();
    _newM.name = 'MEMOS[' + ovs + ']';
    _br = document.createElement('br');
    el.parentNode.insertBefore(_br, oh);
    el.parentNode.insertBefore(_new, oh);
    el.parentNode.insertBefore(_newM, oh);
    }
 }

function AddRaceFiles(element) {
  rfls--;
//  alert(element.nextSibling.type);
  if (element) {
    el = document.getElementById('file0');
    me = document.getElementById('desc0');
    oh = document.getElementById('oh');
    //_new = el.cloneNode(true);
    _new = document.createElement('input');
    _new.name = 'FILE[' + rfls + ']';
    _new.type = 'file';
    _new.id = 'file' + rfls;
    _new.size = 25;
    _new.className = 'file';
    _new.accept = 'image/*';

    _newM = document.createElement('input');
//    _newM = me.cloneNode(true);
    _newM.name = 'DESC[' + rfls + ']';
    _newM.value = '';
    _newM.size = 30;
    _newM.maxlength = 50;
    _newM.id = 'desc' + rfls;
    _br = document.createElement('br');
    _nbsp = document.createTextNode(' ');
    el.parentNode.insertBefore(_br, oh);
    el.parentNode.insertBefore(_new, oh);
    el.parentNode.insertBefore(_nbsp, oh);
    el.parentNode.insertBefore(_newM, oh);
  }
}

function AddArticleFiles(element) {
  rfls--;
//  alert(element.nextSibling.type);
  if (element) {
    el = document.getElementById('file0');
    me = document.getElementById('desc0');
    oh = document.getElementById('oh');
    //_new = el.cloneNode(true);
    _new = document.createElement('input');
    _new.name = 'FILE[' + rfls + ']';
    _new.type = 'file';
    _new.id = 'file' + rfls;
    _new.size = 25;
    _new.className = 'file';
    _new.accept = 'image/*';

    _newM = document.createElement('input');
//    _newM = me.cloneNode(true);
    _newM.name = 'DESC[' + rfls + ']';
    _newM.value = '';
    _newM.size = 30;
    _newM.maxlength = 50;
    _newM.id = 'desc' + rfls;
    _br = document.createElement('br');
    _nbsp = document.createTextNode(' ');
    table = el.parentNode.parentNode.parentNode;
    _row = table.insertRow(table.rows.length - 1);
    _cell0 = _row.insertCell(0);
    _cell1 = _row.insertCell(1);
    _cell0.insertBefore(_new, null);
    _cell1.insertBefore(_newM, null);
  }
}

function addFoto() {
  fotos++;
  el = document.getElementById('foto0');
  if (el) {
    oh = document.getElementById('oh');
    _new = el.cloneNode(true);
    //_new = document.createElement('input');
    _new.name = 'FOTO[' + fotos + ']';
    _new.type = 'file';
    _new.id = 'foto' + fotos;
    _new.size = 20;
    _new.className = 'file';
    _new.accept = 'image/*';
    //_new.value = '';
    //_new.onChange = el.onChange;

    _br = document.createElement('br');
    _nbsp = document.createTextNode(' ');
    el.parentNode.insertBefore(_br, oh);
    el.parentNode.insertBefore(_new, oh);
    el.parentNode.insertBefore(_nbsp, oh);
  }
}

function addElement(cName, cId, iSize, iMax) {
  el = document.getElementById(cName + '0');
  if (el) {
    var _new = el.cloneNode(true);
    _new.name = cName.toUpperCase() + '[' + cId + ']';
    alert(_new.name);
    _new.id = cName + cId;
    _new.size = iSize;
    _new.maxLength = iMax;
    _new.value = '';
    _new.className = el.className;
    _new.type = el.type;
    return _new;
  } else return false;
}

function addRoute() {
  fotos++;
  ta = document.getElementById('files');
  el = document.getElementById('name0');
  co = document.getElementById('coef0');
  fi = document.getElementById('file0');
  if (el && fi && ta) {
    _new = el.cloneNode(true);
    _new.name = 'NAME[' + fotos + ']';
    _new.type = 'text';
    _new.id = 'name' + fotos;
    _new.size = 20;
    _new.maxLength = 50;
    _new.value = '';
    _coe = el.cloneNode(true);
    _coe.name = 'COEF[' + fotos + ']';
    _coe.type = 'text';
    _coe.id = 'coef' + fotos;
    _coe.size = 20;
    _coe.maxLength = 50;
    _coe.value = '';
    _fil = el.cloneNode(true);
    _fil.value = '';
    _fil.name = 'FILE[' + fotos + ']';
    _fil.className = 'file';
    _fil.type = fi.type;
    _fil.id = 'file' + fotos;
    _fil.size = fi.size;
    ro = ta.insertRow(fotos + 1);
    c1 = ro.insertCell(0);
    c1.insertBefore(_new, null);
    c2 = ro.insertCell(1);
    c2.insertBefore(_coe, null);
    c2 = ro.insertCell(2);
    c2.insertBefore(_fil, null);
    c3 = ro.insertCell(3);


/*    _br = document.createElement('br');
    _nbsp = document.createTextNode(' ');
    el.parentNode.insertBefore(_br, o1);
    fi.parentNode.insertBefore(_br, o2);
    fi.parentNode.insertBefore(_fil, o2);*/
//    el.parentNode.insertBefore(_nbsp, oh);
  }
  return false;
}

function copyChilds(oSrcNode, oDestNode, cExcept) {
  aExcept = cExcept.split(';');
  for (i=0; i<oSrcNode.childNodes.length; i++) {
    lMove = false;
    for (j=0; j<aExcept.length; j++) if (aExcept[j] == oSrcNode.childNodes[i].name) {
      lMove = true;
      break;
    }   
    if (lMove) oNode = oSrcNode.childNodes[i];
    else {
      oNode = oSrcNode.childNodes[i].cloneNode(true);
      if (oNode.tagName == 'INPUT' || oNode.tagName == 'TEXTAREA') {
        oNode.value = '';
        cTmp = oNode.name;
        iPos = cTmp.search(/\[/i);
        if (iPos > 0) {
          iPos2 = cTmp.search(/\]/i);
          cNum = cTmp.substring(iPos + 1, iPos2);
          cNum++;
          cTmp = cTmp.substring(0, iPos);
          oNode.name = cTmp + '[' + cNum + ']';
        }
      }  
    }  
    oDestNode.appendChild(oNode);
  }
}

function addFile() {
  rfls--;
  oTable = document.getElementById("filetable");
  if (oTable) {
    el_fi = document.getElementById('file0');
    el_de = document.getElementById('desc0');
    oLastRow = oTable.rows.item(oTable.rows.length - 1);
    oNewRow = oTable.insertRow(oTable.rows.length);
    oCell = oNewRow.insertCell(0);
    copyChilds(oLastRow.cells.item(0), oCell, '');
    oCell = oNewRow.insertCell(1);																																																																												 
    copyChilds(oLastRow.cells.item(1), oCell, '');
    oCell = oNewRow.insertCell(2);
  }
}

/**
 * function addCopyText - copy text from object oEl to text field DESC with id DESC[cId] 
 * @param object oEl
 * @param string cId
 * @author Rony
**/
function addCopyText(oEl, cId) {
  if (oEl) {
    aAr = oEl.name.match(/\[(.*?)\]/);
    oDesc = document.getElementById('DESC[' + aAr[1] + ']');
    if (oDesc && oEl.value) oDesc.value = oEl.options[oEl.selectedIndex].text + ':';
  }
}

/**
 * function copyRow - copy row  
 * @param object oSource source row
 * @param object oDest destination row
 * @author Rony
**/
function copyCells(oSource, oDest, cExcept, cNoCopy, lMinus) {
  aExcept = cExcept.split(';');
  aNo = cNoCopy.split(';');
  for (i=0; i<oSource.childNodes.length; i++) {
    lMove = false;
    if (cExcept != '') for (j=0; j<aExcept.length; j++) if (aExcept[j] == oSource.childNodes[i].name) {
      lMove = true;
      break;
    }
    lNo = false;
    if (cNoCopy != '') for (j=0; j<aNo.length; j++) if (aNo[j] == oSource.childNodes[i].tagName) {
      lNo = true;
      break;
    }
    if (lMove) oNode = oSource.childNodes[i];
    else {
      oNode = oSource.childNodes[i].cloneNode(true);
      if (oNode.tagName == 'INPUT' || oNode.tagName == 'TEXTAREA' || oNode.tagName == 'SELECT') {
        if (oNode.type == 'checkbox') oNode.checked = false;
        else oNode.value = '';
        cTmp = oNode.name;
        iPos = cTmp.search(/\[/i);
        if (iPos > 0) {
          iPos2 = cTmp.search(/\]/i);
          cNum = cTmp.substring(iPos + 1, iPos2);
          if (lMinus) {
            if (cNum > 0) cNum = 0;
            cNum--;
          } else cNum++;
          cTmp = cTmp.substring(0, iPos);
          oNode.name = cTmp + '[' + cNum + ']';
          oNode.id = cTmp + '[' + cNum + ']';
        }
      }  
    }  
    if (!lNo) oDest.appendChild(oNode);
  }
}

/**
 * function copyRow - copy row  
 * @param object oSource source row
 * @param object oDest destination row
 * @author Rony
**/
function copyRow(oSource, oDest) {
  for (var i=0; i<oSource.cells.length; i++) {
    oCell = oNewRow.insertCell(i);
    copyCells(oSource.cells.item(i), oCell, '', 'A', true);
  }
}

/**
 * function newFieldAppForm - create line for new field in app form 
 * @param object oForm
 * @author Rony
**/
function newFieldAppForm(oForm) {
  if (oForm) {
    oTable = document.getElementById('app_table');
    oLastRow = oTable.rows.item(oTable.rows.length - 1);
    oNewRow = oTable.insertRow(oTable.rows.length);
    copyRow(oLastRow, oNewRow);
  }
}
