Jump to content

Rozšíření:Page Forms

From mediawiki.org
This page is a translated version of the page Extension:Page Forms and the translation is 100% complete.
Příručka k rozšířením MediaWiki
Page Forms
Stav rozšíření: stabilní
Implementace Speciální stránka , API
Popis Rozšíření, které lze použít s Semantic MediaWiki nebo Cargo (nebo samostatně), které umožňuje uživatelům vytvářet formuláře pro vytváření a úpravy stránek využívajících šablony ve stylu infoboxů. Formuláře se definují v rámci wiki stránek, v obvyklé wikisyntaxi a do podoby formuláře se generují až při zobrazení.
Autoři Yaron Koren <yaron57@gmail.com>, Stephan Gambke a další
Nejnovější verze 5.8.1 (října 2024)
Zásady kompatibility Větev master zachovává zpětnou kompatibilitu.
MediaWiki 1.38+
Composer mediawiki/page-forms
Licence GNU General Public License 2.0 nebo novější
Stáhnout
Příklad Automaticky generovaný formulář, který umožňuje uživateli editovat citovanou položku
  • viewedittab
  • editrestrictedfields
  • createclass
  • multipageedit
Přeložte rozšíření Page Forms
Vagrant role pageforms
Problémy Otevřené úkoly · Nahlásit chybu

Page Forms (před rokem 2016 známé jako Sémantické formuláře (Semantic Forms)) je rozšíření MediaWiki, které uživatelům umožňuje přidávat, upravovat a dotazovat se na data pomocí formulářů. Původně vzniklo jako doplněk k rozšíření Semantic MediaWiki , aby bylo možné upravovat šablony, které ukládaly svoje parametry prostřednictvím SMW, proto se také původně nazývalo "Sematic Forms". Nyní však může pracovat také s alternativním Cargo nebo bez nainstalovaného jiného rozšíření zcela nezávisle.

Page Forms vám dovolí velmi snadno integrovat do vaší wiki formuláře pro zakládání a editaci obsahu stránek a dotazy na data, aniž byste museli něco programovat. Uživatelé si mohou formuláře tvořit i upravovat sami, aniž by k tomu potřebovali administrátorská práva.

Základní komponentou rozšíření Page Forms jsou stránky v odděleném jmenném prostoru 'Form:', které obsahují kód formulářů. Jejich kód se zpracuje teprve v okamžiku, kdy uživatel přejde na formulář. Podoba formulářů je striktně daná těmito stránkami, uživatelé si je mohou sami tvořit i upravovat, aniž by museli něco programovat.

Rozšíření Page Forms se používá převážně pro zakládání a editaci parametrů šablon nejrůznějších informačních boxů na stránkách. Prostřednictvím formuláře může uživatel vyplnit předem definovanou sadu informací, případně i rovnou zadat část obsahu budoucí stránky. Pokud se používá rozšíření typu Cargo nebo Semantic MediaWiki, lze získávat data uložená v šablonách i prostřednictvím dotazů.

Formuláře lze použít také pro editaci dat již existujících stránek, pokud máte aktivní záložku "editovat přes formulář" (edit with form) na stránce.

Rozšíření Page Forms podporuje také automatické doplňování polí, takže vyplňování formulářů je usnadněno tím, že uživatelé mohou vidět co bylo do příslušného pole vepsáno z jiného formuláře. To je velká pomoc obzvláště v případě, kdy se zadává podobný obsah, atd.

Ostatní data na stránce, která nejsou součástí editovaného formuláře, se při úpravě stránky neignorují. Tento kód se vloží do samostatného pole s názvem "ostatní text" (free text).

Page Forms obsahuje i širokou škálu dalších funkcionalit, které nějakým způsobem souvisí s formuláři.

Přes následující odkazy se dostanete k další dokumentaci.

Jak stáhnout Page Forms přes Git, jako zdrojový kód či distribuční balíček. A jak ho nainstalovat.
Jak začít používat Page Forms snadno a rychle.
Wiki s podporou Page Forms, na které lze provozovat vlastní stránky, plus veřejné wikiny, na kterých si můžete toto rozšíření vyzkoušet.
Přehled všech "Speciálních stránek" které Page Forms používá: Některé pomáhají při zakládání formulářů (Special:CreateProperty, Special:CreateTemplate, Special:CreateForm, Special:CreateCategory, Special:CreateClass), jiné usnadňují vyhledání jejich komponent (Special:Templates, Special:Forms), další zas umožňují pracovat s jejich obsahem (Special:FormEdit, Special:FormStart, Special:RunQuery, Special:UploadWindow) a je zde i speciální stránka, která umožňuje spravovat obsah šablon u všech stránek, které ji používají, přes jedinou tabulku (Special:MultiPageEdit).
Seznámení s využitím šablon u Page Forms a informace pro parsovací funkce: #template_params, #template_display, #arraymap a #arraymaptemplate, které využívá PF při vytváření šablon.
Toto je první ze tří hlavních částí. Jak definovat formulář přes stránku ve jmenném prostoru "Form:". Zahrnuje kompletní syntaxi pro návrh formulářů, včetně popisu interních značek {{{info}}}, {{{for template}}}, {{{end template}}}, {{{field}}}, {{{section}}} a {{{standard input}}}. Zahrnuje také informace jak přidat do záhlaví stránky záložku s odkazem na formulář a bubliny s nápovědou.
Toto je druhá hlavní sekce. Seznamuje se všemi typy povolených vstupů a jejich parametry. I jaké u nich dají nastavit datové typy, aby mohly použít SMW nebo Cargo.
Třetí hlavní oddíl. Informace o nastavení možných/povolených hodnot pro příslušné typy vstupu, včetně "mapování" hodnot na přívětivější zobrazované názvy, možnosti související s automatickým doplňováním a parametr "show on select" (zobrazit při výběru).
Aby se vám na stránce zobrazovala záložka "upravit pomocí formuláře" (edit with form), musíte využít parsovací funkci #default_form . Navíc, pokud chcete, může tuto záložku přejmenovat čistě na "editovat" (edit) a výchozí záložku "editovat" skrýt.
Jak uživatelům předkládat formuláře prostřednictvím funkcí #forminput, #formlink, #formredlink a #queryformlink. Také jak použít #formredlink pro automatické zakládání stránek. A jak psát odkazy tak, aby bylo možné jejich prostřednictvím rovnou upravit cílovou stránku přes funkci #autoedit.
Formuláře, přes které se lze dotazovat na data, bez toho že by je bylo nutné měnit, lze dělat přes speciální stránku Special:RunQuery.
Nejčastější problémy s formuláři na které uživatelé narazili, jejich řešení, návrh datové struktury a jak použít Page Forms v kombinaci s dalšími rozšířeními.
Známé chyby a způsoby jejich řešení a informace o funkcionalitách, které jsou plánované pro aktuální "plán vývoje".
Kde můžete psát své dotazy, oznamovat chyby, navrhovat budoucí funkcionality, posílat opravy chyb a přidávat nové překlady.
Informace pro vývojáře, kteří chtějí upravit Page Forms, nebo vytvořit rozšíření, které s ním bude spolupracovat.
Hlavní autoři a ti, kteří přispěli k vylepšení kódu, včetně jiných organizací a softwarových projektů.
Historie verzí rozšíření Page Forms od května 2007 do současnosti.
Malý rozcestník wikin, které používají Page Forms, plus odkazy na obsáhlejší seznamy.
Odkazy na rozšíření, která na Page Forms závisí, na ty, které ho mohou využívat a ty, co nabízející podobné možnosti jako Page Forms.
Stručný přehled
Odkazy Referenční příručka SMW · Referenční příručka Cargo · Pískoviště
Funkce analyzátoru (parseru) {{#arraymap :value|delimiter|var|formula|new_delimiter|conjunction}}
{{#arraymaptemplate :value|template|delimiter|new_delimiter}}
{{#forminput :form=|size=|default value=|button text=|query string=|autocomplete on category=|autocomplete on namespace=|placeholder=|popup|no autofocus|namespace selector|query string parameters}}
{{#formlink :form=|link text=|link type=|query string=|target=|tooltip=|popup|new window|query string parameters}}
{{#formredlink :form=|link text=|existing page link text=|query string=|target=|popup|new window|create page|query string parameters}}
{{#queryformlink :form=|link text=|link type=|query string=|tooltip=|popup|new window|query string parameters}}
{{#template_params :}}
{{#template_display :_format=|_title=}}
{{#autoedit :form=|target=|link text=|link type=|minor|query string=|reload|tooltip=|redirect|bring to page=|summary=|confirm|query string parameters}}
{{#autoedit_rating :form=|target=|value=|star width=|num stars=|allow half stars=|minor|reload|tooltip=|summary=|confirm|query string parameters}}
{{#default_form :form name}}
Typy vstupních polí

text , textarea , tokens , combobox , date , datetime , year , datepicker , datetimepicker , checkbox , dropdown , radiobutton , checkboxes , listbox , tree , rating , regexp , googlemaps , leaflet , openlayers