
domutil.events["toplevelseminar_html"] = 
{
  onload : function()
  {
    domutil.events["toplevelseminar_html"].ytplayer.state = null;
    
    var target = document.getElementById("videos");
    if(!target)
      return;
    
    var as = getHTMLElementsByTagAndClass(target, "a", "entry");
    for(var i = 0, len = as.length; i < len; i++)
    {
      var a  = as[i];
      var id = getYouTubeIDByURL(a.href);
      if(!id)
        continue;
      a.id = id;
      // a.href = "javascript:void(0)";
      AddEventListener(a, "click"
        , domutil.events["toplevelseminar_html"].ytplayer.onselectid
        , true);
    }
  }, // onload
  ytplayer : 
  {
    state : null,
    onload : function()
    {
      domutil.events["toplevelseminar_html"].ytplayer.onstatechange(-1);
    }, // onload
    onselectid : function(e)
    {
      if(!e)e = event;
      var state = domutil.events["toplevelseminar_html"].ytplayer.state;
      if(state)
      {
        var player = document.getElementById("ytplayer");
        var prevID = getYouTubeIDByURL( player.getVideoUrl() );
        var target = e.srcElement ? e.srcElement : e.target;
        if(prevID == target.id)
        {
          switch(state)
          {
            case "ready":
            case "pause":
            case "finish":
              player.playVideo();
              break;
            default:
              player.pauseVideo();
              break;
          }
        }
        else
        {
          var prevTarget = document.getElementById(prevID);
          if(prevTarget)
          {
            var classes = prevTarget.className.split(" ");
            for(var i = 0, len = classes.length; i < len; i++)
              if(classes[i] == "select")
                classes.splice(i, 1);
            prevTarget.className = classes.join(" ");
          }
          target.className += " " + "select";
          player.cueVideoById(target.id, 0);
        }
      }
      e.returnValue = false;
      e.cancelBubble = true;
      if(e.stopPropagation)e.stopPropagation();
      if(e.preventDefault )e.preventDefault();
    }, // onselectid
    onstatechange : function(newState)
    {
      var table = [
        "load",    // -1 : unstarted (player first loaded)
        "finish",  //  0 : ended
        "playing", //  1 : playing
        "pause",   //  2 : pause
        "waiting", //  3 : buffering
        "",        //  4 : ?
        "ready"    //  5 : video cued (and ready to play)
      ];
      domutil.events["toplevelseminar_html"].ytplayer.state = table[newState + 1];
    } // onstatechange
  } // ytplayer
}; // domutil.events["toplevelseminar_html"]


