
function onYouTubePlayerReady(id)
{
  // alert("onYouTubePlayerReady(" + id + ")");
  var pageID = getHTMLElementsByTagAndClass(document, "*", domutil.pageClassName)[0].id;
  if(!domutil.events[pageID][id])
    return;
  var listenerName = "domutil.events['" + pageID + "']['" + id + "'].onstatechange";
  var player = document.getElementById(id);
  player.addEventListener("onStateChange", listenerName);
  tryCallDOMUtilEventById([pageID,id], "load", player);
}

function getYouTubeIDByURL(url)
{
  var baseurl = "http://www.youtube.com/watch?v=";
  if(url.indexOf(baseurl) != 0)
    return;
  return url.substr(baseurl.length).match(/^[^#&]+/);
}

if(!domutil)
  var domutil = { events:{} };

(function()
{
  if(location.href.match(/^(.+)(\/[^\/\?#]+)(\.html|\.htm)/)
  && RegExp.$2 != "/index")
  {
    function reload()
    {
      /*
      var url = RegExp.$1
        + sep + RegExp.$2.substr(1)
        + "." + RegExp.$3.substr(1)
        ;
      alert("RegExp.$1: " + RegExp.$1
        + "\nRegExp.$2: " + RegExp.$2
        + "\nRegExp.$3: " + RegExp.$3
        );
      */
      location.replace(domutil.replaceURL);
    }
    
    var sep = ((location.protocol == "file:") ? "/index.html" : "/")
            + ((location.hash.length > 1) ? "#" : "?");
    domutil.replaceURL = RegExp.$1
      + sep + RegExp.$2.substr(1)
      + "." + RegExp.$3.substr(1)
      ;
    
    if(!window.opera)
    {
      location.replace(domutil.replaceURL);
      return;
    }
    var meta = document.createElement("meta");
    meta.httpEquiv = "refresh";
    meta.content = "0; url=" + domutil.replaceURL;
    document.getElementsByTagName("head")[0].appendChild(meta);
    
/**** */
    var ss = document.styleSheets[0];
    try
    {
      if(ss.insertRule) // Firefox,Opera,Safari,...
      {
        ss.insertRule("body { visibility:hidden !important; }", ss.cssRules.length);
        window.addEventListener("load", reload, true);
      }
      else if(ss.addRule) // Internet Explorer
      {
        ss.addRule("body", "visibility:hidden !important;");
        window.attachEvent("onload", reload);
      }
      else
        window.onload = reload;
    }catch(e)
    {
      window.onload = reload;
    }
/* ****/
  }
})();


