  function ladujPlik(elementId, plik){
	
	document.getElementById(elementId).innerHTML = '<img src="'+site_host+'img/ajax-loader.gif" width="43" height="11" border="0" alt="" />'
	remove1('div', 'formError');
	tabPom = plik.split('?');
	variables = '';
	if(tabPom.length>1){
		variables = tabPom[1];
	}
	new Ajax.Updater(elementId, '/'+plik, {
		method: 'post', 
		parameters: variables,
		evalScripts:true, 
		asynchronous:true
	});
	
}
  
  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }
  
  function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function remove1(tag, clas){
	var elts = document.getElementsByTagName(tag);
	for(i=0; i<elts.length; i++){
	   if(elts[i].className.indexOf(clas)!=-1){
	      document.body.removeChild(elts[i]);
		  if(i>0){
		    i--;
		  }
	   }
	}
   }

    function buildPrompt(call,promptText,showTriangle){
	   
		var divFormError = document.createElement('div');
		var formErrorContent = document.createElement('div');
		var arrow = document.createElement('div');
		
		jQuery(divFormError).addClass("formError");
		jQuery(divFormError).addClass(jQuery(call).attr("id"));
		jQuery(formErrorContent).addClass("formErrorContent");
		jQuery(arrow).addClass("formErrorArrow");
		jQuery('body').append(divFormError);
		jQuery(divFormError).append(arrow);
		jQuery(divFormError).append(formErrorContent);
		if(showTriangle){
			jQuery(arrow).html('<img src="'+site_host+'img/trojkat.gif" width="8" height="15" border="0" alt="" />');
		}
		jQuery(formErrorContent).html(promptText);
		callerTopPosition = findPosY($(jQuery(call).attr("id")));
		callerleftPosition = findPosX($(jQuery(call).attr("id")));
		callerWidth =  jQuery(call).parent().width();
		callerHeight =  jQuery(call).height();
		inputHeight = jQuery(divFormError).height();
		
        callerleftPosition = callerleftPosition + callerWidth;
		
		jQuery(divFormError).css({
			top:callerTopPosition,
			left:callerleftPosition,
			opacity:0
		})
		jQuery(divFormError).fadeTo("fast",1);
		
	}

	
	 function readMessage(request, ldg, form){
	   
		var l = document.getElementById(ldg);
		var komunikat = '';
		l.style.display = 'none';
        remove1('div', 'formError');
		ok = 0;
		
		var xmlResponse = request.responseXML.documentElement;
		
		while(xmlResponse.hasChildNodes()){
				var rekord = xmlResponse.firstChild;
				promptText = rekord.childNodes.item(1).firstChild.data;
				obiekt = rekord.childNodes.item(0).firstChild.data;
				xmlResponse.removeChild(xmlResponse.firstChild);
				var caller = jQuery("[name="+obiekt+"]:first");
				type = jQuery(caller).attr("type");
				src = jQuery(caller).attr("src");
				
				if(type=='checkbox' || type=='radio' || typeof(src)!='undefined'){
					showTriang = false;
				}else{
					showTriang = true;
				}
				if(obiekt!='komunikat'){
				
				   buildPrompt(caller,promptText,showTriang); 
				}else{
				   ok = 1  
				   komunikat = promptText;
				   break;
				}
				
		 }
		 var formErrorSize = jQuery("body").find(".formError").size();
	        if(formErrorSize>0){
			   scrollTop = 0;
			 if(window.pageYOffset){	
			    scrollTop = window.pageYOffset;
			 }else if(document.documentElement){
			    scrollTop = document.documentElement.scrollTop;
			 }else if(document.body){
			   scrollTop = document.body.scrollTop;	 
		     }
	         destination = jQuery(".formError:first").offset().top;
			 
			 if(scrollTop>destination){
	            jQuery("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, 1100);
			 }
		  }
		  if(ok){
			   var elts = document.forms[form].elements;
				for(i=0;i<elts.length;i++){	
				   if(elts[i].type!='radio' && elts[i].type!='checkbox' && elts[i].type!='hidden' && elts[i].tagName.toLowerCase()!='select'){
					   elts[i].value = '';
				   }
				}
			 l.style.display = 'block';	
			 l.innerHTML = '<span class="ok">'+komunikat+'</span>';
			 /*captchaCount = jQuery("body").find("."+ldg+"").size();
			 if(captchaCount>0){
			     captcha = jQuery("."+ldg+":first");
				 captcha.html('<img src="'+site_host+'captcha1.png" width="94" height="34" alt="" style="border: 1px solid #CCCCCC; vertical-align:middle; margin: 0 0 0 10px;" />');
			 }*/
			 
			 scrollTop = 0;
			 if(window.pageYOffset){	
			    scrollTop = window.pageYOffset;
			 }else if(document.documentElement){
			    scrollTop = document.documentElement.scrollTop;
			 }else if(document.body){
			   scrollTop = document.body.scrollTop;	 
		     }
	         dest = jQuery("#"+ldg).offset().top;
			 
			 if(scrollTop>dest){
	            jQuery("html:not(:animated),body:not(:animated)").animate({ scrollTop: dest}, 1100);
			 }
		
		  }
		  
          return true;
	}
 
  function onres(){
	  var formErrorSize = jQuery("body").find(".formError").size();
	  if(formErrorSize>0){
		  formErrors = jQuery("body").find(".formError");
		  remove1('div', 'formError');
		  for(i=0;i<formErrors.length;i++){
			tabPom = formErrors[i].className.split(' ');
			if(tabPom.length==2){
				call = jQuery("[name="+document.getElementById(tabPom[1]).name+"]:first");
               rx = /<DIV(.*)formErrorContent(.*)>(.*)<\/DIV>/i;
               dane = formErrors[i].innerHTML;
               wynik = dane.match(rx);
               buildPrompt(call,wynik[3],true);	
			}
			
		  }
	  }
	  return true;
  }
  
  function validate(form, file, ldg){
		params = '';
		 window.onresize = function(){
			onres();
         };
		
		var elts = document.forms[form].elements;
		for(i=0;i<elts.length;i++){	
		   if(elts[i].type=='radio' && elts[i].checked){
		      params += elts[i].name+'='+elts[i].value+'&';
		   }else if(elts[i].type=='checkbox' && elts[i].checked){
		       params += elts[i].name+'='+elts[i].value+'&';
		   }else if(elts[i].type!='radio' && elts[i].type!='checkbox'){
		       params += elts[i].name+'='+elts[i].value+'&';
		   }
		}
		pom = 0;
		l = document.getElementById(ldg);
		l.innerHTML = '<img src="'+site_host+'img/ajax-loader.gif" width="43" height="11" alt="" />';
		l.style.display = 'block';
		
		new Ajax.Request('/'+file, {
			method: 'post',
			parameters: params,
			evalScripts:false, 
			asynchronous:true,
			onComplete:function(request){readMessage(request, ldg, form);}
		});
	
	  return true;	
  }
 

