function trim(str)
{
  return str.replace(/^\s*|\s*$/g,"");
} 

function changePic(oImg, bChange)
{		
	if (bChange)
	{
		oImg.src='skins/default/'+oImg.id+'_green.jpg';
	}
	else
	{
		oImg.src='skins/default/'+oImg.id+'.jpg';
	}
}

function isDefault(sFormName,sName)
{
  var fieldValue = trim(document.forms[sFormName].elements[sName].value);
  var defaultValue = "";
  if (document.getElementById(sName+"_default")) defaultValue = document.getElementById(sName+"_default").innerHTML;
  if (fieldValue == defaultValue)
    return true;
  else return false;
}

function validate_field(sRegexp, sFormName, sName, sEmsg, bPrint)
{
  var reg = eval(sRegexp);  
  var fieldValue = trim(document.forms[sFormName].elements[sName].value);
//  var defaultValue = "";
//  if (document.getElementById(sName+"_default")) defaultValue = document.getElementById(sName+"_default").innerHTML;
  if(reg.test(fieldValue) == false || isDefault(sFormName,sName))
   {
     if (!bPrint || !document.getElementById(sName+"_emsg"))
     {
       alert(sEmsg);
       document.forms[sFormName].elements[sName].focus();
       return 'alert';
     }  
     else
     {
       if (document.getElementById(sName+"_emsg").innerHTML != sEmsg)
         document.getElementById(sName+"_emsg").innerHTML = sEmsg;
      document.getElementById(sName+"_emsg").style.display = 'block';
      return 'print';
     }
   }
   if (document.getElementById(sName+"_emsg"))
     document.getElementById(sName+"_emsg").style.display = 'none';
  return true;
}

function validate_compareInvert(sFormName, sOriginal, sCopy, sEmsg, bPrint)
{
  if (trim(document.forms[sFormName].elements[sOriginal].value) == trim(document.forms[sFormName].elements[sCopy].value))
  {
    if (!bPrint || !document.getElementById(sCopy+"_emsg"))
    {
      alert(sEmsg);
      document.forms[sFormName].elements[sCopy].focus();
       return 'alert';
    }
    else
    {
      if (document.getElementById(sCopy+"_emsg").innerHTML != sEmsg)
         document.getElementById(sCopy+"_emsg").innerHTML = sEmsg;
      document.getElementById(sCopy+"_emsg").style.display = 'block';
      return 'print';
    }
  }
  if (document.getElementById(sCopy+"_emsg"))
     document.getElementById(sCopy+"_emsg").style.display = 'none';
  return true;
}

function validate_compare(sFormName, sOriginal, sCopy, sEmsg, bPrint)
{
  if (trim(document.forms[sFormName].elements[sOriginal].value) != trim(document.forms[sFormName].elements[sCopy].value))
  {
    if (!bPrint || !document.getElementById(sCopy+"_emsg"))
    {
      alert(sEmsg);
      document.forms[sFormName].elements[sCopy].focus();
       return 'alert';
    }
    else
    {
      if (document.getElementById(sCopy+"_emsg").innerHTML != sEmsg)
         document.getElementById(sCopy+"_emsg").innerHTML = sEmsg;
      document.getElementById(sCopy+"_emsg").style.display = 'block';
      return 'print';
    }
  }
  if (document.getElementById(sCopy+"_emsg"))
     document.getElementById(sCopy+"_emsg").style.display = 'none';
  return true;
}

function validate_listitemselected(sFormName, sSelectName, sEmsg, bPrint)
{
  if (document.forms[sFormName].elements[sSelectName].selectedIndex == 0)
  {
    if (!bPrint || !document.getElementById(sSelectName+"_emsg"))
    {
      alert(sEmsg);
      document.forms[sFormName].elements[sSelectName].focus();
       return 'alert';
    }
    else
    {
      if (document.getElementById(sSelectName+"_emsg").innerHTML != sEmsg)
         document.getElementById(sSelectName+"_emsg").innerHTML = sEmsg;
      document.getElementById(sSelectName+"_emsg").style.display = 'block';
      return 'print';
    }
  }
  if (document.getElementById(sSelectName+"_emsg"))
     document.getElementById(sSelectName+"_emsg").style.display = 'none';
  return true;
}

function loginform_validate(sFormName,bPrint)
{
  var sUserRegexp = /^\w{6,15}$/;
  var sPassRegexp = /^[\x21-\x7E]{6,15}$/;

  if (validate_field(sUserRegexp,sFormName,"txtUser","A felhasználónév hibás! \n (minimum 6 karakter)",bPrint)=='alert')
    return false;
  
  if (validate_field(sPassRegexp,sFormName,"txtPass","A jelszó hibás! (minimum 6 karakter)",bPrint)=='alert')
    return false;

  return true;
}

function registrationForm_validate(oForm,bPrint)
{
  var bValid = true;
  
  var sNameRegexp = /^.{3,30}$/;
  var sUserRegexp = /^\w{6,15}$/;
  var sEmailRegexp = /^(\w+\.)*\w+@(\w+\.)*[a-zA-Z]{2,4}$/;
  var sPassRegexp = /^[\x21-\x7E]{6,15}$/  //^.{6,15}$/;
  
  //var sLocationRegexp = /^[a-zA-Z|ő|ú|é|á|ű|ó|ü|ö|í|Í|É|Á|Ű|Ú|Ő|Ó|Ü|Ö]{3,}[ \(\)\/\.0-9\,a-zA-Z|ő|ú|é|á|ű|ó|ü|ö|í|Í|É|Á|Ű|Ú|Ő|Ó|Ü|Ö]*$/;
  
  var sLocationRegexp = /^.{3,50}$/;
  
  var sCodecheckRegexp = /^.{6,8}$/;
  
  if (validate_field(sNameRegexp,oForm,"txtLastName","A vezetéknév hibás! (minimum 3 karakter)",bPrint)=='alert')
    return false;
  else if  (validate_field(sNameRegexp,oForm,"txtLastName","A vezetéknév hibás! (minimum 3 karakter)",bPrint)=='print')
    bValid = false;
    
  if (validate_field(sNameRegexp,oForm,"txtFirstName","A keresztnév hibás! (minimum 3 karakter)",bPrint)=='alert')
    return false;
  else if  (validate_field(sNameRegexp,oForm,"txtFirstName","A keresztnév hibás! (minimum 3 karakter)",bPrint)=='print')
    bValid = false;
  
  if (validate_field(sEmailRegexp,oForm,"txtEmail","Csak szabályos e-mail cím fogadható el!",bPrint)=='alert')
    return false;
  else if  (validate_field(sEmailRegexp,oForm,"txtEmail","Csak szabályos e-mail cím fogadható el!",bPrint)=='print')
    bValid = false;
  
  if (validate_compare(oForm,"txtEmail","txtReEmail","Az e-mail cím és megerősítése nem egyezik!",bPrint)=='alert')
    return false;
  else if  (validate_compare(oForm,"txtEmail","txtReEmail","Az e-mail cím és megerősítése nem egyezik!",bPrint)=='print')
    bValid = false;
    
  if (validate_field(sUserRegexp,oForm,"txtUserName","A felhasználónév hibás!\n\n(minimum 6 karakter és csak a következő karakterek szerepelhetnek benne : \n angol kis- és nagybetűk, számok és '_')",bPrint)=='alert')
    return false;
  else if  (validate_field(sUserRegexp,oForm,"txtUserName", "A felhasználónév hibás! (minimum 6 karakter és csak a következő karakterek szerepelhetnek benne : \n angol kis- és nagybetűk, számok és '_')",bPrint)=='print')
    bValid = false;
    
  if (validate_field(sPassRegexp,oForm,"txtPasswd","A jelszó hibás! (minimum 6 karakter)",bPrint)=='alert')
    return false;
  else if  (validate_field(sPassRegexp,oForm,"txtPasswd","A jelszó hibás! (minimum 6 karakter)",bPrint)=='print')
    bValid = false;
  
  if (validate_compare(oForm,"txtPasswd","txtRePasswd","A jelszó és megerősítése nem egyezik!",bPrint)=='alert')
    return false;
  else if  (validate_compare(oForm,"txtPasswd","txtRePasswd","A jelszó és megerősítése nem egyezik!",bPrint)=='print')
    bValid = false;
  
  if (validate_compareInvert(oForm,"txtUserName","txtPasswd","A felhasználónév és a jelszó nem egyezhet meg!",bPrint)=='alert' )
    return false;
  
  if (validate_field(sLocationRegexp,oForm,"txtLocation","A lakóhely hibás! (minimum 3 karakter)",bPrint)=='alert')
    return false;
  else if  (validate_field(sLocationRegexp,oForm,"txtLocation","A lakóhely hibás! (minimum 3 karakter)",bPrint)=='print')
    bValid = false;
  
  if (validate_field(sCodecheckRegexp,oForm,"txtCodeCheck","Adja meg a képen látható kódot!",bPrint)=='alert')
    return false;
  else if  (validate_field(sCodecheckRegexp,oForm,"txtCodeCheck","Adja meg a képen látható kódot!",bPrint)=='print')
    bValid = false;
  
  if (!bValid)
    window.location.hash="form"; 
    
  return bValid;  
}

function textCounter(oField, oCounter, nMaxLimit)
{
  if (oField.value.length > nMaxLimit) 
    oField.value = oField.value.substring(0, nMaxLimit);
  else
  {
    if (oField.value.length < 10 && nMaxLimit >= 100)
      oCounter.innerHTML = '00'+oField.value.length+'/'+nMaxLimit;
    if ((oField.value.length < 100 && oField.value.length >= 10) || (oField.value.length < 10 && nMaxLimit < 100))
      oCounter.innerHTML = '0'+oField.value.length+'/'+nMaxLimit;
    if (oField.value.length >= 100 || (oField.value.length >= 10 && nMaxLimit < 100))
      oCounter.innerHTML = oField.value.length+'/'+nMaxLimit;
  }
}

function clearHint(oInput, sInit)
{
  if (oInput.value == sInit)
    oInput.value='';
}

function showDetails(oTrigger)
{
  var oContainer = document.getElementById("list_elements");
  var oDiv = oContainer.firstChild.nextSibling;
  
  while (oDiv.nextSibling)
  {
    if (oDiv.id)
    {
      if (oDiv.id.indexOf("elementN") != -1)
      { 
        if (oTrigger.src){ //if trigger is an img
          if (oDiv.id == "element"+oTrigger.id)
          {
            if( oDiv.style.display=='none' )
            {
              oDiv.style.display='block';
              oTrigger.src="skins/default/element_close_detail_btn.jpg";
            }
            else
            {
              oDiv.style.display='none';
              oTrigger.src="skins/default/element_open_detail_btn.jpg";
            }
          }
          else
          {
            oDiv.style.display='none';
            document.getElementById(oDiv.id.substring(7)).src="skins/default/element_open_detail_btn.jpg";
          }
        } else { // if trigger is the title of the element
          if (oDiv.id == "element"+oTrigger.id.substring(1))
          {
            if( oDiv.style.display=='none' )
            {
              oDiv.style.display='block';
              document.getElementById(oTrigger.id.substring(1)).src="skins/default/element_close_detail_btn.jpg";
            }
            else
            {
              oDiv.style.display='none';
              document.getElementById(oTrigger.id.substring(1)).src="skins/default/element_open_detail_btn.jpg";
            }
          } else {
            oDiv.style.display='none';
            document.getElementById(oDiv.id.substring(7)).src="skins/default/element_open_detail_btn.jpg";
          }
        }
      }
    }
    oDiv = oDiv.nextSibling;
  }
}

function createListForm_validate(sFormName, bPrint)
{
  var bValid = true;
  var sListNameRegexp = /^.{3,80}$/;     
  var sListRowTitleRegexp = /^.{3,20}$/;
 
  bReturn = validate_field(sListNameRegexp, sFormName, "txtListName", "A lista neve hibás! (minimum 3 karakter maximum 80)",bPrint);
  if (bReturn == 'alert')
    return false;
  else if  (bReturn == 'print')
    bValid = false;  
    
  if (trim(document.getElementById("txtListDesc").value).length < 5 || 
      trim(document.getElementById("txtListDesc").value).length > 300 ||
      isDefault(sFormName,document.getElementById("txtListDesc").id))
  {
    alert("A lista leírása hibás! (minimum 5 és maximum 300 karakter)");
    document.forms[sFormName].elements["txtListDesc"].focus();
    return false;
  } 
    
  bReturn = validate_listitemselected(sFormName, "sListCategory", "Adja meg a lista kategóriát!",bPrint);
  if (bReturn == 'alert')
    return false;
  else if  (bReturn == 'print')
    bValid = false;      

  // check list
  oRowNumSelect = document.forms[sFormName].elements["sElementRows"];
  rowNum = oRowNumSelect.options[oRowNumSelect.selectedIndex].value;
  
  for (i=1; i<=rowNum; i++)
  {
    bReturn = validate_field(sListRowTitleRegexp, sFormName, "txtRowName" + i, "Adja meg a(z) " + i +". sor megnevezését! (minimum 3 karakter maximum 20)", bPrint);
    if (bReturn == 'alert')
      return false;
    else if  (bReturn == 'print')
      bValid = false;  
  }
    
  return bValid;    
  
}

function selectRows()
{
  var rowNumber=document.getElementById("sElementRows").selectedIndex;

  document.getElementById("row0").style.display='none';
  document.getElementById("row1").style.display='none';
  document.getElementById("row2").style.display='none';
  document.getElementById("row3").style.display='none';
  document.getElementById("row4").style.display='none';
  
  switch (rowNumber) {
    case 4:
      document.getElementById("row4").style.display='block';
    case 3:
      document.getElementById("row3").style.display='block';
    case 2:
      document.getElementById("row2").style.display='block';
    case 1:
      document.getElementById("row1").style.display='block';
    case 0:
      document.getElementById("row0").style.display='block';
  }
}

function createListElementForm_validate(sFormName, bPrint)
{
  var bValid = true;
  var sListElementNameRegexp = /^.{2,30}$/;        

  aFormControls = document.forms[sFormName].elements;
  
  for (i=0; i<aFormControls.length; i++)
  {
    if (aFormControls[i].id.indexOf("Element") != -1)
    {
      //bReturn = validate_field(sListElementNameRegexp, sFormName, aFormControls[i].id, "A listaelem neve hibás! (minimum 2 karakter)",bPrint);
      bReturn = validate_field(sListElementNameRegexp, sFormName, aFormControls[i].id, "Hopsz! Rosszul adtad meg az elem nevét, kérlek, javítsd! (minimum 2 karakter)",bPrint);
      if (bReturn == 'alert')
        return false;
      else if  (bReturn == 'print')
        bValid = false;
    }
    else if (aFormControls[i].id.indexOf("Type") != -1)
    {
      if (trim(document.getElementById(aFormControls[i].id).value).length < 2 || 
          trim(document.getElementById(aFormControls[i].id).value).length > 300 ||
          isDefault(sFormName,aFormControls[i].id))
      {
        //alert("A listaelem leírása hibás! (minimum 2 és maximum 300 karakter)");
        alert("Hopsz! Rosszul adtál meg egy elem leírását, kérlek, javítsd! (minimum 2 és maximum 300 karakter)");
        document.forms[sFormName].elements[aFormControls[i].id].focus();
        return false;
      }
    }
    else if (aFormControls[i].id.indexOf("Url") != -1)
    {
      if (trim(document.getElementById(aFormControls[i].id).value).length > 0)
      {
        if (trim(document.getElementById(aFormControls[i].id).value).length < 3 || 
            trim(document.getElementById(aFormControls[i].id).value).length > 100 ||
            isDefault(sFormName,aFormControls[i].id))
        {
          alert("Hopsz! Rosszul adtad meg az elemhez tartozó weboldalt, kérlek, javítsd! (minimum 3 és maximum 100 karakter vagy üres)");
          document.forms[sFormName].elements[aFormControls[i].id].focus();
          return false;
        }
      }
    }
  }
    
  return bValid;    
  
}

function proposeElementForm_validate(sFormName, bPrint)
{
  var bValid = true;
  var sListElementNameRegexp = /^.{2,30}$/;
  
  aFormControls = document.forms[sFormName].elements;
  
  for (i=0; i<aFormControls.length; i++)
  {
    if (aFormControls[i].id.indexOf("Element") != -1)
    {
      bReturn = validate_field(sListElementNameRegexp, sFormName, aFormControls[i].id, "A listaelem neve hibás! (minimum 2 karakter)",bPrint);
      if (bReturn == 'alert')
        return false;
      else if  (bReturn == 'print')
        bValid = false;
    }
    if (aFormControls[i].id.indexOf("Type") != -1)
    {
      if (trim(document.getElementById(aFormControls[i].id).value).length < 2 || 
          trim(document.getElementById(aFormControls[i].id).value).length > 300 ||
          isDefault(sFormName,aFormControls[i].id))
      {
        alert("A listaelem leírása hibás! (minimum 2 és maximum 300 karakter)");
        document.forms[sFormName].elements[aFormControls[i].id].focus();
        return false;
      }
    }
    if (aFormControls[i].id.indexOf("Motivation") != -1)
    {
      if (trim(document.getElementById(aFormControls[i].id).value).length < 5 || 
          trim(document.getElementById(aFormControls[i].id).value).length > 300 ||
          isDefault(sFormName,aFormControls[i].id))
      {
        alert("A listaelem indoklása hibás! (minimum 5 maximum 300 karakter)");
        document.forms[sFormName].elements[aFormControls[i].id].focus();
        return false;
      }
    }
    if (aFormControls[i].id.indexOf("Url") != -1)
    {
      if (trim(document.getElementById(aFormControls[i].id).value).length > 0)
      {
        if (trim(document.getElementById(aFormControls[i].id).value).length < 3 || 
            trim(document.getElementById(aFormControls[i].id).value).length > 100 ||
            isDefault(sFormName,aFormControls[i].id))
        {
          alert("A listaelemhez tartozó weboldal címe hibás! (minimum 3 és maximum 100 karakter vagy üres)");
          document.forms[sFormName].elements[aFormControls[i].id].focus();
          return false;
        }
      }
    }
  }
    
  return bValid;    
  
}

function contactform_validate(sFormName, bPrint)
{
  var sUserRegexp = /^\w{6,15}$/;
  var sEmailRegexp = /^(\w+\.)*\w+@(\w+\.)*[a-zA-Z]{2,4}$/;
  var sCodecheckRegexp = /^.{6,8}$/;

  if (validate_field(sUserRegexp,sFormName,"txtUserName","A felhasználónév hibás! \n (minimum 6 karakter)",bPrint)=='alert')
    return false;
  
  if (validate_field(sEmailRegexp,sFormName,"txtEmail","Csak szabályos e-mail cím fogadható el!",bPrint)=='alert')
    return false;
    
  if (trim(document.getElementById("txtMessage").value).length < 1)
      {
        alert("Kérem adja meg az üzenet szövegét!");
        document.forms[sFormName].elements["txtMessage"].focus();
        return false;
      }
      
  if (validate_field(sCodecheckRegexp,sFormName,"txtCodeCheck","Adja meg a képen látható kódot!",bPrint)=='alert')
    return false;
     
  return true; 
}

function searchform_validate(sFormName, bPrint)
{
  if (trim(document.getElementById("txtSearchtext").value).length < 3)
      {
        alert("A keresett szó túl rövid! (minimum 3 karakter)");
        document.forms[sFormName].elements["txtSearchtext"].focus();
        return false;
      }
}

function forgottenform_validate(sFormName, bPrint)
{
  var sUserRegexp = /^\w{6,15}$/;
  var sEmailRegexp = /^(\w+\.)*\w+@(\w+\.)*[a-zA-Z]{2,4}$/;

  if (validate_field(sUserRegexp,sFormName,"txtUser","A felhasználónév hibás! \n (minimum 6 karakter)",bPrint)=='alert')
    return false;
  
  if (validate_field(sEmailRegexp,sFormName,"txtEmail","Csak szabályos e-mail cím fogadható el!",bPrint)=='alert')
    return false;

  return true;
}

function user_editdataForm_validate(oForm,bPrint)
{
  var sNameRegexp = /^.{3,30}$/;
  var sUserRegexp = /^\w{6,15}$/;
  var sEmailRegexp = /^(\w+\.)*\w+@(\w+\.)*[a-zA-Z]{2,4}$/;
  var sPassRegexp = /^[\x21-\x7E]{6,15}$/  //^.{6,15}$/;
  var sContactsRegexp = /^.{1,50}$/;
  
  //var sLocationRegexp = /^[a-zA-Z|ő|ú|é|á|ű|ó|ü|ö|í|Í|É|Á|Ű|Ú|Ő|Ó|Ü|Ö]{3,}[ \(\)\/\.0-9\,a-zA-Z|ő|ú|é|á|ű|ó|ü|ö|í|Í|É|Á|Ű|Ú|Ő|Ó|Ü|Ö]*$/;
  
  var sLocationRegexp = /^.{3,50}$/;
  
  if (validate_field(sNameRegexp,oForm,"txtLastName","A vezetéknév hibás! (minimum 3 karakter)",bPrint)=='alert')
    return false;
    
  if (validate_field(sNameRegexp,oForm,"txtFirstName","A keresztnév hibás! (minimum 3 karakter)",bPrint)=='alert')
    return false;
  
  if (validate_field(sEmailRegexp,oForm,"txtEmail","Csak szabályos e-mail cím fogadható el!",bPrint)=='alert')
    return false;
  
  if (validate_compare(oForm,"txtEmail","txtReEmail","Az e-mail cím és megerősítése nem egyezik!",bPrint)=='alert')
    return false;
    
  if (document.getElementById("txtPasswd").value != "" || document.getElementById("txtRePasswd").value != "")
  {
    if (validate_field(sPassRegexp,oForm,"txtPasswd","A jelszó hibás! (minimum 6 karakter)",bPrint)=='alert')
      return false;
      
    if (validate_compare(oForm,"txtPasswd","txtRePasswd","A jelszó és megerősítése nem egyezik!",bPrint)=='alert')
      return false;
  }    
    
  if (validate_field(sLocationRegexp,oForm,"txtLocation","A lakóhely hibás! (minimum 3 karakter)",bPrint)=='alert')
    return false;
  
  if (trim(document.getElementById("txtIntro").value).length > 500)
      {
        alert("A bemutatkozás túl hosszú (maximum 500 karakter)!");
        document.forms[oForm].elements["txtIntro"].focus();
        return false;
      }
  
  if (trim(document.getElementById("txtInterests").value).length > 300)
      {
        alert("Az érdeklődési kör leírása túl hosszú (maximum 300 karakter)!");
        document.forms[oForm].elements["txtInterests"].focus();
        return false;
      }
    
  if (document.getElementById("txtIcq").value != "")
    if (validate_field(sContactsRegexp,oForm,"txtIcq","Az Icq azonosító túl hosszú (maximum 50 karakter)!",bPrint)=='alert')
      return false;
  
  if (document.getElementById("txtYahoo").value != "")
    if (validate_field(sContactsRegexp,oForm,"txtYahoo","A Yahoo azonosító túl hosszú (maximum 50 karakter)!",bPrint)=='alert')
      return false;

  if (document.getElementById("txtMsn").value != "")
    if (validate_field(sContactsRegexp,oForm,"txtMsn","Az MSN azonosító túl hosszú (maximum 50 karakter)!",bPrint)=='alert')
      return false;
    
  if (document.getElementById("txtSkype").value != "")
    if (validate_field(sContactsRegexp,oForm,"txtSkype","A Skype azonosító túl hosszú (maximum 50 karakter)!",bPrint)=='alert')
      return false;
     
  return true;  
}

function editListForm_validate(sFormName, bPrint)
{
  var bValid = true;
  var sListNameRegexp = /^.{3,80}$/;  
 
  bReturn = validate_field(sListNameRegexp, sFormName, "txtListName", "A lista neve hibás! (minimum 3 karakter maximum 80)",bPrint);
  if (bReturn == 'alert')
    return false;
  else if  (bReturn == 'print')
    bValid = false;
    
  if (trim(document.getElementById("txtListDesc").value).length < 5 ||
      trim(document.getElementById("txtListDesc").value).length > 300)
      {
        alert("A lista leírása hibás! (minimum 5 és maximum 300 karakter)");
        document.forms[sFormName].elements["txtListDesc"].focus();
        return false;
      }
    
  return bValid;    
  
}

function addComment_validate(sFormName, bPrint)
{
  var bValid = true;
  
  if (trim(document.getElementById("txtCommentArea").value).length < 5 ||
      trim(document.getElementById("txtCommentArea").value).length > 500)
      {
        alert("A vélemény hibás! (minimum 5 maximum 500 karakter)");
        document.forms[sFormName].elements["txtCommentArea"].focus();
        return false;
      }
    
  return bValid;
}

PositionX = 10;
PositionY = 10;
defaultWidth  = 600;
defaultHeight = 400;

var AutoClose = true;

function popImage(imageURL,imageTitle){
  var imgWin = window.open('','_blank','scrollbars=no,resizable=1,width='+defaultWidth+',height='+defaultHeight+',left='+PositionX+',top='+PositionY);
  if( !imgWin ) { return true; } //popup blockers should not cause errors
  imgWin.document.write('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n'+
    '<html><head><title>'+imageTitle+'<\/title><script type="text\/javascript">\n'+
    'function resizeWinTo() {\n'+
    'if( !document.images.length ) { document.images[0] = document.layers[0].images[0]; }'+
    'var oH = document.images[0].height, oW = document.images[0].width;\n'+
    'if( !oH || window.doneAlready ) { return; }\n'+ //in case images are disabled
    'window.doneAlready = true;\n'+ //for Safari and Opera
    'var x = window; x.resizeTo( oW + 200, oH + 200 );\n'+
    'var myW = 0, myH = 0, d = x.document.documentElement, b = x.document.body;\n'+
    'if( x.innerWidth ) { myW = x.innerWidth; myH = x.innerHeight; }\n'+
    'else if( d && d.clientWidth ) { myW = d.clientWidth; myH = d.clientHeight; }\n'+
    'else if( b && b.clientWidth ) { myW = b.clientWidth; myH = b.clientHeight; }\n'+
    'if( window.opera && !document.childNodes ) { myW += 16; }\n'+
    'x.resizeTo( oW = oW + ( ( oW + 200 ) - myW ), oH = oH + ( (oH + 200 ) - myH ) );\n'+
    'var scW = screen.availWidth ? screen.availWidth : screen.width;\n'+
    'var scH = screen.availHeight ? screen.availHeight : screen.height;\n'+
    '//if( !window.opera ) { x.moveTo(Math.round((scW-oW)/2),Math.round((scH-oH)/2)); }\n'+
    '}\n'+
    '<\/script>'+
    '<\/head><body onload="resizeWinTo();"'+(AutoClose?' onblur="this.close();"':'')+'>'+
    (document.layers?('<layer left="0" top="0">'):('<div style="position:absolute;left:0px;top:0px;display:table;">'))+
    '<img src="'+imageURL+'" alt="Loading image ..." title="" onload="resizeWinTo();"/>'+
    (document.layers?'<\/layer>':'<\/div>')+'<\/body><\/html>');
  imgWin.document.close();
  if( imgWin.focus ) { imgWin.focus(); }
  return false;
}

function popImageFixed(imagePath)
{
  var windowwidth = 485;
  var windowheight = 600;
  var screenwidth = screen.width;
	var screenheight = screen.height;
	
	var left = Math.round((screenwidth - parseInt(windowwidth)) / 2);
	var top = Math.round((screenheight - parseInt(windowheight)) / 2);

  var imageUrl = 'skins/default/'+imagePath+'.jpg';
  
  imgWin = window.open('about:blank','',"menu=0,statusbar=0,toolbar=0,left="+left+",top="+top+",width=485px,height=600px");
  if( !imgWin ) { return true; } //popup blockers should not cause errors
  with (imgWin.document){
    writeln('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">');
    writeln('<html><head><title>Mindenidők.hu<\/title>');
    writeln('<script type="text\/javascript">\n');
    writeln('var active_element;');
    writeln('var bIsMSIE;');
    writeln('function initiateSelfClosing()');
    writeln('{');
    writeln('    if (navigator.appName == "Microsoft Internet Explorer") {');
    writeln('        active_element = document.activeElement;');
    writeln('        document.onfocusout = closeWnd;');
    writeln('        bIsMSIE = true;');
    writeln('    }');
    writeln('    else { window.onblur = closeWnd; }');
    writeln('}');
    writeln('function closeWnd()');
    writeln('{');
    writeln('    if (window.opener != null) {');
    writeln('        if (bIsMSIE && (active_element != document.activeElement)) {');
    writeln('            active_element = document.activeElement;');
    writeln('        }');
    writeln('        else {');
    writeln('            window.close();');
    writeln('        }');
    writeln('    }');
    writeln('}');
    writeln('<\/script>');
    writeln('<\/head><body bgcolor="#FFFFFF" style="margin:0px;padding:0px;" onload="initiateSelfClosing()">');
    writeln('<div style="margin: 0px; padding: 0px; overflow: auto; height: 600px; width: 485px;"><img src="'+imageUrl+'" width="465" height="1724" border="0" alt="" \/><\/div><\/body><\/html>');
    close();
  }
  return false;
}
