
	function clickHandler(event) {
	  var targetId, srcElement, targetElement;

	  if (window.event) {
	    // IE event model
	    srcElement = window.event.srcElement;
	  }
	  else {
	    // DOM even model
	    srcElement = event.target;
	  }

	  if (srcElement.className == "roll" ) {
	    targetId= srcElement.id + "Details";
	    targetElement=document.getElementById(targetId);
	    if (targetElement.style.display=="none") {
	      targetElement.style.display="";
	    } else {
	      targetElement.style.display="none";
	    }
	  }
	  
	}
	
	function swapVisible(div)
	{
		var toChng=document.getElementById(div);
		if (toChng.style.display=="none")
		{
			toChng.style.display="";
		} else {
			toChng.style.display="none";
		}
	}

	function shortAndFull(div)
	{
		var toChng=document.getElementById(div);
		if (toChng.style.height=="auto")
		{
			toChng.style.height="149px";
			toChng.style.overflow="hidden";
		} else {
			toChng.style.height="auto";
			toChng.style.overflow="auto";
		}
	}
	
	function externalLinks() {
	if (!document.getElementsByTagName) return;
		var anchors = document.getElementsByTagName("a");
		for (var i=0; i<anchors.length; i++) 
		{
			var anchor = anchors[i];
			if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external")
			{
				anchor.target = "_blank";
			}
		}
	} 	
	
	function oncOnLoad()
	{
		externalLinks();
	}

    var http_request = false;
	var hint_request = new Array();
	
    function makeRequest(url, layer) {

        http_request = false;
        nosplash = true;
        
        
        if (layer==undefined || layer==1)
        {
        	if (layer==1)
        	{
        		nosplash=false;
        	}
        	layer="mainContent";
        } else {
        	layer=""+layer;
        }

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // Przeczytaj o tym wierszu poniżej
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (nosplash==true)
        {
//            document.getElementById(layer).innerHTML=""; /* "<div id='alertPage'>Trwa wczytywanie...proszę czekać<br/><img src='images/progress.gif' alt='Wczytywanie' /></div>"; */
        }

        if (!http_request) {
            alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP');
            return false;
        }
        http_request.onreadystatechange = function() { alertContents(http_request, layer, url); };
        http_request.open('GET', url, true);
        http_request.send(null);

	}
	
	function oncFunctionCall(functionName,functionParams,http_request) 
	{
		call = functionName+"(http_request,";
		for(i = 1; i < functionParams.length-1; i++) {
			call += "functionParams["+i+"],";
		}
		call += "functionParams["+(functionParams.length-1)+"]);";
		return eval(call);
	}

    function getXmlAnswer(url, functionCall, functionParams) {

        http_request = false;
        nosplash = true;
                
        if (window.XMLHttpRequest) { 
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            return false;
        }

        http_request.onreadystatechange = function() { if (http_request.readyState==4 && http_request.status==200) { oncFunctionCall(functionCall,functionParams,http_request);} };
        http_request.open('GET', url, true);
        http_request.send(null);
    }
	
	function emailcheck(str) 
	{
		var regex = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
		var valid = /^[0-9a-z]+([\.\-_][0-9a-z]+)*\@[0-9a-z]+([\.\-][0-9a-z]+)*\.(([a-z]{2,4})|(travel)|(museum))$/;
		return valid.test(str);
	}

	function emailAddressValid(p1,layer)
	{
		if (emailcheck(p1)) {
			document.getElementById(layer).innerHTML='<div style="width:16px;height:16px;background:url(common/images/sys/icons/ok.gif)"></div>';
		} else {
			document.getElementById(layer).innerHTML='<div style="width:16px;height:16px;background:url(common/images/sys/icons/fail.gif)"></div>';
		}
	}

	function samePassValid(p1,p2,layer)
	{
		if (p1==p2) {
			document.getElementById(layer).innerHTML='<div style="width:16px;height:16px;background:url(common/images/sys/icons/ok.gif)"></div>';
		} else {
			document.getElementById(layer).innerHTML='<div style="width:16px;height:16px;background:url(common/images/sys/icons/fail.gif)"></div>';
		}
	}

    function ajaxHint(url, layer) {
        hint_request[layer] = false;

        if (window.XMLHttpRequest) { 
            hint_request[layer] = new XMLHttpRequest();
            if (hint_request[layer].overrideMimeType) {
                hint_request[layer].overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) { 
            try {
                hint_request[layer] = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    hint_request[layer] = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

//        document.getElementById(layer).innerHTML="<div style='background: url("+'"mainpage/images/common/wait.gif")'+"; width:16px; height:16px; float: left' /> </div>";

        if (!hint_request[layer]) {
            alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP');
            return false;
        }
        hint_request[layer].onreadystatechange = function() { alertHintContents(http_request, layer, url); };
        hint_request[layer].open('GET', url, true);
        hint_request[layer].send(null);

    }

    function makeFormRequest(url, params, layer, splash) {

        http_request = false;
        nosplash = true;
                
        if (layer==undefined || layer==1 || splash==1)
        {
        	if (layer==1 || splash==1)
        	{
        		nosplash=false;
        	}
        	layer="mainContent";
        } else {
        	layer=""+layer;
        }

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // Przeczytaj o tym wierszu poniżej
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP');
            return false;
        }


        http_request.onreadystatechange = function() { alertContents(http_request, layer, url); };
        http_request.open('POST', url, true);
        http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      	http_request.setRequestHeader("Content-length", params.length);
      	http_request.setRequestHeader("Connection", "close");
        http_request.send(params);
        
        if (nosplash==true)
        {
            document.getElementById(layer).innerHTML="<div id='alertPage'>Trwa przetwarzanie... proszę czekać<br/><img src='panel/images/progress.gif' alt='Wczytywanie' /></div>";
        }
//        http_request.send(null);

    }
    function alertContents(http_request ,layer, url) {
    
//    	var xmlResponse = http_request.responseXML;
//    	if (!xmlResponse || !xmlResponse.documentElement)
//    	   alert ("XML Error \n"+http_request.responseText);
//    	   
//    	var rootNodeName=xmlResponse.documentElement.nodeName;
//    	if (rootNodeName=="parseerror")
//    	   alert ("XML Error \n"+http_request.responseText);

        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
	                document.getElementById(layer).innerHTML=http_request.responseText;
            } else {
                document.getElementById(layer).innerHTML="<div id='alertPage'>Błąd<br/>"+url+"</div>";
            }
        }

    }
    
    function alertHintContents(http_request ,layer, url) {
        if (hint_request[layer].readyState == 4) {
            if (hint_request[layer].status == 200) {
	                document.getElementById(layer).innerHTML=hint_request[layer].responseText;
            } else {
                document.getElementById(layer).innerHTML="<div id='alertPage'>Błąd<br/>"+url+"</div>";
            }
        }

    }
    
  function sendAjaxForm(formName, script, layer)
  {

  var params="";
//  	var form = window.document.forms[formName]
	var form = document.getElementById(formName);
  	for (var i = 0; i < form.elements.length; i++) 
  	{
  		if (form.elements[i].type=="checkbox")
  		{
  		    if (form.elements[i].checked==true)
  		    {
     		    form.elements[i].value=form.elements[i].value;
  		    } else {
     		    form.elements[i].value=0;
  		    }
  		}
  		params=params+form.elements[i].name+"="+form.elements[i].value+"&";
	}
  	makeFormRequest(script,params, layer);
  }
  
	function switchCommentFormLayers(layer) 
	{
	    offer=document.getElementById('offerForm');
	    transaction=document.getElementById('transactionForm');
		
	    if (layer==1) {
			transaction.style.display="none";		
			offer.style.display="";		
	    } else {
			transaction.style.display="";		
			offer.style.display="none";		
		}
	}

	function makeCounter(sender, field, max)
	{
		document.getElementById(field).value=max-sender.value.length;
		if (parseFloat(max-sender.value.length)<(max/10))
		{
			document.getElementById(field).setAttribute('class','hintFieldAlert');
		} else {
			document.getElementById(field).setAttribute('class','hintField');
		}
		if (max-sender.value.length<=0)
		{
//			alert('Przekroczyłeś długość pola');
			sender.value=sender.value.substring(0,max);
			document.getElementById(field).value=0;
		}
	}

