MediaWiki:SpecialSearch.js

Nota: Tras guardar el archivo, debes refrescar la caché de tu navegador para ver los cambios:

  • Mozilla / Firefox / Safari: pulsa May. mientras haces click en el boton Reload, o pulsa si no Ctrl-F5 o Ctrl-R (Command-R en un Macintosh)
  • Konqueror: Haz click en el botón Reload o pulsa F5;
  • Opera: Limpia la caché en Herramientas → Preferencias;
  • Internet Explorer: pulsa Ctrl mientras haces click en Refresh, o pulsa Ctrl-F5.
//<pre><nowiki>
// Amélioration de la page de recherche v2
// Auteur : Marc Mongenet
// Sous licence GFDL & GPL

hito("C SpecialSearch.js");

function SpecialSearchEnhanced2() 
{
  hito("C SpecialSearchEnhanced2");

  function SearchForm(url, descripcion)
  {
    var option = document.createElement("option");
    option.value = url;
    option.appendChild(document.createTextNode(descripcion));
    return option;
  }

  if (typeof SpecialSearchEnhanced2Disabled != 'undefined') return;
  if ((wgNamespaceNumber != -1) || (wgCanonicalSpecialPageName != "Search")) return;

  var search = document.getElementById("search");
  if (!search) search = document.getElementById("powersearch"); //Cuando escoge la búsqueda 'Avanzada'
  if (!search) return;

  search.onsubmit = function() {
       if ( document.getElementById("alternativeSearch").value == "-" ) {
          return true;
       }
       window.location = document.getElementById("alternativeSearch").value.replace("$1", encodeURIComponent(document.getElementById('searchText').value));
       return false;
   };

  var mainNode = document.createElement("select");
  mainNode.setAttribute('id', "alternativeSearch");

  var mySibling = document.getElementById('searchText');
  if (!mySibling) mySibling = document.getElementById('powerSearchText');
  while (((mySibling.nodeType != 1 /*Element*/) || (mySibling.tagName.toLowerCase() == 'input')) && mySibling.nextSibling) /* Recordemos que en HTML estará en mayúsculas y en XML en minúsculas */
         mySibling = mySibling.nextSibling;
  mySibling.parentNode.insertBefore(mainNode, mySibling);
  mySibling.parentNode.insertBefore(document.createTextNode(" "), mainNode);

  var engine;
  engine = SearchForm("-", "Búsqueda interna");
  mainNode.appendChild(engine);
  engine = SearchForm("http://www.google.com.cu/search?q=$1&as_sitesearch=www.ecured.cu&hl=es", "Buscar con Google");
  mainNode.appendChild(engine);
  engine = SearchForm("http://es.search.yahoo.com/search?p=$1&vs=www.ecured.cu", "Buscar con Yahoo");
  mainNode.appendChild(engine);
  engine = SearchForm("http://www.bing.com/search?q=$1&q1=site:http://www.ecured.cu", "Buscar con Bing");
  mainNode.appendChild(engine);

  hito("F SpecialSearchEnhanced2");
}

addOnloadHook(SpecialSearchEnhanced2);

hito("F SpecialSearch.js");

//</nowiki></pre>