Jump to content

Rozšíření:InputBox

From mediawiki.org
This page is a translated version of the page Extension:InputBox and the translation is 100% complete.
Příručka k rozšířením MediaWiki
InputBox
Stav rozšíření: stabilní
Implementace Značka , Akce stránky , Hledání
Popis Umožňuje uživatelům přidat předdefinované HTML formuláře do wiki stránek
Autoři
  • Erik Möller
  • Leonardo Pimenta
  • Rob Church
  • Trevor Parscal
  • Daniel Schuba
Nejnovější verze Continuous updates
MediaWiki >= 1.46
Změny v databázi Ne
  • <inputbox>
Licence Licence MIT
Stáhnout
Přeložte rozšíření InputBox, používá-li lokalizaci z translatewiki.net
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření InputBox přidává již vytvořené formuláře HTML do wiki stránek. Uživatelé mohou "doplnit" formulář (vkládání textu, vybírání položek z menu atd.) vložením textu do políčka.

InputBox byl původně vytvořen uživatelem Erik Möller z důvodu přidání pole Vytvořit článek do Wikinews.

Instalace

Toto rozšíření je součástí MediaWiki 1.21 a vyšší. Zbývající konfigurační pokyny je stále nutné dodržovat.
  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného InputBox ve vaší složce extensions/.
    Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:
    cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/InputBox
    
  • Na konec vašeho souboru LocalSettings.php přidejte následující kód:
    wfLoadExtension( 'InputBox' );
    
  • Yes Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.

Příklad

Formulář pro založení nového článku.

Wiki kód

<inputbox>
type  = create
width = 30px   <!-- s měrnou jednotkou -->
break = no
placeholder = Page title
</inputbox>

Výsledek

Obecná skladba

Input boxy jsou konstruovány třeba takto:

<inputbox>
type              = <!-- <input> type  ==  search search2 create comment commenttitle fulltext move -->
bgcolor           = <!-- Background color of parent <form>. -->
width             = <!-- Šířka textového pole (vyhledávacího pole) ve 'znakcích'. Výchozí: 50 -->
page              = <!-- Wiki pagename (i.e. page title) to post comment to, or move page to. No [[X]]. -->
default           = <!-- Initial value of the text field. -->
preloadtitle      = <!-- Content to prepopulate the title field with for a new comment -->
preload           = <!-- Content to prepopulate the source editor with for a new topic/comment, or new page. -->
editintro         = <!-- Wiki pagename of page to be transcluded as 'help text' shown above source editor window. -->

hidden            = <!-- Any value will hide the text field, but not buttons whose links will still work. -->
searchbuttonlabel = <!-- Visual label for "Search full text" in type == search == fulltext. -->
searchengine      = <!-- Either 'MediaSearch' or 'Search'. Defaults to the wiki's value for the search-special-page preference. -->
searchtype        = <!-- If 'MediaSearch' is selected for searchengine, the result type. One of 'image' (default), 'video', 'audio', 'page', or 'other'. -->
fulltextbutton    = <!-- Visual label for "Search full text" -->
labeltext         = <!-- labeltext -->
break             = <!-- break -->
namespaces        = <!-- namespaces -->
prefix            = <!-- prefix -->
placeholder       = <!-- placeholder -->
minor             = <!-- minor -->
nosummary         = <!-- nosummary -->
summary           = <!-- summary -->
id                = <!-- id -->
inline            = <!-- inline -->
dir               = <!-- dir -->
preloadparams[]   = <!-- preloadparams[] -->
searchfilter      = <!-- searchfilter -->
useve             = <!-- useve -->
usedt             = <!-- usedt -->
arialabel         = <!-- arialabel -->
buttonlabel       = <!-- Visual label for primary search button. -->
</inputbox>

Tlačítka nejsou přístupná asistenčním technologiím: Prvky tlačítek generované touto šablonou v současné době nemají žádný přístupný popisek. Čtečky obrazovky proto oznamují pouze roli prvku (například "Tlačítko."), nikoli smysluplný popisek. Neexistuje spolehlivý způsob, jak přidat přístupný štítek bez přístupu k HTML kódu.

Parametr type je povinný. Všechny ostatní parametry jsou nepovinné. preloadparams[] se mohou objevit více než jednou.

Typy boxů

Výchozí umístění tlačítek "Odeslat" je pod vstupním polem.

Tlačítko "Odeslat" lze přesunout doprava pomocí parametru zalomení řádku, čímž se odstraní zalomení řádku mezi rámečkem a tlačítkem: break=no.

Tlačítko "Odeslat" vpravo je užitečné pro vyhledávací pole, kdy by návrhy vyhledávání jinak zakryly tlačítko vyhledávání pod vyhledávacím polem.

typ Příklad Popis
search
Vytvoří vyhledávací pole, které má výchozí šířku 50 znaků. Informace přidané do textového pole se hledají podle přesného názvu stránky (první tlačítko) nebo textu v článcích (druhé tlačítko).
create

Vytvoří novou stránku. Informací přidanou do textového pole je název stránky, která má být vytvořena (nebo stránky, kterou chcete upravit, pokud již existuje).
comment

Přidá novou sekci na konec stránky zadané v textovém poli (vytvoří stránku, pokud je nová).
commenttitle

Přidá nový oddíl se záhlavím oddílu napsaným do textového pole. Titulek lze zadat parametrem default=. Stránka musí být specifikována parametrem page=. Z nějakého důvodu to NEFUNGUJE při použití rozšíření jeho vyvoláním pomocí {{#tag}}, pouze při použití ‎<inputbox>. (zavedeno od rev:47203)
fulltext
Hledejte pouze pomocí tlačítka fulltextového vyhledávání, bez tlačítka přesné shody (tlačítko "Jít na"). (zavedeno od rev:45269)
move

Změní název nebo přesune stránku. This also doesn't work when creating it by invoking a tag. (zavedeno od gerrit:97559)

Pro type=search2 je výchozí umístění tlačítka vyhledávání vložené vpravo. V současné době se nezdá, že by bylo možné do tohoto typu vstupního pole přidat další parametry. Toto vyhledávací pole prohledává celou wiki, na které je umístěno.

typ Příklad
search2
 

Parametry

Parametr Popis Rozsah Výsledek Příklad Kompatibilita
arialabel= Zadejte atribut aria-label do vstupního pole, aby bylo vygenerované označení přístupné pro programy pro čtení z obrazovky Viz ARIA: atribut aria-label. Všechny typy
<inputbox>
type=search
arialabel=Search the wiki
</inputbox>
1.35
Gerrit change 572050
bgcolor= Nastaví barvu pozadí tabulky (hodnoty barev HTML). Nepoužívejte uvozovky. Všechny typy
<inputbox>
type=search
bgcolor=gray
</inputbox>
?
width= Nastaví šířku InputBox ve znacích. Všechny typy

<inputbox>
type=create
width=24
</inputbox>
?
default= Výchozí text pro vložení do InputBoxu. Všechny typy

<inputbox>
type=comment
default=User talk:Eloquence
</inputbox>
?
preloadtitle= Výchozí text, který se má přidat jako název nového komentáře. comment

<inputbox>
type=comment
preloadtitle=My comment title
default=Extension talk:InputBox
</inputbox>
1.45
Gerrit change 1191433
preload= Stránka pod tímto názvem bude při vytvoření nové stránky předem načtena (viz Příručka:Vytváření stránek s přednačteným textem ) do prázdného editboxu. create, comment, commenttitle

<inputbox>
type=create
preload=Log
</inputbox>
?
Zadejte název neexistující stránky do příkladu InputBox výše nebo níže a kliknutím na "Vytvořit článek" nebo "Nová sekce" otestujte tento efekt.
editintro= Stránka, která je uvedena pod tímto parametrem, se zobrazí podle pokynů nad editačním oknem. create, comment

<inputbox>
type=comment
editintro=MediaWiki:Missingcommenttext
</inputbox>
?
buttonlabel= Tento štítek bude použit pro hlavní tlačítko formuláře. Všechny typy

<inputbox>
type=comment
buttonlabel=Přidání nového zdroje
</inputbox>
?
hidden= To určuje, že neexistuje žádný InputBox.

Používá se s parametrem default, který nyní není výchozí, ale pevná hodnota názvu stránky. Jakákoli hodnota znamená yes/true (ano/pravda).

create, comment

<inputbox>
type=comment
editintro=Extension:InputBox/editintro comment
preloadtitle=Comment title
preload=Extension:InputBox/preload
hidden=yes
default=Extension talk:InputBox
buttonlabel=Napište komentář na diskusní stránce
</inputbox>
?
searchbuttonlabel= Tento štítek bude použit pro tlačítko "Hledat celý text" vyhledávacího formuláře. search, fulltext
<inputbox>
type=search
searchbuttonlabel=Hledej hlouběji
</inputbox>
?
searchengine= Pokud je nainstalován parametr Extension:MediaSearch , tento parametr nastaví speciální stránku vyhledávání na hodnotu Search nebo MediaSearch. Pokud se tento parametr nepoužije, použije se preference uživatele (nebo výchozí preference wiki). search, search2
<inputbox>
type=search
searchengine=MediaSearch
</inputbox>
1.45
Gerrit change 1167841
searchtype= Pokud je hodnota searchengine=MediaSearch, tento parametr konfiguruje, která záložka s výsledky se má zobrazit. Jedna z následujících možností: image, video, audio, page, other search, search2
<inputbox>
type=search
searchengine=MediaSearch
searchtype=audio
</inputbox>
1.46
Gerrit change 1174925
fulltextbutton= Zobrazit tlačítko fulltextového vyhledávání ve formuláři vyhledávání2 search2
<inputbox>
type=search2
searchbuttonlabel=Hledej hlouběji
fulltextbutton=true
</inputbox>
?
labeltext= Text, který se zobrazí vedle tlačítka search2
 
<inputbox>
type=search2
searchbuttonlabel=Hledej hlouběji
labeltext=Hledat: 
</inputbox>
?
break= Zda se má vložit zalomení řádku mezi vstupní pole a tlačítka. Výchozí hodnota je yes (použijte zalomení řádku). Všechny typy
<inputbox>
type=create
width=24
break=no
</inputbox>
?
namespaces= Podpora zaškrtávacích políček jmenného prostoru ve fulltextovém vyhledávání.

S "Main**" je ve výchozím nastavení zaškrtnutý jmenný prostor hlavního článku.

search, fulltext
<inputbox>
type=search
namespaces=Main**,Help
</inputbox>
?
prefix=
  • Zúžit vyhledávání na stránky začínající určitou předponou. Všimněte si, že to funguje pouze s určitými back-endy vyhledávání, aktuálně pouze Extension:CirrusSearch . Výchozí je prázdný řetězec (prohledat všechny stránky).
  • Vytvořte novou stránku začínající určitou předponou.
  • V type=move je předpona přidána před výchozí parametr.

Poznámka: Podtržítka nejsou rozpoznána jako mezery.

search, fulltext, create

Tlačítko níže uvádí před názvem Special:Mypage/.


<inputbox>
type=search
prefix={{FULLPAGENAME}}/Archive
</inputbox>
?
placeholder= Definujte zástupný text, který se zobrazí ve vstupním poli, pokud je prázdné. Všechny typy
<inputbox>
type=search
placeholder=Prohledejte tuto wiki
</inputbox>
1.19
page= Stránka, na kterou chcete přidat komentář, nebo stránka, kterou chcete přesunout. comment, move

<inputbox>
type=comment
page=Project:Sandbox
</inputbox>
minor= Malá editace. comment, create

<inputbox>
type=comment
page=Project:Sandbox
minor=true
</inputbox>
nosummary= Upravit souhrn (nadpis) není pro nový komentář vyžadováno. comment

<inputbox>
type=commenttitle
page=Special:Mypage/inputbox test
nosummary=true
</inputbox>
summary= Upravit souhrn nebo důvod přesunu. create, move

<inputbox>
type=create
default=Special:Mypage/inputbox test
summary=Foo
</inputbox>
id= Atribut ID pro ‎<form>. Všechny typy

<inputbox>
type=comment
page=Project:Sandbox
summary=Foo
id=bar
</inputbox>
1.23

for some types
inline= Nastavte InputBox jako vložený prvek (bez zalomení řádku na začátku). Jakákoli hodnota znamená yes/true (ano/pravda). search2 Zde je text:
 
Zde je text: <inputbox>
type=search2
inline=true
width=10
</inputbox>
dir= Zprava doleva (rtl) nebo zleva doprava (ltr). Výchozí je směrovost jazyka stránky. Všechny typy

<inputbox>
dir=rtl
type=comment
page=Project:Sandbox
summary=Foo
</inputbox>
preloadparams[]= Zadejte parametry pro text předběžného načtení. Viz Vytváření stránek s předem načteným textem. create, comment, commenttitle

<inputbox>
type=create
preload=Log
preloadparams[]=param1
preloadparams[]=param2
</inputbox>
1.25
searchfilter= Zadejte parametry, které se mají připojit k vyhledávání. Podrobnosti viz Nápověda:CirrusSearch . search, fulltext
<inputbox>
type=search
searchfilter=insource:foo
</inputbox>
1.30
useve= Při vytváření stránky použije vstupní pole nový vizuální editor, pokud je rozšíření nainstalováno a tento parametr je nastaven na libovolnou hodnotu. create, comment
<inputbox>
type=create
break=no
useve=true
</inputbox>
usedt= Při přidávání nové sekce otevře vstupní pole Nástroj nového tématu Diskusní nástroje, pokud je rozšíření nainstalováno a tento parametr je nastaven na libovolnou hodnotu. comment, commenttitle

<inputbox>
type=commenttitle
page=Project:Sandbox
usedt=true
</inputbox>

Použití create na existující stránku jednoduše poskytne editační stránku. V takovém případě je preload ignorován. Použití comment pro novou stránku funguje.

Texty převzaté z jmenného prostoru MediaWiki: jsou samozřejmě pouze příklady, pro editintro nebo preload lze použít jakoukoli existující stránku. Bohužel preload zatím nefunguje pro souhrn Upload.

Přizpůsobení pomocí CSS

Vstupní pole v šablonách si můžete přizpůsobit pomocí CSS. Nejprve jej obalte tagy ‎<div> s jedinečným ID a poté pomocí selektorů CSS změňte jeho vzhled. Také byste mohli samotnému vstupnímu poli přiřadit ID a toto ID použít v selektorech CSS. Můžete také přidat vlastní tlačítko nebo ikonu vyhledávání.


Template:Exampleinputbox
<templatestyles src="Template:Example/styles.css"/><div id = "inputbox-search-wrapper">
{{#tag: inputbox|
type        = search
id          = inputbox-search
placeholder = Search all pages
namespaces  = Main**,Help**
}}<div class = "inputbox-search-icon"></div>
</div>
Exampleinputbox/styles.css
#inputbox-search-wrapper {
	box-sizing: border-box;
    height: 32px;
    display: flex;
    border: 1px solid var(--border-color-base, #a2a9b1);
    border-radius: 10px;
}

#inputbox-search-wrapper input {
	all: unset;
    padding-left: 8px;
    padding-top: 6px;
    padding-bottom: 6px;
    width: 180px !important;
	font-family: 'Helvetica Neue', 'Helvetica', 'Liberation Sans', 'Arial', sans-serif;;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-base--subtle, #72777d);
}

#inputbox-search-wrapper input::placeholder {
	font-family: 'Helvetica Neue', 'Helvetica', 'Liberation Sans', 'Arial', sans-serif;;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-base--subtle, #72777d);
}

#inputbox-search-wrapper input.mw-ui-button,
.searchbox .cdx-checkbox--inline,
#inputbox-search-wrapper .cdx-button,
#inputbox-search-wrapper div.mw-ui-checkbox {
	display: none;
}

.inputbox-search-icon {
    padding-left: 8px;
    width: 25px;
    background-image: url("https://upload.wikimedia.org/wikipedia/commons/thumb/7/7e/Vector_search_icon.svg");
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

Zarovnání

Pokud chcete vytvořit vstupní pole na pravé straně stránky, udělejte něco jako:

<div style="float:right; width:42em">
<inputbox>
type=create
</inputbox>
</div>

Dává:



Použití InputBoxu v šabloně

Verze MediaWiki:
1.45
Gerrit change 1224857

Aby bylo možné vytvořit mnoho podobných vstupních polí, lze InputBox použít v šabloně. Předávání parametrů šablony parametrům InputBoxu však funguje pouze v případě, že je tag ‎<inputbox>...‎</inputbox> použit prostřednictvím funkce parseru #tag s tagem {{#tag:inputbox | ...}} uvnitř šablony.

Následující příklad je šablona pro vytvoření nové stránky wiki z pojmenované šablony:

{{#tag:inputbox |
type=create
buttonlabel=Vytvořit nový {{{1|článek}}}
preload={{{2|Template:Article}}}
}}

Při vytváření instance šablony první parametr udává položku, která je vytvořena (výchozí: article), jak je uvedeno v tlačítku, druhý parametr udává název šablony použité k vytvoření položky (výchozí: Template:Article).

Například kód pro vstupní pole pro vytvoření nového projektu ze šablony projektu může vypadat takto:

{{CreateNew|project|Template:Project}}

As of version 1.46 template parameters work as expected with the ‎<inputbox>...‎</inputbox> syntax and it is no longer necessary to use the {{#tag:}} workaround.

Poznámky

Toto rozšíření rozděluje cache parseru na základě jazyka uživatelského rozhraní (git:e18b7e6), aby se zobrazily lokalizované texty popisků.

Související odkazy