<!--

function get_max_day(mon, year)
{
        max_day = 0;
        switch(mon)
        {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
                case 12:
                        max_day = 31;
                        break;
                case 4:
                case 6:
                case 9:
                case 11:
                        max_day = 30;
                        break;
                case 2:
                        if(((year % 4) == 0 && (year % 100) != 0) || (year % 400) == 0)
                                max_day = 29;
                        else
                                max_day = 28;
                        break;
                default:
                        break;
        }
        return max_day;
}

function check_date(day, month, year) {

        if (day!="" && month!="" && year!="")  {
                        var y,m,d,yr;
                        d=parseInt(day,10);
                        m=parseInt(month,10);
                        y=parseInt(year,10);

                        Today=new Date();


                        if (y>=1900 && m>=1 && m<=12 && d>0) {
                                if (d>get_max_day(m,y)) {
                                        return false;
                                } else {
                                        return true;
                                }
                        } else {
                                return false;
                        }
        } else {
                return false;
        }
}

function y2k(number)    { return (number < 1000) ? number + 1900 : number; }

function padout(number) { return (number < 10) ? '0' + number : number; }

function color_of(src_, color_)
{ 
   if(!src_.getAttribute('nowActive'))
   src_.style.background = color_; 
}
var last_tr = null;
function set_me(src_)
{
/*  
  if(src_.getAttribute('nowActive'))
   {
      last_tr.removeAttribute('nowActive');
      if(last_tr.onmouseout)last_tr.onmouseout();
      return;
   }
   */
   src_.setAttribute('nowActive',true);
   src_.style.background='#C1D2CB';
   if(last_tr && last_tr != src_)
   {
      last_tr.removeAttribute('nowActive');
      if(last_tr.onmouseout)last_tr.onmouseout();
   }
   last_tr = src_;
}
function setCookie(sName, sValue, oExpires, sPath, sDomain, bSecure) {
	var sCookie = sName + "=" + encodeURIComponent(sValue);

	if (oExpires) sCookie += "; expires=" + oExpires.toGMTString();
	if (sPath) sCookie += "; path=" + sPath;
	if (sDomain) sCookie += "; domain=" + sDomain;
	if (bSecure) sCookie += "; secure";

	document.cookie = sCookie;
}

function getCookie(sName) {
	var sRE = "(?:; )?" + sName + "=([^;]*);?";
	var oRE = new RegExp(sRE);

	if (oRE.test(document.cookie)) {
		return decodeURIComponent(RegExp["$1"]);
	} else {
		return null;
	}
}

function deleteCookie(sName, sPath, sDomain) {
	setCookie(sName, "", new Date(0), sPath, sDomain);
}

function is_empty(field) {
	return (field.value.length == 0);
}

function check_select(field) {
	return (field.selectedIndex > -1);
}

function check_radio(field) {
	var checkedButton = false;
	
	if (typeof(field.length) == 'number') {
		for (var i=0; i<field.length; i++) {
			if (field[i].checked=="1") {
				checkedButton = true;
			}
		}
	} else
		checkedButton = field.checked;
	return checkedButton;
}

function checkRadioByName(name) {
	var checkedButton = false;
	var obj = document.getElementsByName(name);
	
	for (var i=0; i<obj.length; i++)
      if (obj[i].checked == '1')
         checkedButton = true;
	
	return checkedButton;
}

function getRadioValue(name) {
	var obj = document.getElementsByName(name);
   for (var i=0; i<obj.length; i++)
      if (obj[i].checked == '1')
         return obj[i].value
}

function ucfirst(str) {
	var res = new Array();
	var stra = new Array();
	var limiter = '';
	
	if (str.indexOf(' ') > -1) {
		stra = str.split(' ');
		limiter = ' ';
	} else
		if (str.indexOf('-') > -1) {
			stra = str.split('-');
			limiter = '-';
		} else
			stra[0] = str;
	for (i=0; i<stra.length; i++)
		res[i] = stra[i].substring(0,1).toUpperCase() + stra[i].substring(1).toLowerCase();
	return res.join(limiter);
}

function check_checkbox(name) {
	var obj = document.getElementsByName(name);

	for (var i=0; i<obj.length; i++)
		if (obj[i].checked)
			return true;
	
	return false;
}

function openNewWindow(addr) {
	return window.open(addr.replace('+', '^^plus^^'), "eHMS", "toolbar=no,status=no,resizable=yes,scrollbars=yes,width=" + (screen.availWidth - 20) + ",height=" + (screen.availHeight - 20) + ",left=0, top=0");
}

function checkMaxLength(oTextArea, oEvent) {
   var iKeyCode = oEvent.keyCode;
   switch (iKeyCode) {
      case 8:  //backspace
      case 13: //enter
      case 16: //shift
      case 33: //pageup
      case 34: //pagedown
      case 35: //end
      case 36: //home
      case 37: //left
      case 38: //up
      case 39: //right
      case 40: //down
      case 46: //delete
         return true;
         break;
      default:
         return oTextArea.value.length != oTextArea.getAttribute("maxlength");
   }
}

function countChecked(field) {
   var count = 0;
   for (var i=0; i<field.length; i++)
      if (field[i].selected=="1")
         count++;
   return count;
}

function getUserAgent() {
   var userAgent = navigator.userAgent;
   
   if (
      userAgent.indexOf('Opera') > -1
   )  return 'opera';
   else if (
      userAgent.indexOf('compatible') > -1 && 
      userAgent.indexOf('MSIE') > -1 && 
      !isOpera
   )  return 'ie';
   else
      return 'unknown';
}

function getPlatform() {
   var platform = navigator.platform;
   var userAgent = navigator.userAgent;
   
   if (
      platform == 'Win32' || 
      platform == 'Windows'
   )  return 'win';
   else if (
      platform == 'Mac68K' ||
      platform == 'MacPPC' ||
      platform == 'Macintosh'
   )  return 'mac';
   else
      return 'unknown';
}

function formatEvent(oEvent) {
   if (getUserAgent() == 'ie' && getPlatform() == 'win') {
      oEvent.charCode = (oEvent.type == "keypress") ? oEvent.keyCode : 0;
      oEvent.eventPhase = 2;
      oEvent.isChar = (oEvent.charCode > 0);
      oEvent.pageX = oEvent.clientX + document.body.scrollLeft;
      oEvent.pageY = oEvent.clientY + document.body.scrollTop;
      oEvent.preventDefault = function () {
         this.preventDefault = false;
      };
      if (oEvent.type == "mouseout") {
         oEvent.relatedTarget = oEvent.toElement;
      } else if (oEvent.type = "mouseover") {
         oEvent.relatedTarget = oEvent.fromElement;
      }
      oEvent.stopPropagation = function () {
         this.cancelBubble = true;
      };
      oEvent.target = oEvent.srcElement;
      oEvent.timeStamp = (new Date).getTime();
   }
   return oEvent;
}

function allowChars(textBox, event, allowCtrlKeys) {
   event = formatEvent(event);
   
   allowCtrlKeys = typeof(allowCtrlKeys) == 'undefined' ? true : false;
   
   var validChars = textBox.getAttribute('validchars');
   var char = String.fromCharCode(event.charCode);
   var isValidChar = validChars.indexOf(char) > -1;
   var keyCode = event.keyCode;
   var isControlKey = false;
   
   switch (keyCode) {
      case 8:  //backspace
      case 16: //shift
      case 35: //end
      case 36: //home
      case 37: //left
      case 38: //up
      case 39: //right
      case 40: //down
      case 46: //delete
         isControlKey = true;
         break;
   }
   
   if (!allowCtrlKeys)
      isControlKey = false;
   
   return isValidChar || (allowCtrlKeys && (event.ctrlKey || event.shiftKey || event.altKey || isControlKey));
}

function validator(mode, inputStr, req) {
   if (req === false && inputStr === '')
      return true;
   
   switch (mode) 
   {
      case 'tel':
      case 'telNumber':
      case 'phone':
      case 'phoneNumber':
         re = /^([\+]){0,1}(\d+){2}([\.\s]){0,1}(\d+){9}$/;
         return re.test(inputStr);
      
      case 'txtFree':
         return inputStr.length > 0;
         break;
      
      case 'txt':
         re = /[1234567890\!\@\#\$\%\^\&\*\(\)\\\?<>\_\+\=\]\[\}\{\.\,\;\:\"\|\~\`\/]/;
         return !re.test(inputStr);
         break;
      
      case 'inte':
      case 'integer':
         re = /^[\-|\+]?\d+$/;
         return re.test(inputStr);
         break;
      
      case 'float':
      case 'number':
         re = /^[\-|\+]?\d+[[\,|\.]?\d*]?$/;
         return re.test(inputStr);
         break;
      
      case 'date':
      case 'data':
         var date_array = inputStr.split('-');
	      return check_date(date_array[0],date_array[1],date_array[2]);
         break;
      
      case 'alnum':
         re = /^[a-zA-Z0-9±ćęłńó¶żĽˇĆĘŁŃÓ¦Ż¬_ \.,:]+$/;
         return re.test(inputStr);
         break;
      
      case 'digit':
         re = /^\d+$/;
         return re.test(inputStr);
         break;
      
      case 'digit_alpha':
         re = /^[a-zA-Z0-9_]+$/;
         return re.test(inputStr);
         break;
      
      case 'nrKonta':
      case 'nrkonta':
      case 'bank':
      case 'iban':
         re = /^[A-Z]{0,2}\d{2}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}$/;
         return re.test(inputStr);
      
      case 'nrPaszportu':
      case 'paszport':
         re = /^[a-zA-Z0-9<_]+$/;
         return re.test(inputStr);
         break;
      
      case 'time':
         var time_array = inputStr.split(':');
      	if (time_array[0] != '' && time_array[1] != '') 
      	{
      		var h = parseInt(time_array[0],10);
      		var m = parseInt(time_array[1],10);
      		if (h >=0 && h<=23 && m>=0 && m<=59)
      			return true;
      		else
      			return false;
      	} else
      		return false;
         break;
      
      case 'pesel':
         var wagi = "13791379131";
			var z = 0;
			for (n=0;n<=10;n++) 
			   z+=inputStr.charAt(n) * wagi.charAt(n);
			return (z%10 == 0);
         break;
      
      case 'nrDowodu':
      case 'dowod':
         re = /^[A-Za-z]{3}[0-9]{6}$/;
         return re.test(inputStr);
         break;
      
      case 'kodPocz':
         re = /^\d{2}-\d{3}$/;
         return re.test(inputStr);
         break;
      
      default:
         return false;
   }
}

function focusEnd(f) {
   f.focus();
   f.value = f.value;
}


function focusFirstElement(f)
{
   for (var i=0; i<f.elements.length; i++)
   {
      var field = f.elements[i];
      if (field.type != 'hidden')
      {
         field.focus();
         return;
      }
   }
}


function rekrTitle(txt)
{
   var obj = document.getElementById('topRekrName');
   if (obj)
      obj.innerHTML = (txt != '' ? txt : '&nbsp');
}



function chkSelect(ob,req)
{
   var ok = true;		
	if (!ob.disabled)
	{
      if ((ob.value === "") && (req == 1))
         ok = false;
      else
         ok = true;
	}
	return ok;
}

function chkTxtFree(ob,req)
{
	var ok = true;
	if (!ob.disabled)
	if ((ob.value !== "") || (req == 1))
	{
		if (ok) ok = (ob.value.length > 0);
	}
	return ok;
}


	function chkTxt(ob,req)
	{
		var ok = true;
		if (!ob.disabled)
		if ((ob.value !== "") || (req == 1))
		{
			if (ok) ok = (ob.value.length > 0);
			var re_txt = /[1234567890\!\@\#\$\%\^\&\*\(\)\\\?<>\_\+\=\]\[\}\{\.\,\;\:\'\"\|\~\`\/]/;
			if (ok) ok =  !re_txt.exec(ob.value)
		}
		return ok;
	}

function chkTel(ob,req) {
	var ok = true;
	if (!ob.disabled)
	if ((ob.value !== "") || (req == 1))
	{
		var re_tel = /^([\+]){0,1}(\d+){2}([\.\s]){0,1}(\d+){9}$/;
		if (ok) ok = (re_tel.exec(ob.value));
	}
	return ok;
}

function protectFromFirebug(ob)
{
   
}
-->