﻿function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

function GetUrlParam(name)
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

function addslashes(str) {
    str=str.replace(/\'/g,'\\\'');
    str=str.replace(/\"/g,'\\"');
    str=str.replace(/\\/g,'\\\\');
    str=str.replace(/\0/g,'\\0');
    
    return str;
}
function stripslashes(str) {
    str=str.replace(/\\'/g,'\'');
    str=str.replace(/\\"/g,'"');
    str=str.replace(/\\\\/g,'\\');
    str=str.replace(/\\0/g,'\0');
    
    return str;
}

function hasClass(obj,cName) {
        return new RegExp('\\b'+cName+'\\b').test(obj.className); 
 } 

 function hasClasses(obj,classes) { 
        for (f=0; f<classes.length; f++) { 
                if (!hasClass(obj,classes[i])) return false; 
        } return true; 
 } 

 function addClass(obj,cName) { 
        if (!hasClass(obj,cName)) { 
                obj.className+=obj.className?' '+cName:cName; 
        } 
        return true; 
 } 

 function removeClass(obj,cName) { 
        if (!hasClass(obj,cName)) return false; 
        var rep=obj.className.match(' '+cName)?' '+cName:cName;
        obj.className=obj.className.replace(rep,'');
        return true; 
 } 

 function swapClasses(obj,class1,class2) { 
        if (hasClass(obj,class1)) { 
                removeClass(obj,class1); 
                addClass(obj,class2); return true; 
        } 
        if (hasClass(obj,class2)) { 
                removeClass(obj,class2); 
                addClass(obj,class1); return true; 
        } return false; 
 } 

 function switchClass(obj,to,from) { 
        if (hasClass(obj,from)) removeClass(obj,from);
        addClass(obj,to); 
        return true; 
 } 
 
 function addPageToFavorities() {
    if (window.sidebar) { // Mozilla Firefox Bookmark
		window.sidebar.addPanel(document.title, location.href,"");
	} else if( window.external ) { // IE Favorite
		window.external.AddFavorite( location.href, document.title); }
	else if(window.opera && window.print) { // Opera Hotlist
		return true; }
}

function ToggleBox(id) {
    var dv = document.getElementById(id);
    
    if (dv != null) {
        if ((dv.style.display == "") || (dv.style.display == "block")) {
            dv.style.display = "none";
            
            return 1;
        } else {
            dv.style.display = "block";
            
            return 2;
        }
    } else {
        return 0;
    }
}

function ToggleWithCaptionChange(divID, captPanel, captOne, captTwo) {
    var opt = ToggleBox(divID);
    
    if (captPanel != null) {
        switch (opt) {
            case 0: 
                captPanel.innerHTML = captOne;
            break;
            case 1:
                captPanel.innerHTML = captTwo;
            break;
            case 2:
                captPanel.innerHTML = captOne;
            break;
            default:
            break;
        }
    }
}

function ToggleWithCaptionChange2(divID, captPanelId, captOne, captTwo) {
    var opt = ToggleBox(divID);
    
    var captPanel = document.getElementById(captPanelId);

    if (captPanel != null) {
        switch (opt) {
            case 0: 
                captPanel.innerHTML = captOne;
            break;
            case 1:
                captPanel.innerHTML = captTwo;
            break;
            case 2:
                captPanel.innerHTML = captOne;
            break;
            default:
            break;
        }
    }
}

function HideBox(id, captPanel, capt) {
    var dv = document.getElementById(id);
    
    if (dv != null) {
        if ((dv.style.display == "") || (dv.style.display == "block")) {
            dv.style.display = "none";
        }
    }
    
    captPanel.innerHTML = capt;
}

function DateMaskEngine() {
   var inps = document.getElementsByTagName("input");

   for(var i=0; i<inps.length; i++){
       if (hasClass(inps[i], "DateBox")) {
            if (inps[i].value == "") {
                inps[i].value = "RRRR-MM-DD";
            }
            
            if (inps[i].addEventListener) {
				inps[i].addEventListener ("focus", unmask, false);
			} else if (inps[i].attachEvent) {
				inps[i].attachEvent ("onfocus", unmask);
			} else {
				inps[i].onfocus = unmask;
			}
			
			if (inps[i].addEventListener) {
				inps[i].addEventListener ("blur", mask, false);
			} else if (inps[i].attachEvent) {
				inps[i].attachEvent ("onblur", mask);
			} else {
				inps[i].onblur = mask;
			}
       }
   }
   
   var form_submit = document.getElementById("ctl00_cntFormularze_Wyslij");
   
            if (form_submit.addEventListener) {
				form_submit.addEventListener ("click", cmask, false);
			} else if (form_submit.attachEvent) {
				form_submit.attachEvent ("onclick", cmask);
			} else {
				form_submit.onclick = cmask;
			}
}

function unmask() {if (this.value == "RRRR-MM-DD") this.value = "";}
function mask() {if (this.value == "") this.value = "RRRR-MM-DD";}
function cmask() {
   var inps = document.getElementsByTagName("input");

   for(var i=0; i<inps.length; i++){
       if (hasClass(inps[i], "DateBox")) {
            if (inps[i].value == "RRRR-MM-DD") {
                inps[i].value = "";
            }
       }
   }
}

function ValidationEngine() {
    var s = "";

    for (i=0; i<Page_Validators.length; i++) {
        if (Page_Validators[i].style.getPropertyValue) {
            if (Page_Validators[i].style.getPropertyValue("visibility") != "hidden") {
                s += "1";
            }
        } else {
            if (Page_Validators[i].style.visibility != "hidden") {
                s += "1";
            }
        }
    }

   if (s != "") {
        var err = document.getElementById("ErrorSummaryBox");
        
        if (err != null) err.style.display = "block";
   }
}

function PodgladZapisu() {
    var inps = document.getElementById("FormBox").getElementsByTagName("input");
    
    for (i=0; i<inps.length; i++) {
        if (inps[i].getAttribute("type") == "text") {
            tmp = inps[i].value;
            txt = document.createTextNode(tmp);
            inps[i].parentNode.replaceChild(txt, inps[i]);
            }
    }
}

