////////////////////
// ajax functions //
////////////////////

function getXmlHttp(){
	  var xmlhttp;
	  try {
	    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (e) {
	    try {
	      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	    } catch (E) {
	      xmlhttp = false;
	    }
	  }
	  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
	    xmlhttp = new XMLHttpRequest();
	  }
   return xmlhttp;
	}



function load_plan(action, oid, fid) {

	//alert ("script launched");
  // DOM element that will receive response
  var statusElem = document.getElementById('plan_reciever_' + fid)
	var controlElem = document.getElementById('plan_control_' + fid)

	// времянка, чтобыт не выпиливать логику show/hide. она потом понадобится когда научимся в куках запоминать открыте планы
	if (controlElem.innerHTML=='Показать') action=1;
	if (controlElem.innerHTML=='Скрыть') action=2;
	        
	
	
	
  if (action==1) {
  	// show
	  // create request object
	  var req = getXmlHttp()
	
	  req.onreadystatechange = function() {
	  	// onreadystatechange activates when server response received
	    if (req.readyState == 4) {
		    // if query finished execution
		    statusElem.innerHTML = req.statusText // show status (Not Found, ОК..)
	      if(req.status == 200) {
	        // if status 200 (ОК) - show response to user
	        statusElem.innerHTML = req.responseText;
	        controlElem.innerHTML = 'Скрыть';
	        
	      }
	      // here can be ELSE statement with exception catching
	    }
	  }
	
	  // connector address
		req.open('GET', 'ajax-connector.php?action=show_plan&oid=' + oid + '&fid=' + fid + '&anticache='+Math.random()+Math.random(), true);
	
	  // sends request
	  req.send(null); 
	
	  // while waiting server response text
	  statusElem.innerHTML = 'Загрузка...';
 	}
 	
 	
 	
 	
 	if (action==2) {
 		// hide 
 		// create request object
	  var req = getXmlHttp()
	
	  req.onreadystatechange = function() {
	  	// onreadystatechange activates when server response received
	    if (req.readyState == 4) {
		    // if query finished execution
		    statusElem.innerHTML = req.statusText // show status (Not Found, ОК..)
	      if(req.status == 200) {
	        // if status 200 (ОК) - show response to user
	        statusElem.innerHTML = ''; 
	        controlElem.innerHTML = 'Показать';
	        
	      }
	      // here can be ELSE statement with exception catching
	    }
	  }
	
	  // connector address
		req.open('GET', 'ajax-connector.php?action=hide_plan&oid=' + oid + '&fid=' + fid + '&anticache='+Math.random()+Math.random(), true);
	
	  // sends request
	  req.send(null); 
	
	  // while waiting server response text
	  statusElem.innerHTML = 'Загрузка...';

 	}
  
}

