/*
   SmartGart(R) JavaScript utility functions
   http://www.smartgart.com/js/util.js
*/

var url = '/cart/controller.xml.php';
var httpRequest = false;

function doRequest(url, cmd, par, cmd2, par2) {
   // var httpRequest = false;
   httpRequest = false;

   if(window.XMLHttpRequest) { // Mozilla, Safari, ...
      httpRequest = new XMLHttpRequest();
      if (httpRequest.overrideMimeType) {
         httpRequest.overrideMimeType('text/xml');
      }
   } else if(window.ActiveXObject) { // MS IE
      try {
         httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
      } catch(e) {
         try {
            httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
         } catch (e) {}
      }
   }

   if(! httpRequest) {
      alert('util.js: Giving up: Cannot create an XMLHTTP instance');
      return false;
   }
   httpRequest.onreadystatechange = alertContents;
   // httpRequest.open('GET', url, true);
   httpRequest.open('POST', url, true); // Klaus
   httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
   // httpRequest.send(null);
   // http://www.hunlock.com/blogs/AJAX_POST-It_Notes
   var data = "cmd=" + escape(cmd) + "&par=" + escape(par) + "&cmd2=" + escape(cmd2) + "&par2=" + escape(par2);
   httpRequest.send(data);
} // doRequest

function alertContents() {
   if (httpRequest.readyState == 4) {
      if (httpRequest.status == 200) {
         var xmlDoc = httpRequest.responseXML;
         var rootNode = xmlDoc.getElementsByTagName('item1').item(0);
         alert('util.js: ' + rootNode.firstChild.data);
      } else {
         alert('util.js: There was a problem with the request.');
      } // else status
   } // if readyState
} // alertContents

// utility functions

function cart(cmd, par) {
   cart(url, cmd, par, '', ''); // empty cmd2, par2
} // cart

function cart(cmd, par, cmd2, par2) {
   doRequest(url, cmd, par, cmd2, par2);
} // cart
