http = getHTTPObject();

function getHTTPObject(){
  var xmlhttp;

  /*@cc_on

  @if (@_jscript_version >= 5)
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }catch(e){
      try{
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }catch(E){
      xmlhttp = false;
    }
  }
  @else
    xmlhttp = false;
  @end @*/

  if(!xmlhttp && typeof XMLHttpRequest != 'undefined'){
    try {
      xmlhttp = new XMLHttpRequest();
    }catch(e){
      xmlhttp = false;
    }
  }

  return xmlhttp;
}

function doMySelection(url){
//  var url = baseURI + "backend.php?op=" + document.getElementById('op').value;
//  url += "&num1=" + document.getElementById('num1').value;
//  url += "&num2=" + document.getElementById('num2').value;

  http.open("GET", url, true);
  http.onreadystatechange = handleHttpResponse;

  http.send(null);
}

function handleHttpResponse(){
  if(http.readyState == 4){
      var str = http.responseText;
      var rsp = eval('('+str+')');
      var objectName = rsp.objectname;
      var isSelected = rsp.isSelected;
      var baseURL = rsp.baseURL;

      var spanEle = document.getElementById(objectName + "span");
      if(spanEle != null) {
          if(isSelected == "true") {
              spanEle.className = "item added";
          }
          else {
              spanEle.className = "item";
          }
      }

      var linkEle = document.getElementById(objectName + "link");
      if(linkEle != null) {
          if(isSelected == "true") {
              linkEle.innerHTML = "<img src='" + baseURL + "/images/icon_remove.gif' alt='Remove from My Selections' title='- Remove from My Selections' />";
          }
          else {
              linkEle.innerHTML = "<img src='" + baseURL + "/images/icon_add.gif' alt='Add to My Selections' title='+ Add to My Selections' />";
          }
      }

      var iconImageEle = document.getElementById(objectName + "iconimage");
      //The Item Detail Page uses a Different Add/Remove Button Icon so identify which template the user is on
      var templateType = document.body.id;
      if(iconImageEle != null) {

          if(isSelected == "true") {

              //If the User is on an Item Detail use this image
              if( templateType == "itemDetail" ) iconImageEle.src = baseURL + "/images/gui/itemDetail/btn_removeUp.gif";
              //Otherwise use the Icon found in the Light Box
              else iconImageEle.src = baseURL + "/images/icon_remove.gif";

              iconImageEle.alt = "Remove from My Selections";
              iconImageEle.title = "Remove from My Selections";
          } else {
              //If the User is on an Item Detail use this image
              if( templateType == "itemDetail" ) iconImageEle.src = baseURL + "/images/gui/itemDetail/btn_addUp.gif";
              //Otherwise use the Icon found in the Light Box
              else iconImageEle.src = baseURL + "/images/icon_add.gif";

              iconImageEle.alt = "Add to My Selections";
              iconImageEle.title = "Add to My Selections";
          }
      }

      var iconTextEle = document.getElementById(objectName + "icontext");
      if(iconTextEle != null) {
          if(isSelected == "true") {
              iconTextEle.textContent = "Remove from My Selections";
          }
          else {
              iconTextEle.textContent = "Add to My Selections";
          }
      }

      var mySelectionSpan = document.getElementById(objectName + "myselSpan");
      if(mySelectionSpan != null) {
          mySelectionSpan.parentNode.removeChild(mySelectionSpan);

      }


      //    document.getElementById('answer').innerHTML = http.responseText;
  }
}

function setHiddenAction(element) {
    var okToSubmit = false;
    //A. Make sure that the user selects at least one item before they Request an Action
    if( $("input:checkbox:checked").length > 0 ) okToSubmit = true;
    //B. Set the Hidden Value to the Users Requested Action
    $("#action").attr("value", element.value)
    //trace( "#action: " + $("#action").attr("value") );
    //C. Either Submit or give an Error Message
    if( okToSubmit ) {
        $("form").submit();
    } else {
        alert( "Please select at least one item" );
        resetActionsDropDown();
    }
}

function resetActionsDropDown(){
    //Reset the Actions Drop-Down Menu
    $('select').val('-');
}

function checkTheBox(val) {
    var counter = 0;
    var element = document.getElementById("checkbox"+counter++)
    while(element != null) {
        element.checked = val;
        element = document.getElementById("checkbox"+counter++)
    }
}
