// JavaScript Document by Illya G. Konovalov @2009 Project Ryba.com.ua
//var Result;

function TankVolume(){
   var form = document.forms.volume;
   var munit;
   if(form.munit[0].checked){munit=1}else{munit=2}
   if(form.aform[0].checked==true && munit>0){
   // rectangular
     if(form.length.value && form.depth.value && form.height.value){
       var query_string='calc=1&calculate=volume&munit='+munit+'&aform=1&length='+form.length.value+'&depth='+form.depth.value+'&height='+form.height.value;
       RequestToVar('/script/calculator.cgi',query_string);
       var result_values = Result.split("#");
       if(result_values[0]==1){
         form.litres.value=result_values[1];
         form.gallons.value=result_values[2];
       }
       //Result='';
     }else{
       alert('Пожалуйста, заполните все поля! Длину, высоту, глубину, форму, единицу измерения.');
     }
   // hex
   }else if(form.aform[1].checked==true && munit>0){
     if(form.side_width.value && form.height.value){
       var query_string='calc=1&calculate=volume&munit='+munit+'&aform=2&side_width='+form.side_width.value+'&height='+form.height.value;
       RequestToVar('/script/calculator.cgi',query_string);
       var result_values = Result.split("#");
       if(result_values[0]==1){
         form.litres.value=result_values[1];
         form.gallons.value=result_values[2];
       }
       Result='';
     }else{
       alert('Пожалуйста, заполните все поля! Высоту, ширину, форму, единицу измерения.');
     }
   }
}

// AJAX Stuff
function makeRequest(url, element, param) {
   var http_request = false;
   if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request = new XMLHttpRequest();
     if (http_request.overrideMimeType) {
        http_request.overrideMimeType('text/xml'); // See note below about this line
     }
   } 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('Giving up :( Cannot create an XMLHTTP instance');
            return false;
   }
   http_request.onreadystatechange = function() { alertContents(http_request,element);};
   http_request.open('POST', url, true);
   http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
   http_request.send(param);
}

function alertContents(http_request,element) {
   if (http_request.readyState == 4) {
      if (http_request.status == 200) {
                document.getElementById(element).innerHTML = http_request.responseText;
        //return http_request.responseText;
      } else {
        alert('There was a problem with the request.');
      }
   }
}

// Make request and return content to a var
function RequestToVar(url, param) {
   var http_request = false;
   if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request = new XMLHttpRequest();
     if (http_request.overrideMimeType) {
        http_request.overrideMimeType('text/xml'); // See note below about this line
     }
   } 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('Giving up :( Cannot create an XMLHTTP instance');
            return false;
   }
   http_request.onreadystatechange = function() { getContents(http_request);};
   http_request.open('POST', url, true);
   http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
   http_request.send(param);
}

function getContents(http_request) {
   if (http_request.readyState == 4) {
      if (http_request.status == 200) {
               // document.getElementById(element).innerHTML = http_request.responseText;
        Result=http_request.responseText;
      } else {
        alert('There was a problem with the request.');
      }
   }
}
