// file features.js

/* global declarations */


/* FUNCTIONS *********************************************************************/


/* removeIndex(dd)
 * @param dd - element select
 * @return - void
 */
function removeIndex(dd)
{
 if(dd.options[0].value=='' || dd.options[0].value=='NULL')
 {
  dd.remove(dd.options[0]);
 }
}


/* removeAllOptions(dd)
 * @param elem - element select
 * @return - void
 */
function removeAllOptions(elem)
{
 var i=elem.length;
 
 while(i>0)
 {
  elem.remove(i-1);
  i--;
 }
}


/* makeSure(txt)
 * @param txt - output string
 * @return - true if OK, false if canceled
 */
function makeSure(txt)
{
 return (confirm(txt))? true : false;
}


/* loadLangContent(curr, elem)
 * @param curr - current elem
 * @return - true if OK, false if canceled
 */
function loadLangContent(curr, elem)
{
 var x=document.getElementById(elem);
 
 x.disabled=true;
 removeAllOptions(x);
 
 var lang_id=curr.options[curr.selectedIndex].value;
 
 x_printLangOptions('', lang_id, insertOptions);
 
 function insertOptions(str)
 {
  x.innerHTML=str;
  
  x.disabled=false;
 }
 
 return false;
}


/* removeRow(curr)
 * @param curr - a href element
 * 
 */
function removeRow(curr)
{
 tableId=curr.parentNode.parentNode.parentNode.parentNode.id;
 
 if(tableId.length<1)
 {
  return false;
 }
 
 var i=curr.parentNode.parentNode.rowIndex;
 var x=document.getElementById(tableId).deleteRow(i);
 
 return false;
}

/* printInput(curr, txtRem)
 * @param curr - a href element
 * @param txt...  - string with writing
 * @param Bcount - boolean count rows? 
 * 
 */
function printInput(curr, txtRem, Bcount)
{
 tableId=curr.parentNode.parentNode.parentNode.parentNode.id;
 
 if(tableId.length<1)
 {
  return false;
 }
 
 var i=curr.parentNode.parentNode.rowIndex;
 var x=document.getElementById(tableId).insertRow(i);
 // prvni bunka
 var y=x.insertCell(0);
 var desc=new Number(i);
 y.innerHTML=desc.toString()+'.';
 y.className='aRight';
 // druha bunka
 var z=x.insertCell(1);
 
 z.innerHTML='<input type="text" name="val[]" value="" size="25" /> &nbsp;<a class="smazat" href="#" onclick="return removeRow(this);">'+txtRem+'</a>';
 
 return false;
}


/* printTextfield(curr, txtRem)
 * @param curr - a href element
 * @param txt...  - string with writing
 * @param label - string with label 
 * 
 */
function printTextfield(curr, txtRem, label)
{
 tableId=curr.parentNode.parentNode.parentNode.parentNode.id;
 
 if(tableId.length<1)
 {
  return false;
 }
 
 var i=curr.parentNode.parentNode.rowIndex;
 var x=document.getElementById(tableId).insertRow(i);
 // prvni bunka
 var y=x.insertCell(0);
 y.innerHTML=label;
 y.className='aRight';
 // druha bunka
 var z=x.insertCell(1);
 
 z.innerHTML='<textarea rows="5" cols="40" name="answer[]"></textarea> &nbsp;<a class="smazat" href="#" onclick="return removeRow(this);">'+txtRem+'</a>';
 
 return false;
}

/* showHideElement(key, elemID)
 * @param elemID - element ID
 * 
 */
function showHideElem(key, elemID)
{
 if(key==1)
 {
  document.getElementById(elemID).style.display="none";
  document.getElementById(elemID).parentNode.parentNode.className="order_disabled";
 }
 else
 {
  document.getElementById(elemID).parentNode.parentNode.className="";
  document.getElementById(elemID).style.display="";
 }
 
 return false;
}


/* updateValues(curr)
 * @param curr - a href element
 * @param txt...  - string with writing
 * 
 */
function updateValues(curr)
{
 x=curr.nextSibling;
 
 // vybereme obalovaci <span>
 while(x.nodeType!=1 && x.nodeName!='SPAN')
 {
  x=x.nextSibling;
 }
 
 val=x;
 
 while(val.nodeType!=1 && val.nodeName!='SPAN')
 {
  val=val.nextSibling;
 }
 val.className="grey";
 
 sel=val;
 while(sel.nodeType!=1 && sel.nodeName!='SELECT')
 {
  sel=sel.nextSibling;
 }
 sel.disabled=true;
 
 x_printDocOptions(curr.value, printRow);
 
 function printRow(str)
 {
  x.innerHTML=str;
 }
 
 sel.disabled=false;
 val.className="";
 
 return false;
}

/* printFolders(curr, txtMore, txtRem)
 * @param curr - a href element
 * @param txt...  - string with writing
 * 
 */
function printFolders(curr, txtMore, txtRem)
{
 tableId=curr.parentNode.parentNode.parentNode.parentNode.id;
 
 if(tableId.length<1)
 {
  return false;
 }
 
 var i=curr.parentNode.parentNode.rowIndex;
 var x=document.getElementById(tableId).insertRow(i);
 // prvni bunka
 var y=x.insertCell(0);
 y.innerHTML=txtMore;
 y.className='aRight';
 // druha bunka
 var z=x.insertCell(1);
 
 z.innerHTML='<span class="grey">nahrávám...</span>';
 
 x_printFolderOptions(printRow);
 
 function printRow(str)
 {
  z.innerHTML=str+' &nbsp;<a class="smazat" href="#" onclick="return removeRow(this);">'+txtRem+'</a>';
 }
 
 return false;
}

// vlozi do  
function printNewImageForm(){

  var tbl = document.getElementById('basic2'); // tabulka
  var lastRow = tbl.rows.length; // posledni radek
  // if there's no header row in the table, then iteration = lastRow + 1
  var iteration = lastRow; 
  var row = tbl.insertRow(lastRow-1);
  
  
  
  // select cell
  /*var cellRightSel = row.insertCell(0);
  cellRightSel.appendChild(sel);*/
  
  x_printNewImageForm( printNewImageForm2);
  function printNewImageForm2(str){
    // left cell
    var cellLeft = row.insertCell(0);
    //var textNode = document.createTextNode(str);
    cellLeft.innerHTML = str;

  }

  return false;
}


