// JavaScript Document

    function makeRequest(url, post_parametri, code, async) {
		// code sluzi da se raspoznaju razliciti Httprequest pozivi... pa prema tome i razlicit response se obavlja na osnovu toga
		// async govori da li je asinhroni poziv ili ne... ako nije asinhroni, onda se ceka sa izvrsavanjem
		
		var async = (async == null) ? true : async;				// defaulr vrednost za asyunc: true
		
		//alert(post_parametri);
		
        var httpRequest;

        if (window.XMLHttpRequest) { // Mozilla, Safari, ...
            httpRequest = new XMLHttpRequest();
            if (httpRequest.overrideMimeType) {
                httpRequest.overrideMimeType('text/xml');
                // See note below about this line
            }
        } 
        else if (window.ActiveXObject) { // IE
            try {
                httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
                } 
                catch (e) {
                           try {
                                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
                               } 
                             catch (e) {}
                          }
                                       }

        if (!httpRequest) {
            alert('Giving up :( Cannot create an XMLHTTP instance');
            return false;
        }
       
	   
	   httpRequest.onreadystatechange = function() { response(httpRequest, code); };
	  
       httpRequest.open('POST', url, async);
	   httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');		// zbog post requesta
	   //parametri='status='+status+'&id='+id;
       httpRequest.send(post_parametri);

    }

    function response(httpRequest, code) {

        if (httpRequest.readyState == 4) {
            if (httpRequest.status == 200) {
                //alert(httpRequest.responseText);
				
				switch (code) {
					
					case 'update_towns': 
					
						//alert(httpRequest.responseText);
						document.getElementById("town_from_div").innerHTML="<select name='town_from'>\n<option value='0' >Select your starting point</option>\n"+httpRequest.responseText+"</select>";
						document.getElementById("town_to_div").innerHTML="<select name='town_to'>\n<option value='0' >Select your destination</option>\n"+httpRequest.responseText+"</select>";
				
					break;
				
				}
				
				//update_cost();			// after getting and setting new values, update cost fields
				
				//document.getElementById("status_report").innerHTML = httpRequest.responseText;
            } else {
                alert('There was a problem with the request.');
            }
        }

    }
