

//####################################//


function checkInputData(type)
{
	if(type == 'int')
	{
		if((event.keyCode < 48) || (event.keyCode > 57) && event.keyCode != 13)
			event.returnValue = false;
	}
	else
	if(type == 'float')
	{
		if((event.keyCode < 48 || event.keyCode > 57)
			 && event.keyCode != 46 && event.keyCode != 44 && event.keyCode != 13)
			event.returnValue = false;
	}
}


//####################################//


function newWnd(obj, wWidth, wHeight, wName)
{
	if(obj == null)
		return false;

	var name = (wName == null) ? "newWnd" + Math.ceil( Math.random() * 3000 ) : wName;
	var width = (wWidth == null) ? 500 : parseInt(wWidth);
	var height = (wHeight == null) ? 400 : parseInt(wHeight);
	var loc = null;

	if(obj.tagName == "A" & obj.getAttribute("href") != null)
	{
		loc = obj.getAttribute("href");
	}

	if(loc != null)
	{
		wnd = window.open(loc , name, 'toolbar=no,menubar=no,location=no,directories=no,scrollbars=no,resizable=yes,status=no,width='+width+',height='+height);
		wnd.focus();
		return false;
	}
	else
	{
		return true;
	}
}


//####################################//


var wndMargin = 0;
var screenW, screenH;

screenW = window.screen.availWidth;
screenH = window.screen.availHeight;

function closeWnd()
{
	if(window.opener != null)
		window.opener.focus();

	this.window.close();
}

function resizeWnd(w, h)
{
	var wndW, wndH = 0;
	var posX, posY = 0;
	w += wndMargin;
	h += wndMargin;

	if(w >= screenW)
		wndW = screenW;
	else
		wndW = w;
	if(h >= screenH)
		wndH = screenH;
	else
		wndH = h;

	posX = Math.ceil((screenW / 2) - (wndW / 2));
	posY = Math.ceil((screenH / 2) - (wndH / 2));
	if(posX < 0)
		posX = 0;
	if(posY < 0)
		posY = 0;

	window.resizeTo(wndW, wndH);
	window.moveTo(posX, posY);
}


//####################################//


function collapseMenu(id_menu, e)
{
	if(!e) e = window.event;
	var srcElem;
	if (e.target) srcElem = e.target;
	else if (e.srcElement) srcElem = e.srcElement;
	var menu = document.getElementById(id_menu);
	if(menu==null)
		return false;

	if(srcElem.tagName.toLowerCase()=='img')
	{
		// zavrit menu
		if(menu.style.display=='block')
		{
			// zmenit obrazek
			var src = document.getElementById('imgPM_'+id_menu).src;
			src = src.replace("minus", "plus");
			document.getElementById('imgPM_'+id_menu).src = src;
			// menu
			menu.style.display = 'none';
		}
		else
		{
			// zmenit obrazek
			var src = document.getElementById('imgPM_'+id_menu).src;
			src = src.replace("plus", "minus");
			document.getElementById('imgPM_'+id_menu).src = src;
			// menu
			menu.style.display = 'block';
		}
	}
	else
	if(srcElem.tagName.toLowerCase()=='a')
	{
		// zavrit menu
		if(menu.style.display=='none')
		{
			// zmenit obrazek
			var src = document.getElementById('imgPM_'+id_menu).src;
			src = src.replace("plus", "minus");
			document.getElementById('imgPM_'+id_menu).src = src;
			// menu
			menu.style.display = 'block';
		}
	}
}


//####################################//


function display(id, doDisplay)
{
	var layer = document.getElementById(id);

	if(layer == null)
		return;

	if(doDisplay == null)
		layer.style.display = (layer.style.display == 'none') ? 'block' : 'none';
	else
		layer.style.display = (doDisplay == true) ? 'block' : 'none';

}


//####################################//


function getQSFromForm(form)
{
  var i, elem;
  var qs = "";

  for (i=0; i<form.elements.length; i++)
  {
    elem = form.elements[i];
    switch (elem.type)
    {
      case "checkbox": qs += "&"+ elem.name +"="+ elem.checked; break;
      case "radio": qs += "&"+ elem.name +"="+ elem.checked; break;
      case "select-one": qs += "&"+ elem.name +"="+ elem.options[elem.selectedIndex].value; break;
      case "select-multiple":
        for (var j=0; j<elem.options.length; j++)
          if (elem.options[j].selected)
            qs += "&"+ elem.name +"[]="+ j +",";
        break;
      case "text":
      case "textarea":
        qs += "&"+ elem.name +"=";
        if (elem.value != "")
          qs += encodeURIComponent(elem.value);
        break;
      case "hidden": qs += "&"+ elem.name +"="+ encodeURIComponent(elem.value); break;
      case "submit": qs += "&"+ elem.name +"="+ elem.value; break;
    }
  }
  return qs;
}


//####################################//


window.formsDisplayInputTooltip = function (el, req, dsc) {

    function displayDiv(o) {
        var tmp;

        try {
            if (isObject(window.formsDisplayInputTooltip.tooltipDiv)) {
                modules.dom.removeElement(window.formsDisplayInputTooltip.tooltipDiv);
                window.formsDisplayInputTooltip.tooltipDiv = null;
            }
            html = '<div class="boxhelp"><div class="inbox">' +
                (o.isRequired ? '<p class="required">Toto políčko je nutné vyplnit</p>' : '') +
                (isNonEmptyString(o.description) ? '<p class="tooltip">' + o.description + '</p>' : '') +
                '</div><div class="closer"></div></div>';
            window.formsDisplayInputTooltip.tooltipDiv = modules.dom.createElement('div', null, domDocumentBody);
            window.formsDisplayInputTooltip.tooltipDiv.innerHTML = html;
            modules.dom.placeElement(window.formsDisplayInputTooltip.tooltipDiv, 'right', 'topbase', o.element, 0, '50%');
            window.formsDisplayInputTooltip.tooltipDiv.pEl = o.element;
        } catch (e) {
            logImportant.call(this, 'displayDiv', e);
        }
    }

    function hideDiv() {
        try {
            if (isObject(window.formsDisplayInputTooltip.tooltipDiv)) {
                modules.dom.removeElement(window.formsDisplayInputTooltip.tooltipDiv);
                window.formsDisplayInputTooltip.tooltipDiv = null;
            }
        } catch (e) {
            logImportant.call(this, 'hideDiv', e);
        }
    }

    try {
        if (typeof IQdev !== 'undefined') {
            if (el === null) {
                IQdev.execFunction(hideDiv);
            } else {
                IQdev.execFunction(displayDiv, {
                    element: el,
                    isRequired: req ? true : false,
                    description: dsc
                });
            }
        }
    } catch (e) {}
}

//####################################//
