MediaWiki:SearchTools.js: Unterschied zwischen den Versionen

Aus Open Source Ecology - Germany
Zur Navigation springen Zur Suche springen
(fix form_id)
(Teste substitude_this_form_action für https://www.digitale-bibliothek-mv.de)
Zeile 37: Zeile 37:
 
  * @param this_searchtext
 
  * @param this_searchtext
 
  * @param form_id
 
  * @param form_id
  * @returns {*}
+
  * @returns {boolean}
 
  * @constructor
 
  * @constructor
 
  */
 
  */
 
function SubstitudeThisFormAction(this_searchtext, form_id) {
 
function SubstitudeThisFormAction(this_searchtext, form_id) {
   return document.getElementById(form_id).action.replace(/%searchplaceholder/g, this_searchtext);
+
   document.getElementById(form_id).action.replace(/%searchplaceholder/g, this_searchtext);
 +
  return true;
 
}// SubstitudeThisFormAction
 
}// SubstitudeThisFormAction
  
Zeile 75: Zeile 76:
 
   $(this_jq_spanid).text('').html(
 
   $(this_jq_spanid).text('').html(
 
       "<form class='search' "
 
       "<form class='search' "
       + " id='"+this_form_id+"' "  
+
       + " id='"+this_form_id+"' "
 
       + " method ='" + formMethod + "'"
 
       + " method ='" + formMethod + "'"
 
       + " target='_blank'"
 
       + " target='_blank'"

Version vom 5. Juli 2022, 13:54 Uhr

// <source lang="javascript">
// This JavaScript will be loaded only for some pages, see MediaWiki:Common.js
// License Creative Commons Share Alike: A. Plank
// This program is free software; you can redistribute it and/or modify it under the terms of the EUPL v.1.1 or (at your option) the GNU General Public License as published by the Free Software Foundation; either GPL v.3 or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License (http://www.gnu.org/licenses/) for more details. */

/* global $, document */ /* = settings for JSLint */
"use strict"; // set ECMAScript 5 Strict Mode

/**
 * https://stackoverflow.com/questions/18545941/jquerys-on-method-combined-with-the-submit-event
 $(document).on('submit','form.remember',function(){
   // code
});
 *
 * https://stackoverflow.com/questions/5640916/set-a-forms-action-attribute-when-submitting
 * this.form.action="somethingelse";
 *
 *
 *   /*
 *     https://www.digitale-bibliothek-mv.de/viewer/search/-/SUPERFULLTEXT%253A%2528%s%2529+OR+FULLTEXT%253A%2528%s%2529/1/RELEVANCE/-/
 *
 *     SUPERFULLTEXT:(%s)+OR+FULLTEXT:(%s)/1/RELEVANCE/-/
 *     SUPERFULLTEXT:(%searchplaceholder)+OR+FULLTEXT:(%searchplaceholder)/1/RELEVANCE/-/
 *
 *   https://www.digitale-bibliothek-mv.de/viewer/search/?searchForm=searchForm&j_idt570%3Aj_idt570=Erz%C3%A4hlung&hiddenSearchFilterString=filter_ALL&searchStandardFilter=filter_ALL&submitSearch=Suchen&javax.faces.ViewState=-6659412702843884070%3A974403373735322665
 *
 *   https://www.digitale-bibliothek-mv.de/viewer/search/?searchForm=searchForm&j_idt570%3Aj_idt570=Erz%C3%A4hlung&hiddenSearchFilterString=filter_ALL&searchStandardFilter=filter_FULLTEXT&submitSearch=Suchen
 *
 *   https://www.digitale-bibliothek-mv.de/viewer/search/?searchForm=searchForm&j_idt570%3Aj_idt570=Erz%C3%A4hlung&hiddenSearchFilterString=filter_ALL&searchStandardFilter=filter_FULLTEXT&submitSearch=Suchen
 *

 *
 * */

/**
 * Modify and return a substituded form action
 * @param this_searchtext
 * @param form_id
 * @returns {boolean}
 * @constructor
 */
function SubstitudeThisFormAction(this_searchtext, form_id) {
  document.getElementById(form_id).action.replace(/%searchplaceholder/g, this_searchtext);
  return true;
}// SubstitudeThisFormAction

/**
 * @description Generate a search form passing the input text to the defined URL
 * @augments $
 * @requires jQuery
 * @requires $.jI18n
 * @requires $.resource
 * @param {string} id HTML id
 * @param {string} urlBasis basis URL without variables; if forMethod GET including questionmark at the end http://…?
 * @param {string} title HTML title attribute
 * @param {string} urlVariables all necessary URL variables
 * @param {string} formMethod optional: get or post (default: get)
 * @param {string} defaultString optional: string of the default search text (default: text of the original <span id="DryadesDataBaseSearch">Default text</span>)
 * @returns {String}
 */
function CreateSearchForm(id, urlBasis, urlVariables, title, formMethod, defaultString) {
  /* USAGE
    <span id="PatentsGoogleComSearchStatusGRANT"></span> or e.g. with a default string:
    <span id="PatentsGoogleComSearchStatusGRANT">Default string</span>
    urlVariables you get from opera's 'Create search…' by clicking right mouse at any HTML-search field
  */
  formMethod = formMethod ? formMethod : 'get'; // default form method is get
  let this_jq_spanid = 'span#' + id
      , this_jq_formid = this_jq_spanid + ' form'
      , this_form_id = 'dynamic_searchform_' + id
  ;// adjust jQuery to find forms
  // get optionally text value enclosed by <span></span>
  defaultString = $(this_jq_spanid).text() ? $(this_jq_spanid).text() : ( defaultString ? defaultString : $.resource('SearchTool_defaultSearchString') );
  // delete text value enclosed by <span></span>
  // <form></form> must be added here otherwise just <form/> will be created (jQuery/Browser <-> xhtml?)
  $(this_jq_spanid).text('').html(
      "<form class='search' "
      + " id='"+this_form_id+"' "
      + " method ='" + formMethod + "'"
      + " target='_blank'"
      + " action='" + urlBasis + "'></form>"
  );

  if (urlVariables==='%substitude_this_form_action') {
    $(this_jq_formid).append(
        "<input  type='text' "
        + " title='" + title + "'"
        + " size=30 " +
        (defaultString.match(/(…$)/ig) ?
            " onfocus=\"this.value == &quot;"+ defaultString +"&quot; ? this.value = &quot;&quot; : null;\" "
                + " onblur=\"this.value == '' ? this.value = '"+ defaultString +"' : null\" "
                + " onsubmit=\"this.value == &quot;"+ defaultString +"&quot; ? null : SubstitudeThisFormAction(this.value, '"+this_form_id+"');\" "
            : ""
        )
        + " value ='" + defaultString + "' "
        // + " onsubmit=\"this.form.action=SubstitudeThisFormAction(this.value, this.form.action)\" "
        + ">"
        + "<input type='submit' " +
        " value='" + $.resource('SearchTool_submitString') + "'" +
        " title='" + $.resource('SearchTool_submitHint') + "'> "
    );
  } else {
    // split url + create input fields
    $.each(urlVariables.split('&'), function(key, value) {
      //alert(key + ': ' + value);
      let urlVariable = value.split('=')[0],
        urlValue    = value.split('=').slice(1).join('=');
      $(this_jq_formid).append(
          "<input " +
          (urlValue.match(/(%s)/g) ? " type='text' " : " type='hidden' " ) +
          (urlValue.match(/(%s)/g) ? " title='" + title + "' " : "" ) +
          (urlValue.match(/(%s)/g) ? " size=30 " : "" ) +
          (urlValue.match(/(%s)/g) ? (defaultString.match(/(…$)/ig) ? " onfocus=\"this.value == &quot;"+ defaultString +"&quot; ? this.value = &quot;&quot; : null;\" onblur=\"this.value == '' ? this.value = '"+ defaultString +"' : null\" " : "") : "" ) +
          "  name ='" + urlVariable +"' " +
          " value ='" + (urlValue.match(/(%s)/g) ? defaultString : urlValue ) + "' "+
          ">" +
          (key === (urlVariables.split('&').length - 1) ? "<input type='submit'  value='" + $.resource('SearchTool_submitString') + "' title='" + $.resource('SearchTool_submitHint') + "'> " : "")
      );
      //alert($j(id).html());
    });// END each()
  }
}// END CreateSearchForm

$(document).ready(function() {
  // append local resources to global object, "true" = deep extension
  $.extend(true, $.jI18n, {
    de: {
      SearchTool_defaultSearchString : 'Suchbegriff hier eingeben…',
      SearchTool_submitString  : 'Los',
      SearchTool_submitHint    : 'Suche in neuer Seite…'
    },
    en: {
      SearchTool_defaultSearchString : 'Type in a search term…',
      SearchTool_submitString  : 'Go',
      SearchTool_submitHint    : 'Opens a new page…'
    },
    fr: {
      SearchTool_defaultSearchString : 'Entrez les recherche de mots ici…',
      SearchTool_submitString  : 'Et allez',
      SearchTool_submitHint    : 'Rechercher dans une nouvelle page…'
    }
  });
  CreateSearchForm(
      /* span.id       */ 'PatentsGoogleComSearchStatusGRANT',
      /* urlBasis      */ 'https://patents.google.com/?',
      /* urlVariables  */ 'q=%s&status=GRANT',
      /* title         */ 'Patentsuche bei Google (mit Status GRANT, stattgegeben)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'FreeInactivePatentSearch',
      /* urlBasis      */ 'http://freeip.mtu.edu/home/index.php',
      /* urlVariables  */ 'STerm=%s',
      /* title         */ 'Suche Free Inactive Patent Search',
      /* formMethod    */ 'post'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Wörterbuch" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaWoerterbuecher',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Wörterbuch"',
      /* title         */ 'Volltextsuche im Thema Wörterbücher (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheOhneThema',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on',
      /* title         */ 'Volltextsuche bei Digitale Sammlungen, München',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaErzaehlung',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Erzählung"',
      /* title         */ 'Volltextsuche im Thema Erzählung (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Etymologie" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaEtymologie',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Etymologie"',
      /* title         */ 'Volltextsuche im Thema Etymologie (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaGeschichte',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Geschichte"',
      /* title         */ 'Volltextsuche im Thema Geschichte (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaFremdwort',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Fremdwort"',
      /* title         */ 'Volltextsuche im Thema Fremdwort (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Handarbeiten" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaHandarbeiten',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Handarbeiten"',
      /* title         */ 'Volltextsuche im Thema Handarbeiten (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Handbuch" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaHandbuch',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Handbuch"',
      /* title         */ 'Volltextsuche im Thema Handbuch (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaHerstellung',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Herstellung"',
      /* title         */ 'Volltextsuche im Thema Herstellung (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaHolz',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Holz"',
      /* title         */ 'Volltextsuche im Thema Holz (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaMetall',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Metall"',
      /* title         */ 'Volltextsuche im Thema Metall (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaMetallurgie',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Metallurgie"',
      /* title         */ 'Volltextsuche im Thema Metallurgie (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Lehrbuch" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaLehrbuch',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Lehrbuch"',
      /* title         */ 'Volltextsuche im Thema Lehrbuch (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Lehrmittel" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaLehrmittel',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Lehrmittel"',
      /* title         */ 'Volltextsuche im Thema Lehrmittel (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaMaerchen',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Märchen"',
      /* title         */ 'Volltextsuche im Thema Märchen (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaSage',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Sage"',
      /* title         */ 'Volltextsuche im Thema Sage (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaSprichwort',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Sprichwort"',
      /* title         */ 'Volltextsuche im Thema Sprichwort (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* span.id       */ 'DigitaleSammlungenSucheThemaWortbildung',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Wortbildung"',
      /* title         */ 'Volltextsuche im Thema Wortbildung (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Wortschatz" %3A → : */
      /* span.id       */ 'DigitaleSammlungenSucheThemaWortschatz',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Wortschatz"',
      /* title         */ 'Volltextsuche im Thema Wortschatz (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );

  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3A%s&search-metadata=on&search-ocr=on&filter=subject_facet%3A"Wortbildung" %3A → : Testversuch query=all%3A%s zusammenzuführen */
      /* span.id       */ 'TestversucheDigitaleSammlungenSucheThemaWortbildung',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:&query=%s&search-metadata=on&search-ocr=on&filter=subject_facet:"Wortbildung"',
      /* title         */ 'Testversuche Suchen im Thema Wortbildung (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );

  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3Acraw%3Fer&filter=language_bib%3A"en"&filter=language_bib%3A"de" */
      /* span.id       */ 'DigitaleSammlungenSucheSprachenEnglischDeutsch',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:&query=%s&search-metadata=on&search-ocr=on&filter=language_bib:"en"&filter=language_bib:"de"',
      /* title         */ 'Volltextsuche in Sprachen Englisch und Deutsch (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );

  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3Acraw%3Fer&filter=language_bib%3A"la"&filter=language_bib%3A"de" */
      /* span.id       */ 'DigitaleSammlungenSucheSprachenLateinischDeutsch',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:&query=%s&search-metadata=on&search-ocr=on&filter=language_bib:"la"&filter=language_bib:"de"',
      /* title         */ 'Volltextsuche in Sprachen Lateinisch und Deutsch (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );

  CreateSearchForm(
      /* https://www.digitale-sammlungen.de/de/search?query=all%3Acraw%3Fer&filter=language_bib%3A"fr"&filter=language_bib%3A"de" */
      /* span.id       */ 'DigitaleSammlungenSucheSprachenFranzoesischDeutsch',
      /* urlBasis      */ 'https://www.digitale-sammlungen.de/de/search?',
      /* urlVariables  */ 'query=all:&query=%s&search-metadata=on&search-ocr=on&filter=language_bib:"fr"&filter=language_bib:"de"',
      /* title         */ 'Volltextsuche in Sprachen Französisch und Deutsch (bei Digitale Sammlungen, München)',
      /* formMethod    */ 'get', 'Hier eingeben „all:Suchbegriff“ …'
  );
  /*
  https://www.e-rara.ch/search/quick?&query=%s&facets=language%3D"ger"%20and%20language%3D"eng"
  https://www.e-rara.ch/search/quick?&query=%s&facets=language%3D"ger"%20and%20language%3D"lat"
  https://www.e-rara.ch/search/quick?&query=%s&facets=language%3D"ger"%20and%20language%3D"grc"
  https://www.e-rara.ch/search/quick?&query=%s&facets=language%3D"ger"%20and%20language%3D"fre"
   …ftmode%3D"ocr"%20and
  */
  CreateSearchForm(
      /* span.id       */ 'erara_Suche',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s',
      /* title         */ 'Titel- und Volltextsuche allgemein (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'erara_SucheMitVolltext',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=ftmode="ocr"',
      /* title         */ 'Titel- und zuzüglch Volltextsuche allgemein (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );

  CreateSearchForm(
      /* span.id       */ 'erara_SucheSpracheDeutschFranzoesisch',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=language="ger" and language="fre"',
      /* title         */ 'Deutsche und Französische Titel- und Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'erara_SucheMitVolltextSpracheDeutschFranzoesisch',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=ftmode="ocr" and language="ger" and language="fre"',
      /* title         */ 'Deutsche und Französische Titel- und zuzüglch Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );

  CreateSearchForm(
      /* span.id       */ 'erara_SucheSpracheDeutschLatein',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=language="ger" and language="lat"',
      /* title         */ 'Deutsche und Latein Titel- und Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'erara_SucheMitVolltextSpracheDeutschLatein',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=ftmode="ocr" and language="ger" and language="lat"',
      /* title         */ 'Deutsche und Latein Titel- und zuzüglch Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );

  CreateSearchForm(
      /* span.id       */ 'erara_SucheSpracheDeutschAltgriechisch',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=language="ger" and language="grc"',
      /* title         */ 'Deutsche und Altgriechisch Titel- und Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'erara_SucheMitVolltextSpracheDeutschAltgriechisch',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=ftmode="ocr" and language="ger" and language="grc"',
      /* title         */ 'Deutsche und Altgriechisch Titel- und zuzüglch Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );

  CreateSearchForm(
      /* span.id       */ 'erara_SucheSpracheDeutschEnglisch',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=language="ger" and language="eng"',
      /* title         */ 'Deutsche und Englisch Titel- und Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'erara_SucheMitVolltextSpracheDeutschEnglisch',
      /* urlBasis      */ 'https://www.e-rara.ch/search/quick?',
      /* urlVariables  */ 'query=%s&facets=ftmode="ocr" and language="ger" and language="eng"',
      /* title         */ 'Deutsche und Englisch Titel- und zuzüglich Volltextsuche (bei e-rara.ch, Zürich, Schweiz)',
      /* formMethod    */ 'get'
  );
  /* https://www.deutsche-digitale-bibliothek.de/searchresults?isThumbnailFiltered=false&query=Wörterbuch&facetValues%5B%5D=topic_fct%3DWörterbuch&offset=0 */
  CreateSearchForm(
      /* span.id       */ 'DeutscheDigitaleBibliothekSuche',
      /* urlBasis      */ 'https://www.deutsche-digitale-bibliothek.de/searchresults?',
      /* urlVariables  */ 'isThumbnailFiltered=false&query=%s',
      /* title         */ 'Titelsuche bei deutsche-digitale-bibliothek.de',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'DeutscheDigitaleBibliothekSucheSchlagwortWoerterbuch',
      /* urlBasis      */ 'https://www.deutsche-digitale-bibliothek.de/searchresults?',
      /* urlVariables  */ 'isThumbnailFiltered=false&query=%s&facetValues[]=topic_fct=Wörterbuch',
      /* title         */ 'Wörterbuch-Schlagwort als Titelsuche bei deutsche-digitale-bibliothek.de',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'DeutscheDigitaleBibliothekSucheSchlagwortDeutsche-Literatur',
      /* urlBasis      */ 'https://www.deutsche-digitale-bibliothek.de/searchresults?',
      /* urlVariables  */ 'isThumbnailFiltered=false&query=%s&facetValues[]=topic_fct=Deutsche Literatur',
      /* title         */ 'Deutsche Literatur-Schlagwort als Titelsuche bei deutsche-digitale-bibliothek.de',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'DeutscheDigitaleBibliothekSucheSchlagwortWortschatz',
      /* urlBasis      */ 'https://www.deutsche-digitale-bibliothek.de/searchresults?',
      /* urlVariables  */ 'isThumbnailFiltered=false&query=%s&facetValues[]=topic_fct=Wortschatz',
      /* title         */ 'Wortschatz-Schlagwort als Titelsuche bei deutsche-digitale-bibliothek.de',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'DWDS_HistorischeKorpora_dtaxl',
      /* urlBasis      */ 'https://www.dwds.de/r/?',
      /* urlVariables  */ 'corpus=dtaxl&q=%s',
      /* title         */ 'Der deutsche Wortschatz von 1500 bis heute. Historische Korpora (1465–1969)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'SLUB_Dresden_KollektionenVolltextsuche',
      /* urlBasis      */ 'https://digital.slub-dresden.de/kollektionssuche?',
      /* urlVariables  */ 'tx_dlf[query]=%s&tx_dlf[fulltext]=1',
      /* title         */ 'Volltextsuche (Sächsische Landesbibliothek – Staats- und Universitätsbibliothek Dresden – SLUB)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'SLUB_Dresden_KollektionenTitelsuche',
      /* urlBasis      */ 'https://digital.slub-dresden.de/kollektionssuche?',
      /* urlVariables  */ 'tx_dlf[query]=%s&tx_dlf[fulltext]=0',
      /* title         */ 'Titelsuche (Sächsische Landesbibliothek – Staats- und Universitätsbibliothek Dresden – SLUB)',
      /* formMethod    */ 'get'
  );

  CreateSearchForm(
      /* span.id       */ 'archive_org_MetaDatenSuche',
      /* urlBasis      */ 'https://archive.org/search.php?',
      /* urlVariables  */ 'query=%s&sin=',
      /* title         */ 'Titel- und Metadatensuche (Internationales Portal archive.org)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'archive_org_Volltextsuche',
      /* urlBasis      */ 'https://archive.org/search.php?',
      /* urlVariables  */ 'query=%s&sin=TXT',
      /* title         */ 'Volltextsuche (Internationales Portal archive.org)',
      /* formMethod    */ 'get'
  );

  /* Mundarten durchsuchen */
  CreateSearchForm(
      /* span.id       */ 'erzgebirgisch_de_Volltextsuche',
      /* urlBasis      */ 'https://www.erzgebirgisch.de/suche?',
      /* urlVariables  */ 'suchtext=%s',
      /* title         */ 'Volltextsuche auf erzgebirgisch.de (Mundartwörterbuch von Andreas Göbel)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'schwaebisch-schwaetza_de_Volltextsuche',
      /* urlBasis      */ 'https://www.schwaebisch-schwaetza.de/schwaebisches_woerterbuch.php#a?',
      /* urlVariables  */ 'volltext=%s',
      /* title         */ 'Volltextsuche auf schwaebisch-schwaetza.de (Mundartwörterbuch von Peter-Michael Mangold)',
      /* formMethod    */ 'post'
  );

  /* https://www.bayrisches-woerterbuch.de/?s=H%C3%BCtte */
  CreateSearchForm(
      /* span.id       */ 'bayrisches-woerterbuch_de_Allgeimeinsuche',
      /* urlBasis      */ 'https://www.bayrisches-woerterbuch.de/?',
      /* urlVariables  */ 's=%s',
      /* title         */ 'Allgemeinsuche im bayrisches-woerterbuch.de (von Rupert Frank)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'bdo_badw_de_Bedeutungsuche_Deutsch-nach-Mundart',
      /* urlBasis      */ 'https://bdo.badw.de/suche?',
      /* urlVariables  */ 'stichwort=&lemma=&bedeutung=%s&beleg=&wortfamilie=&etymologie=',
      /* title         */ 'Bedeutungen Deutsch → Mundart suchen auf Bayerns Dialekte Online (bdo.badw.de; Bayerische Akademie der Wissenschaften)',
      /* formMethod    */ 'get'
  );
  /* https://bdo.badw.de/suche?stichwort=&lemma=abbeeren&bedeutung=&beleg=&wortfamilie=&etymologie=&options%5BcreatePermalink%5D=0 */
  CreateSearchForm(
      /* span.id       */ 'bdo_badw_de_Lemmasuche_Deutsch-oder-Mundart',
      /* urlBasis      */ 'https://bdo.badw.de/suche?',
      /* urlVariables  */ 'stichwort=&lemma=%s&bedeutung=&beleg=&wortfamilie=&etymologie=',
      /* title         */ 'Grundwort (Lemma) Deutsch oder Mundart suchen auf Bayerns Dialekte Online (bdo.badw.de; Bayerische Akademie der Wissenschaften)',
      /* formMethod    */ 'get'
  );
  /*
    https://bdo.badw.de/suche?options%5Bdict%5D%5Bdibs%5D=1&stichwort=&lemma=&bedeutung=umgehen&beleg=&wortfamilie=&etymologie=&options%5BcreatePermalink%5D=0
    https://bdo.badw.de/suche?options[dict][dibs]=1&stichwort=&lemma=&bedeutung=umgehen&beleg=&wortfamilie=&etymologie=&options[createPermalink]=0
*/
  CreateSearchForm(
      /* span.id       */ 'bdo_badw_de_Bedeutungsuche_DIBS_Deutsch-nach-Mundart',
      /* urlBasis      */ 'https://bdo.badw.de/suche?',
      /* urlVariables  */ 'options[dict][dibs]=1&stichwort=&lemma=&bedeutung=%s&beleg=&wortfamilie=&etymologie=',
      /* title         */ 'Bedeutungen Deutsch → Mundart (DIBS Bayerisch-Schwaben) auf Bayerns Dialekte Online (bdo.badw.de; Bayerische Akademie der Wissenschaften)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'bdo_badw_de_Lemmasuche_DIBS_Deutsch-oder-Mundart',
      /* urlBasis      */ 'https://bdo.badw.de/suche?',
      /* urlVariables  */ 'options[dict][dibs]=1&stichwort=&lemma=%s&bedeutung=&beleg=&wortfamilie=&etymologie=',
      /* title         */ 'Grundwort (Lemma) Deutsch oder Mundart (DIBS Bayerisch-Schwaben) auf Bayerns Dialekte Online (bdo.badw.de; Bayerische Akademie der Wissenschaften)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'www_platt-wb_de_Hochdeutsch-nach-Plattdeutsch',
      /* urlBasis      */ 'https://www.platt-wb.de/hoch-platt/?',
      /* urlVariables  */ 'term=%s',
      /* title         */ 'Hochdeutsch → Plattdeutsch (Grundlage Ostfriesisches Wörterbuch von Gernot de Vries; Ostfriesische Landschaft, Körperschaft des öffentlichen Rechts)',
      /* formMethod    */ 'get'
  );
  CreateSearchForm(
      /* span.id       */ 'www_platt-wb_de_Plattdeutsch-nach-Hochdeutsch',
      /* urlBasis      */ 'https://www.platt-wb.de/platt-hoch/?',
      /* urlVariables  */ 'term=%s',
      /* title         */ 'Plattdeutsch → Hochdeutsch (Grundlage Ostfriesisches Wörterbuch von Gernot de Vries; Ostfriesische Landschaft, Körperschaft des öffentlichen Rechts)',
      /* formMethod    */ 'get'
  );

  CreateSearchForm(
      /* span.id       */ 'www2_landesarchiv-bw_de-digitalisate_ergebnis1',
      /* urlBasis      */ 'https://www2.landesarchiv-bw.de/ofs21/suche/ergebnis1.php',
      /* urlVariables  */ 'suche=%s&joker=zeichenkette&sortierung=klassifi_bestand asc, bereich asc,klassifi asc&trefferausgabe=30&bestaendeSpalte[]=bestaende.bestellsign bestaende.titel bestaende.inhalt_bew bestaende.scope_id bestaende.id bestaende.klassifi bestaende.lagerort&findbuchSpalte[]=findbuch.bestellsign findbuch.titel findbuch.entint findbuch.scope_id findbuch.id findbuch.klassifi&sucheAusgangspunkt=findbuecher_mit_digitalisaten&bildrecherche=1&suchMaschine=lucene&logik=und&archive[8]=alle&pruefzahl=',
      /* title         */ 'Findbuchlisten digitalisierter Werke (Landesarchiv Baden-Württemberg)',
      /* formMethod    */ 'post'
  );

  CreateSearchForm(
      /* span.id       */ 'digitale-bibliothek-mv_de_Volltext',
      /* urlBasis      */ 'https://www.digitale-bibliothek-mv.de/viewer/search/',
      /* urlVariables  */ 'searchForm=searchForm&hiddenSearchFilterString=filter_FULLTEXT&searchStandardFilter=filter_FULLTEXT&javax.faces.ViewState=-5322510274210818120:-5454246940287717564&j_idt546:j_idt546=%s',
      /* title         */ 'Volltextsuche www.digitale-bibliothek-mv.de (Mecklenburg-Vorpommern)',
      /* formMethod    */ 'get'
  );

/* %substitude_form_action

https://www.digitale-bibliothek-mv.de/viewer/search/-/SUPERFULLTEXT%253A%2528%s%2529+OR+FULLTEXT%253A%2528%s%2529/1/RELEVANCE/-/

    SUPERFULLTEXT:(%s)+OR+FULLTEXT:(%s)/1/RELEVANCE/-/
    SUPERFULLTEXT:(%searchplaceholder)+OR+FULLTEXT:(%searchplaceholder)/1/RELEVANCE/-/

    https://www.digitale-bibliothek-mv.de/viewer/search/-/SUPERDEFAULT%3A%28sagen%29+SUPERFULLTEXT%3A%28sagen%29+SUPERUGCTERMS%3A%28sagen%29+DEFAULT%3A%28sagen%29+FULLTEXT%3A%28sagen%29+NORMDATATERMS%3A%28sagen%29+UGCTERMS%3A%28sagen%29+CMS_TEXT_ALL%3A%28sagen%29/1/-/-/

 */
  CreateSearchForm(
      /* span.id       */ 'digitale-bibliothek-mv_de_Volltext_test',
      /* urlBasis      */ 'https://www.digitale-bibliothek-mv.de/viewer/search/-/SUPERFULLTEXT%3A%28%searchplaceholder%29+OR+FULLTEXT%3A%28%searchplaceholder%29+DEFAULT%3A%28%searchplaceholder%29+/1/RELEVANCE/-/',
      /* urlVariables  */ '%substitude_this_form_action',
      /* title         */ 'Volltextsuche www.digitale-bibliothek-mv.de (Mecklenburg-Vorpommern)',
      /* formMethod    */ 'get'
  );
});// END doc-ready