Youtube shuffle bitbucket.io helper

Adds a few features from youtube playlists to youtube-playlist-randomizer

// ==UserScript==
// @name         Youtube shuffle bitbucket.io helper
// @namespace    https://youtube-playlist-randomizer.bitbucket.io/
// @version      1.4
// @description  Adds a few features from youtube playlists to youtube-playlist-randomizer
// @author       lopt24d
// @match        https://youtube-playlist-randomizer.bitbucket.io/*
// @grant        none
// ==/UserScript==


(function() {
      
  // Autostart bookmarked playlist
  var pid = new URL(window.location).searchParams.get("pid");
  if (pid != null) {
    document.getElementById("pid").value = pid;
    getVids();
  }
  
  var playerFound = false;
  
  var seekPlayer = setInterval(function () {
    if (player) {
      playerFound = true;
      clearInterval(seekPlayer);
    }
  }, 1000);
  
  var focus;
    
  window.addEventListener('keydown', function(event) {
    focus = document.activeElement.tagName;
    if (!(focus == "INPUT" || focus == "TEXTAREA") && playerFound) {
      switch (event.keyCode) {
        case ('N'.charCodeAt()):  // Next video
          playNext();
          break;
        case ('P'.charCodeAt()):  // Previous video
          playPrev();
          break;
        case ('R'.charCodeAt()):  // Reshuffle
          getVids();
          break;
        case ('H'.charCodeAt()):  // hide/show playlist
          document.getElementById("list").setAttribute("size", document.getElementById("list").getAttribute("size") ^ "10")
          break;
        case ('L'.charCodeAt()):  // seek forward 10 seconds
          player.seekTo(player.getCurrentTime() + 10);
          break;
        case ('J'.charCodeAt()):  // seek backwards 10 seconds
          player.seekTo(player.getCurrentTime() - 10);
          break;
        case ('K'.charCodeAt()):  // pause/unpause video
          if (player.getPlayerState() == 1)
            player.pauseVideo();
          else
            player.playVideo();
          break;
        case ('M'.charCodeAt()):  // mute/unmute video
          if (player.isMuted())
            player.unMute();
          else
            player.mute();
          break;
      }
    }
  });
  
})();