// Handle the registration form hide and unhide optional fields
window.onload = function()
{
    if (document.getElementById('optreqlink'))
    {
        var linkContainer = document.getElementById('optreqlink');
        var linebreak = linkContainer.appendChild(document.createElement('br'));
        var toggle = linkContainer.appendChild(document.createElement('a'));
        toggle.href = '#';
        toggle.appendChild(document.createTextNode(' kiemelt mezők mutatása'));

        toggle.onclick = function()
        {
            var linkText = this.firstChild.nodeValue;
            this.firstChild.nodeValue = (linkText == ' kiemelt mezők mutatása') ? ' összes mező mutatása' : ' kiemelt mezők mutatása';
            
            var tmp = document.getElementsByTagName('div');
            for (var i=0;i<tmp.length;i++)
            {
                if(tmp[i].className == 'optfield')
                    tmp[i].style.display = (tmp[i].style.display == 'none') ? 'block' : 'none';
            }

            return false;
        }
    }
}

// Handle hint tooltip boxes onmouseover
var offsetfromcursorX = 12;
var offsetfromcursorY = 10; 
var offsetdivfrompointerX = 10; 
var offsetdivfrompointerY = 14;

document.write('<div id="hinttooltip"></div>')
document.write('<img id="hintpointer" src="include/form/arrow_tooltip.gif">')

var ie = document.all;
var ns6 = document.getElementById && !document.all;
var enabletip=false;

if (ie||ns6)
  var tipobj=document.all? document.all["hinttooltip"] : document.getElementById? document.getElementById("hinttooltip") : "";
var pointerobj=document.all? document.all["hintpointer"] : document.getElementById? document.getElementById("hintpointer") : "";

function ietruebody()
{
    return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function showtooltip(thetext, thewidth, thecolor)
{
    if (ns6||ie)
    {
        if (typeof thewidth!="undefined") tipobj.style.width=thewidth+"px";
        if (typeof thecolor!="undefined" && thecolor!="") tipobj.style.backgroundColor=thecolor;
        tipobj.innerHTML=thetext;
        enabletip=true;
        return false;
    }
}

function positiontip(e)
{
    if (enabletip)
    {
        var nondefaultpos=false;
        var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
        var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;

        var winwidth=ie&&!window.opera? ietruebody().clientWidth : window.innerWidth-20;
        var winheight=ie&&!window.opera? ietruebody().clientHeight : window.innerHeight-20;

        var rightedge=ie&&!window.opera? winwidth-event.clientX-offsetfromcursorX : winwidth-e.clientX-offsetfromcursorX;
        var bottomedge=ie&&!window.opera? winheight-event.clientY-offsetfromcursorY : winheight-e.clientY-offsetfromcursorY;

        var leftedge=(offsetfromcursorX<0)? offsetfromcursorX*(-1) : -1000;

        if (rightedge<tipobj.offsetWidth)
        {
            tipobj.style.left=curX-tipobj.offsetWidth+"px";
            nondefaultpos=true;
        }
        else if (curX<leftedge)
            tipobj.style.left="5px";
        else
        {
            tipobj.style.left=curX+offsetfromcursorX-offsetdivfrompointerX+"px";
            pointerobj.style.left=curX+offsetfromcursorX+"px";
        }

        if (bottomedge<tipobj.offsetHeight)
        {
            tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px";
            nondefaultpos=true;
        }
        else
        {
            tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px";
            pointerobj.style.top=curY+offsetfromcursorY+"px";
        }
        
        tipobj.style.visibility="visible";
        if (!nondefaultpos)
            pointerobj.style.visibility="visible";
        else
            pointerobj.style.visibility="hidden";
    }
}

function hidetooltip()
{
    if (ns6||ie)
    {
        enabletip=false;
        tipobj.style.visibility="hidden";
        pointerobj.style.visibility="hidden";
        tipobj.style.left="-1000px";
        tipobj.style.backgroundColor='';
        tipobj.style.width='';
    }
}

document.onmousemove=positiontip

