/*
 *  Dokument:       Zakladni spolecne funkce pro js
 *  Posledni zmena: 22.04.2009
 */

String.prototype.trim = function()
{
  a = this.replace(/^\s+/, '');
  return a.replace(/\s+$/, '');
}


/** Zkontroluje zda zadany text obsahuje diakritiku
 */
function bezdiakString(string)
{
  var sdiak = "áäèïéìíåžòóôõöà??úùûüýø?ÁÄÈÏÉÌÍÅŸÒÓÔÕÖÀ??ÚÙÛÜÝØ?";

  var spravne = 1;  // 1 = bez diakritiky, 2 = s diakritikou

  for(p = 0; p < string.length; p++)
  { // proverim, jestli v nazvu neni znak s diakritikou...

    if(sdiak.indexOf(string.charAt(p)) != -1)
    {
      spravne = 2;
      break;
    }
    else continue;
  } // end for

  if(spravne > 1) return false;
  else return true;
} // end function

/** Zkontroluje platny format emailove adresy
 */
function validEmail(email)
{
  invalidChars = " /:,;"

  if(email == "")
  {
    return false
  }
  for(i=0; i < invalidChars.length; i++)
  {
    badChar = invalidChars.charAt(i)
    if (email.indexOf(badChar,0) > -1)
    {
      return false
    }
  }
  atPos = email.indexOf("@",1)
  if(atPos == -1)
  {
    return false
  }
  if(email.indexOf("@",atPos+1) > -1)
  {
    return false
  }
  periodPos = email.indexOf(".",atPos)
  if(periodPos == -1)
  {
    return false
  }
  if(periodPos+3 > email.length)
  {
    return false
  }
  return true
}

/** Zkontroluje platny format data.
 */
function validDate(date)
{
  return true;
}

/** Zkontroluje platny format telefonu.
 */
function validPhone(phonenumber)
{
  return true;
}


/** Zkontroluje jestli je vlozena hodnota cislo
 */
function isNum(passedVal)
{
  if(passedVal == "")
  {
    return false
  }
  for(i = 0; i < passedVal.length; i++)
  {
    if(passedVal.charAt(i) < "0")
    {
      return false
    }
    if(passedVal.charAt(i) > "9")
    {
      return false
    }
  }
  return true
}

/** Zkontroluje jestli je vlozena hodnota realne cislo
 */
function isNumReal(passedVal)
{
  if(passedVal == "" || passedVal == "." || passedVal == ",")
    return false;

  var validChars = "0123456789.,";

  for(i = 0; i < passedVal.length; i++)
  {
    if(validChars.indexOf(passedVal.charAt(i)) == -1)
    {
      return false;
    }
  }
  return true;
}

/** Nalezne pozici ojektu
 *
 */
function findObjectPos(obj)
{
  var curtop = 0;
  if(obj.offsetParent)
  {
    do
    {
      curtop += obj.offsetTop;
    }
    while(obj = obj.offsetParent);
    return [curtop];
  }
  return 0;
}