// asynchronous call for rss feeds
var isIE = ((window.ActiveXObject) ? true : false);
var region_name = '';
var region_id   = '';

function getXML(url) {
  var xmlreq;
  if(window.XMLHttpRequest){
    xmlreq = new XMLHttpRequest();

    window.setTimeout(function() {
      if (xmlreq.readyState < 4) {
        xmlreq.abort();
      }
    },10000); // abort after 10 sec

    try{
      xmlreq.onreadystatechange = xmlResponseHandler;
      xmlreq.open("GET", url, true);
      xmlreq.send(null);
    } catch(e){
      xmlreq.abort();
      return;
    }
  } else if(window.ActiveXObject){
    isIE = true;
    try{
      xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
    } catch(e){
      xmlreq.abort();
      return;
    }
    if(xmlreq){
      window.setTimeout(function() {
        if (xmlreq.readyState < 4) {
          xmlreq.abort();
        }
      },10000); // abort after 10 sec

      try{
        xmlreq.onreadystatechange = xmlResponseHandler;
        xmlreq.open("GET", url, true);
        xmlreq.send();
      } catch(e){
        xmlreq.abort();
        return;
      }
    }
  }
}

function xmlResponseHandler() {
 if(this.readyState == 4 && this.status == 200) {
   // so far so good
   if(this.responseXML != null) {

	// get the regions
      if (this.responseXML.getElementsByTagName("region").length>0) {
        buildRegionsSelection(this.responseXML.getElementsByTagName("region"));
      }

	// Get a post's content
      if (this.responseXML.getElementsByTagName("postContent").length>0) {
	returnPostContent(this.responseXML.getElementsByTagName("postContent"));
      }

	// get post data
      if (this.responseXML.getElementsByTagName("postData").length>0) {
	returnPostData(this.responseXML.getElementsByTagName("postData"));
      }

	// get forum data
      if (this.responseXML.getElementsByTagName("forumData").length>0) {
	returnForumData(this.responseXML.getElementsByTagName("forumData"));
      }

	// Get a list of forums
      if (this.responseXML.getElementsByTagName("forumName").length>0) {
	returnForumName(this.responseXML.getElementsByTagName("forumName"));
      }

	// get a list of multi-quote posts
      if (this.responseXML.getElementsByTagName("multiQuoteId").length>0) {
	returnMultiQuoteId(this.responseXML.getElementsByTagName("multiQuoteId"));
      }

	// get a list of split posts
      if (this.responseXML.getElementsByTagName("postSplitId").length>0) {
	returnPostSplitId(this.responseXML.getElementsByTagName("postSplitId"));
      }

	// videos
      if (this.responseXML.getElementsByTagName("video").length>0) {
        buildVideoSelection(this.responseXML.getElementsByTagName("video"));
      }
   } else {
    //  alert('Error: network problems.  Try reloading the page');
   }
 } else if (this.readyState == 4 && this.status != 200) {
    //  alert('Error: network problems.  Try reloading the page');
 }

}



function buildVideoSelection(videos) {
  var is_popup = 0;
  var myHTML   = '<table width=200 cellpadding=8 cellspacing=1 bgcolor=eeeeee><tr><td valign=top bgcolor=ffffff>';
  document.getElementById('videocontainer').innerHTML = '';
  for (var i = 0; i< videos.length; i++) {
    var videoTitle = videos[i].getElementsByTagName('title')[0].firstChild.nodeValue;
    var videoID    = videos[i].getElementsByTagName('id')[0].firstChild.nodeValue;
    var thumbnail  = videos[i].getElementsByTagName('thumbnail_url')[0].firstChild.nodeValue;
        myHTML += '<center><strong><font size=-1>'+videoTitle+'</font></strong><br>';
        myHTML += '<embed src=http://www.youtube.com/v/'+videoID+' type=application/x-shockwave-flash width=160 height=132></embed><br>';
	myHTML += '<form action="'+callbackURL+'" method=POST name=thtmlcode id=thtmlcode>';
	myHTML += '<input name=code type="text" style="display:none;" value="[yt]'+videoID+'[/yt]">';
	myHTML += '<input type=submit value="Use Video">';
	myHTML += '</form>';

	myHTML += '</center>';
        myHTML += '</td><td valign=top  bgcolor=ffffff>';
    }

    myHTML += '</td></tr></table>';

    document.getElementById('videocontainer').innerHTML += myHTML;
   
    myHTML = 'Page ' + pageNum + ' : ';

    var nextNum = pageNum;
    if (pageNum > 1) {
        nextNum = pageNum - 1;
        myHTML += ' &lt;&lt;<a href="#" onClick="pageNum = '+nextNum+';getXML(\'/ajax/video-search.php?tag='+document.getElementById('tag').value+'&page='+nextNum+'\');">Prev</a> ';
    }

    nextNum = pageNum + 1;
    myHTML += ' <a href="#" onClick="pageNum = '+nextNum+';getXML(\'/ajax/video-search.php?tag='+document.getElementById('tag').value+'&page='+nextNum+'\');">Next</a> &gt;&gt; ';
    document.getElementById('videocontainer').innerHTML += myHTML;
}

function returnPostSplitId(posts) {
}


function returnForumName(posts) {
  document.getElementById('forumselect').options.length = 0;
  for(var i=0; i<posts.length; i++){
    var id = posts[i].getAttribute('forum_id');
    var name = posts[i].getAttribute('forum_name');
    document.getElementById('forumselect').options[i] = new Option(name,id);
  }
}


function returnPostContent(posts) {
   for (var i=0;i<posts.length; i++) {
	   var user_name = posts[i].getAttribute('user_name');
	   var post_id   = posts[i].getAttribute('post_id');
	   var post_text = posts[i].firstChild.nodeValue;
	   document.postform.message.value += '[quote='+user_name+']'+post_text+'[/quote]';
	   document.postform.message.focus();
   }
}

function buildRegionsSelection(regions) {
  document.getElementById('regionsselect').options.length = 0;
  document.getElementById('regionsselect').options[0] = new Option(region_name,region_id);
  document.getElementById('regionsselect').options[1] = new Option('Any','');
  for(var i=0; i<regions.length; i++){
    var id = regions[i].getAttribute('rc')+'.'+regions[i].getAttribute('aim1');
    var name = regions[i].getAttribute('fullname');
    document.getElementById('regionsselect').options[i+2] = new Option(name,id);
  }
  document.getElementById('regionfield').style.visibility = 'visible';
}

