var cleanReturn = 1; //do you want a full youtube return, or just an image list
var inlineVideo = 1; //do you want to redirect to youtube, or play inlinevideo

var i =0;
var youtubediv = new Array();

function hideOverlay(){

        var overlay = document.getElementById('youtubeoverlay');
        overlay.style.display = 'none';
        overlay.innerHTML = "";
}

function videoOverlay(id){
        var objBody = document.getElementsByTagName("body").item(0);
        if(objBody){
        var video = document.createElement('div');
        video.setAttribute('id', 'youtubeoverlay');
 video.innerHTML = '<div id="youtubecontent"><a href="javascript:hideOverlay()" id="close">Close</a><br /><object width="510" height="420"><param name="movie" value="http://www.youtube.com/v/'+id+'"></param><param name="autoplay" value="1"><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/'+id+'&autoplay=1" type="application/x-shockwave-flash" wmode="transparent" width="510" height="420"></embed></object></div>';
        objBody.insertBefore(video, objBody.firstChild);
	
        objBody.insertBefore(video, objBody.firstChild);
        }else{
                alert('no body element. please add');
        }

}

function mousOverImage(name,id,nr){
        if(name)
                imname = name;
        imname.src = "http://img.youtube.com/vi/"+id+"/"+nr+".jpg";
        nr++;
        if(nr > 3)
                nr = 1;
        timer =  setTimeout("mousOverImage(false,'"+id+"',"+nr+");",1000);

}

function getVideoId(url){

    var match = url.lastIndexOf('=');
    if (match) {
      id = url.substring(match+1);
      return id;
    }
}

function getId(string){

    var match = string.lastIndexOf("'s Videos");
    if (match != -1) {
      id = string.substring(0,match);
      return id.toLowerCase();
    }

    var match = string.lastIndexOf("query");
    if (match != -1) {
      id = string.substring(match+7);
      return id.toLowerCase();
    }

}
function listVideos(json,divid) {

  var ul = document.createElement('ul');
  ul.setAttribute('id', 'youtubelist');
  ul.setAttribute('style', 'padding-left: 0em;');

  for (var i = 0; i < json.feed.entry.length; i++) {
    var entry = json.feed.entry[i];

    for (var k = 0; k < entry.link.length; k++) {
      if (entry.link[k].rel == 'alternate') {
        url = entry.link[k].href;
        break;
      }
    }

   var thumb = entry['media$group']['media$thumbnail'][1].url;

    var li = document.createElement('li');
    li.setAttribute('style','float: left; list-style: none; padding-left: 1em;');
    li.setAttribute('id', 'youtubebox');
    if(cleanReturn == 1){

                if(inlineVideo == 1){
			 li.innerHTML = '<a href="#" onclick="customFunctionCreateWindow(false,600,400,250,250,\'' + getVideoId(url) +  '\',\'' + entry.title.$t + '\',event);return false "><img src="'+thumb+'" id="youtubethumb" alt="'+entry.title.$t+'"  onmouseout="clearTimeout(timer)" onmouseover="mousOverImage(this,\''+getVideoId(url)+'\',2)" style="border-style: none" width="130" height="97" ></a>';
		document.getElementById('left').innerHTML = "";

                }else{

                li.innerHTML = '<a href="'+url+'"><img src="'+thumb+'" id="youtubethumb" alt="'+entry.title.$t+'" onmouseout="clearTimeout(timer)" onmouseover="mousOverImage(this,\''+getVideoId(url)+'\',2)"></a>';

                }
    }else{
        li.innerHTML = entry.content.$t;
    }
    ul.appendChild(li);
  }

  document.getElementById(divid).appendChild(ul);
}



function youtubeInit(root) {
  //this hacks the layer for mutiple json queries
  id = getId(root.feed.title.$t);
  //alert(youtubediv[id] + id);
  listVideos(root, youtubediv[id]);

}


function insertVideos(div,typ,q,results,overlay){
  document.getElementById('left').innerHTML="<br><br><br><br><br><br><br><br><br><img src=css/progress.gif><br>Please wait while the video loads....    ";

  inlineVideo = overlay;
  youtubediv[q.toLowerCase()] = div;

  var script = document.createElement('script');
  if(typ == "search")
        script.setAttribute('src', 'http://gdata.youtube.com/feeds/videos?vq='+q+'&max-results='+results+'&alt=json-in-script&callback=youtubeInit');

  if(typ == "user")
  script.setAttribute('src', 'http://gdata.youtube.com/feeds/users/'+q+'/uploads?max-results='+results+'&alt=json-in-script&callback=youtubeInit');

  script.setAttribute('id', 'jsonScript');
  script.setAttribute('type', 'text/javascript');
  document.documentElement.firstChild.appendChild(script);
}


