Youtube Middle Click Search

Middle clicking the search on youtube opens the results in a new tab

As of 01.11.2014. See ბოლო ვერსია.

// ==UserScript==
// @name       Youtube Middle Click Search
// @version    1.3.3
// @description  Middle clicking the search on youtube opens the results in a new tab
// @include      http*://www.youtube.com*
// @require https://greatest.deepsurf.us/scripts/5679-wait-for-elements/code/Wait%20For%20Elements.js?version=22195
// @namespace https://greatest.deepsurf.us/users/649
// ==/UserScript==
console.log('started YMCS');
var process = function(element) {
  console.log('found search button');
  // setup references
  var oldButton = document.querySelector("#search-btn"),
      button = document.createElement('button'),
      input = document.querySelector('#masthead-search-term'),
      initSearch = input.value.trim();
  // imitate old button style
  button.appendChild(oldButton.firstChild.cloneNode(true));
  button.firstChild.style.margin = '0 25px';
  button.style.padding = '0';
  button.className = oldButton.className;
  button.setAttribute('type', 'button');
  // insert new button and remove old
  oldButton.parentNode.insertBefore(button, oldButton);
  oldButton.remove();
  // bind events
  button.addEventListener('mousedown', function(e) {
    if(e.button === 1) {
      e.preventDefault();
    }
  }, false);
  button.addEventListener('click', function(e) {
    e.preventDefault();
    if (input.value.trim() === '' || (input.value.trim() === initSearch && e.button !== 1)) return false;
    var url = '/results?search_query=' + encodeURIComponent(input.value);
    if(e.button === 1) {
      window.open(url);
    }	else {
      window.location.href = url;
    }
    return false;
  }, false);
};

waitForElems('#search-btn', process, true);