function AjaxConnection(adres,method) 
{
   this.setOptions=_setOptions;
   this.setOption=_setOption;
   this.getOptions=_getOptions;
   this.connect=_connect;
   this.adres=adres;
   this.getParam=_getParam;
   this.method=method;
   this.param='';
} 
function _setOptions(opt)
{
   for(i=0;i<opt.length;i++)  
   {
      this.param += "&"+opt[i];
   }
}
function _setOption(param,value){
	this.param+="&"+param+"="+value;
}
function _getOptions()
{
   return this.param;
}
function _connect(return_func)
        {
            with(this)
            {
							//alert(method);
            	x=_init_object();
            	x.onreadystatechange = function() {
								eval(return_func);                        
							}                
          if(method=='GET'){
        			adres+='?'+param;
        			x.open('GET', adres,true);
							x.send(null);
    			}
    			else if(method=='POST'){
        			x.open('POST', adres,true);
        			x.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=utf-8');
							x.send(param);
    			}            
         }       
      }
        
function _init_object() {
        var x;
         try{
        x=new XMLHttpRequest();
        if(x.overrideMimeType)
        x.overrideMimeType('text/html');
    }
    catch(e)
    {
        var XmlHttpVersion=new Array("MSXML2.XMLHTTP.6.0",
                            "MSXML2.XMLHTTP.5.0",
                            "MSXML2.XMLHTTP.4.0",
                            "MSXML2.XMLHTTP.3.0",
                            "MSXML2.XMLHTTP",
                            "Microsoft.XMLHTTP");
        for(var i=0;i<XmlHttpVersion.length && !x;i++){
            try{
                x=new ActiveXObject(XmlHttpVersion[i]);
            }
            catch(e)
            {}
        }
    }
    if(!x)
        alert("Błąd podczas tworzenia obiektu XMLHttpRequest.");
    else{
    	
    	return x;
    
    }
}
function _getParam(f){
		with(this){
        for (i=0;i<f.elements.length;i++){
            if(f.elements[i].name!='')
            {
                if(f.elements[i].type=='checkbox' && f.elements[i].checked==true)
									param+=f.elements[i].name+'='+f.elements[i].value+'&';										
                else if(f.elements[i].type=='radio' && f.elements[i].checked==true)
                    param+=f.elements[i].name+'='+f.elements[i].value+'&';
                else if(f.elements[i].type!='radio'&&f.elements[i].type!='checkbox')
                    param+=f.elements[i].name+'='+ encodeURIComponent(f.elements[i].value)+'&';
            }
        }
    return param;
		}
}



