function makeURLRequest(url_addr, label_id, picklist_id) {
  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 () {
    alertPriceContents(http_request, label_id);
  };
  http_request.open('GET', url_addr, true);
  http_request.send(null);
}
function alertPriceContents(http_request, label_id) {
  var price = 0;
  if (http_request.readyState == 4) {
    if (http_request.status == 200) {
      price = http_request.responseText;
      price = parseInt(price);
      if (price == 0 || price == "" || price == "$0" || price < 0) {
        price = 0;
      }
			if (document.getElementById('optionID' + label_id).disabled == false) {
				document.getElementById('optionID' + label_id).value = price;
				set_total_option_price();
			}
    } else if(http_request.status == 0) {
			return;
	  } else {
      alert('There was a problem with the request. option_price_ajax.js1');
    }
  }
}
function set_total_option_price() {
  var total = 0;
  var i;
  var li;
  var f1 = document.forms['order_form'];
  for (i = 0; i < f1.elements.length; i++) {
    if (f1.elements[i].name.slice(0, 8) == "optionID") {
      total = total + parseInt(document.getElementById(f1.elements[i].name).value);
    }
  }
  if (total == "") {
    total = 0;
  }
  document.getElementById('option_price').value = total;
  document.getElementById('total_price').value = parseInt(document.getElementById('base_price').value) + parseInt(document.getElementById('option_price').value);
}
function get_option_price_2(label_id, picklist_id) {
  var product_id;
  var width;
  var width_fraction;
  var height;
  var height_fraction;
  var url_addr;
  var base_price;
  product_id = document.getElementById('product_id').value;
  width = document.getElementById('select_width').value;
  width_fraction = document.getElementById('select_width_frac').value;
  height = document.getElementById('select_height').value;
  height_fraction = document.getElementById('select_height_frac').value;
  base_price = document.getElementById('base_price').value;
  base_price = parseInt(base_price);
  url_addr = "classes/get_option_price.php?product_id=" + product_id + "&base_price=" + base_price + "&picklist_id=" + picklist_id + "&width=" + width + "&height=" + height + "&height_fraction=" + height_fraction + "&width_fraction=" + width_fraction;
  makeURLRequest(url_addr, label_id, picklist_id);
}
function get_all_option_prices() {
  var f1 = document.forms['order_form'];
  var el;
  var label_id;
  for (i = 0; i < f1.elements.length; i++) {
    if (f1.elements[i].name.slice(0, 8) == "selectID") {
      label_id = f1.elements[i].name.slice(8);
      el = f1.elements[i].options[f1.elements[i].selectedIndex].value;
      get_option_price_2(label_id, el);
    }
  }
}
function get_color_image(id, selected_id) {
  var url = "/classes/get_color_url.php?label_id=" + id + "&pl=" + selected_id;
  var http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) {
      http_request.overrideMimeType('text/xml');
    }
  } 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 () {
    choose_color(http_request, id);
  };
  http_request.open('GET', url, true);
  http_request.send(null);
}
function choose_color(http_request, id) {
  var image_url;
  if (http_request.readyState == 4) {
    if (http_request.status == 200) {
      var img   = document.getElementById("ColorImage_" + id);
      image_url = http_request.responseText;
      img.src   = image_url;
    } else if(http_request.status == 0) {
			return;
	  } else {
			alert('There was a problem with the request. option_price_ajax.js2');
    }
  }
}
