var AL_XMLHTTPOBJ;
var AL_Cache = new Object();
var AL_cache_key;
var AL_cur_menu;
var AL_CgiUrl = "/entrez/utils/abstract_link.fcgi";

function AL_getXMLHTTP() {
  try {
     return new ActiveXObject("Msxml2.XMLHTTP")
  } catch(e1) { 
	try { 
	  return new ActiveXObject("Microsoft.XMLHTTP")
	} catch(e2) {
        return typeof XMLHttpRequest != "undefined" ? 
          new XMLHttpRequest() : null;
	}
  }
}

var PopUpMenu2_LocalConfig_ActiveLConfig = [
  ["ShowCloseIcon","yes"],
  ["Help","window.open('/entrez/query/static/popup.html','Links_Help','resizable=no,scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no,alwaysRaised=no,depend=no,width=400,height=500');"],
  ["TitleText"," Links "]
]

AL_wait_menu = [
        ["UseLocalConfig","ActiveLConfig","",""],
        ["Wait","window.top.location='http://www.pubmed.gov'","",""]
]

function AL_get(self, sec, term) {
	if (!AL_XMLHTTPOBJ && !(AL_XMLHTTPOBJ = AL_getXMLHTTP()))  return;
    AL_cache_key = sec + '$' + term;
    if(AL_cur_menu = AL_Cache[AL_cache_key]) {
      PopUpMenu2_Set(AL_cur_menu); 
    } else { // ask server
      // write "wait"
      PopUpMenu2_Set(AL_wait_menu); 
      if(AL_XMLHTTPOBJ.readyState)
         AL_XMLHTTPOBJ.abort();
      AL_XMLHTTPOBJ.onreadystatechange=function() {
        if(AL_XMLHTTPOBJ.readyState == 4 && AL_XMLHTTPOBJ.status == 200) {
          eval(AL_XMLHTTPOBJ.responseText); // fill AL_cur_menu
          PopUpMenu2_Set(AL_Cache[AL_cache_key] = AL_cur_menu); 
	    }
      };
      AL_XMLHTTPOBJ.open("GET", 
        location.protocol+"//"+location.host+AL_CgiUrl+"?sec="+sec+"&term="+term.replace(/ /g, "+").replace(/&/g, "%26"), true);
      AL_XMLHTTPOBJ.send(null)
    }    
}
