
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;
}

var http = getHTTPObject();

function handleHttpResponse() {
    var res = '';
    if (http.readyState == 4) {
	results = http.responseText.split("****");
	if (results[1] == 'error') alert(results[2]);
	else {
	    document.getElementById(results[0]).innerHTML = results[2];
	    document.getElementById(results[3]).innerHTML = results[4];
	    document.getElementById('testingMCIField').value = results[4];
	}
    }
}

function runAjax(urla, formname, fvalue, pname) {
    pvalue = document[formname][fvalue].value;
    http.open("GET", urla + '?' + pname + '=' + pvalue, true);
    http.onreadystatechange = handleHttpResponse; http.send(null);
}
function runNotesAjax(text, w, h, t, l, uid) {
    urla = document['notesform']['urla'].value;
    objid = document['notesform']['objid'].value;
    objurl = document['notesform']['objurl'].value;
    user = document['notesform']['user'].value;
    http.open("GET", urla + '?uid=' + uid + '&w=' + w + '&h=' + h + '&t=' + t + '&l=' + l + '&objid=' + objid + '&objurl=' + objurl + '&user=' + user + '&ntext=' + text, true);
    http.onreadystatechange = handleSavedNote; http.send(null);
}
function runDelNoteAjax(uid) {
    urla = document['notesform']['delurla'].value;
    objid = document['notesform']['objid'].value;
    user = document['notesform']['user'].value;
    http.open("GET", urla + '?uid=' + uid + '&objid=' + objid + '&userid=' + user, true);
    http.onreadystatechange = handleSavedNote; http.send(null);
    
}
function runAddCommentAjax(uid, num) {
    urla = document['notesform']['addcommurla'].value;
    objid = document['notesform']['objid'].value;
    user = document['notesform']['user'].value;
    ctext = document['notesform']['ctext' + num].value;
    objurl = document['notesform']['objurl'].value;
    http.open("GET", urla + '?uid=' + uid + '&objid=' + objid + '&user=' + user + '&ctext=' + ctext + '&objurl=' + objurl, true);
    http.onreadystatechange = handleSavedNote; http.send(null);
    
}
function runDelCommentAjax(rid) {
    urla = document['notesform']['delcommurla'].value;
    objid = document['notesform']['objid'].value;
    user = document['notesform']['user'].value;
    http.open("GET", urla + '?rid=' + rid + '&objid=' + objid + '&user=' + user, true);
    http.onreadystatechange = handleSavedNote; http.send(null);
    
}
function runEditCommentAjax(rid) {
    urla = document['notesform']['edcommurla'].value;
    objid = document['notesform']['objid'].value;
    user = document['notesform']['user'].value;
    ctext = document['notesform']['edit_comm' + rid].value;
    http.open("GET", urla + '?rid=' + rid + '&objid=' + objid + '&user=' + user + '&ctext=' + ctext, true);
    http.onreadystatechange = handleSavedNote; http.send(null);
}
function handleSavedNote () {
    if (http.readyState == 4) {
	el = document.getElementById('existingNotes');
	el.innerHTML = http.responseText;
    }
}
function runSaveMetainfoAjax(urla) {
    ptitle = document.pmetainfo.ptitle.value;
    pdescr = document.pmetainfo.pdescr.value;
    pkeywords = document.pmetainfo.pkeywords.value;
    http.open("GET", urla + '/ajaxSaveMetaInfo?ptitle=' + ptitle + '&pdescr=' + pdescr + '&pkeywords=' + pkeywords, true);
    http.onreadystatechange = handleSaveMetaInfo; http.send(null);
}
function handleAjaxQuery() {
    if (http.readyState == 4) {
	el = document.getElementById('searchImagesResult');
	el.innerHTML = http.responseText;
	urla = document.getElementById('purl');
	loadImages(urla, 'phtitlez', 'luids', 'auids');
    }
}
function runSearchImagesAjax(urla) {
    gtype = document.ajaximgsearch.gtype.value;
    cl1 = document.ajaximgsearch.clrs1.value;
    cl2 = document.ajaximgsearch.clrs2.value;
    el = document.getElementById('searchImagesResult');
    el.innerHTML = '';
    http.open("GET", urla + '/ajaxSearchImages?gtype=' + gtype + '&cl1=' + cl1 + '&cl2=' + cl2, true);
    http.onreadystatechange = handleAjaxQuery; http.send(null);
}
function runSearchImagesAjax1(urla) {
    gtype = document.ajaximgsearch.gtype.value;
    cl1 = document.ajaximgsearch.clrs1.value;
    cl2 = document.ajaximgsearch.clrs2.value;
    el = document.getElementById('searchImagesResult');
    el.innerHTML = '<div style=\"padding-top: 15em;\"><img src=\"loading.gif\" border=0/>&nbsp;Loading...</div>';
    var phrase_el = document.getElementById('phrase');
    var searchtext = document.getElementById('SearchableText');
    var phrase = '&phrase=' + phrase_el.value + '&SearchableText=' + searchtext.value;
    http.open("GET", urla + '/ajaxSearchImages1?gtype=' + gtype + '&cl1=' + cl1 + '&cl2=' + cl2 + phrase, true);
    http.onreadystatechange = handleAjaxQuery; http.send(null);
}
// LikeList
function handleLikeListQuery() {
    if (http.readyState == 4) {
	el = document.getElementById('farlangLikeList');
	el.innerHTML = http.responseText;
    }
}
function ajaxAddToLikeList(uid) {
    oldc = getCookie('farlangLikeList');
    if (oldc) {
	setCookie('farlangLikeList', oldc + '**' + uid);
	ll = oldc + '**' + uid;}
    else {
	setCookie('farlangLikeList', uid);
	ll = uid;}
    http.open("GET", urla + '/ajaxAddToLikeList?likelist=' + ll, true);
    http.onreadystatechange = handleLikeListQuery; http.send(null);
}
function ajaxAddToLikeList1(uid) {
    oldc = getCookie('todoimagelist');
    if (oldc) {
	setCookie('todoimagelist', uid + '**' + oldc);
	ll = oldc + '**' + uid;}
    else {
	setCookie('todoimagelist', uid);
	ll = uid;}
    var form = document.getElementById('favorites_form');
    var req_url = urla + '/ajaxTodoImageList?likelist=' + ll + '&uid=' + uid;
    if (form && form.objuser) req_url += '&objuser=' + form.objuser.value;
    if (form && form.fav_option) req_url += '&fav_option=' + form.fav_option.value;
    if (form && form.user_title) req_url += '&user_title=' + form.user_title.value;
    if (form && form.user_comment) req_url += '&user_comment=' + form.user_comment.value;
    http.open("GET", req_url, true);
    http.onreadystatechange = handleTodoListQuery; http.send(null); 
}
function handleTodoListQuery() {
    if (http.readyState == 4) {
	el = document.getElementById('todoListList');
	el.innerHTML = http.responseText;
    }
}
function handleSaveMetaInfo() {
}
function runClickPlaylistTabAjax(urla) {
    http.open("GET", urla, true);
    http.onreadystatechange = handleClickPlaylistTab; http.send(null);
}
function handleClickPlaylistTab() {
    if (http.readyState == 4){
      var playlist = document.getElementById('playlist_area');
      playlist.innerHTML = http.responseText;
    }
}
function setTabs() {
  var argv = setTabs.arguments;
  var argc = argv.length;
  for (var i = 1; i < argc; i++) {
    el = document.getElementById(argv[i]);
    el.style.display = "none";
  }
  el = document.getElementById(argv[0]);
  el.style.display = "block";
}
function clickColor(ename, cname, color) {
    el = document.getElementById(ename);
    el.style.background = color;
    cl = document.getElementById(cname);
    cl.value = color;
}

//**** cookie functions
function getCookie(name) {
  var start = document.cookie.indexOf(name+"=");
  var len = start+name.length+1;
  if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
  if (start == -1) return null;
  var end = document.cookie.indexOf(";",len);
  if (end == -1) end = document.cookie.length;
  return unescape(document.cookie.substring(len,end));}
function setCookie(cookieName, cookieValue, nDays, domain) {
  var today = new Date();
  var expire = new Date();
  var cookietext = '';
  if (nDays == null || nDays == 0) nDays=362;
  expire.setTime(today.getTime() + 3600000*24*nDays);
  if (domain == null || domain == eval('')) {
    cookietext = cookieName + "=" + escape(cookieValue) + ";path=/;expires=" + expire.toGMTString();}
  else {
    cookietext = cookieName + "=" + escape(cookieValue) + ";expires=" + expire.toGMTString() + ";path=/;domain=" + domain;};
  document.cookie = cookietext;}