google.load('search', '1');

var imageSearch;
if(!gImageSeach){ var gImageSeach = {}; }

gImageSeach.contentDivID = "";
gImageSeach.query = "";
gImageSeach.flg = {}

gImageSeach.searchComplete = function() {
  if (imageSearch.results && imageSearch.results.length > 0) {
    var contentDiv = document.getElementById(gImageSeach.contentDivID);
    contentDiv.innerHTML = '';
    
    var results = imageSearch.results;
    for (var i = 0; i < results.length; i++) {
      var result = results[i];
      var imgContainer = document.createElement('span');
      var newImg = document.createElement('img');
      newImg.src = result.tbUrl;
      newImg.title = result.title;
      newImg.alt = result.title;
      imgContainer.appendChild(newImg);
      imgContainer.style.margin = "5px"
      contentDiv.appendChild(imgContainer);

    }
    contentDiv.appendChild(google.search.Search.getBranding());
    
    var headerText = "<p style=\"margin:5px;\"><a href=\"http://www.google.com/images?q="+ encodeURI(gImageSeach.query) +"\">Google 画像検索の結果</a></p>";
    contentDiv.innerHTML = headerText + contentDiv.innerHTML;
  }
}

gImageSeach.search = function(query, contentDivID) {
  try{ if(gImageSeach.flg[contentDivID]==1){ var p=document.getElementById(contentDivID+'_img'); pp=p.parentNode; pp.removeChild(p); gImageSeach.flg[contentDivID]=0; return false; } }
  catch(e){ }
  
  var ele=document.createElement("dd");
  ele.id=contentDivID+"_img"; 
  ele.innerHTML="読み込み中...";
  ele.style.backgroundColor="#f0f0f0"; 
  ele.style.border="1px solid #d0d0d0"; 
  document.getElementById(contentDivID).appendChild(ele);
  
  gImageSeach.contentDivID = ele.id;
  gImageSeach.query = query;
  imageSearch = new google.search.ImageSearch();
  imageSearch.setSearchCompleteCallback(this, gImageSeach.searchComplete, null);
  imageSearch.execute(query);
  gImageSeach.flg[contentDivID]=1;
  return false;
}


