Rozszerzenie:Page Forms

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Extension:Page Forms and the translation is 40% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎日本語 • ‎polski • ‎русский • ‎sicilianu • ‎中文
Page Forms - navigation (viewTemplate:Page Forms navigation)
Basics Main pageExtension:Page Forms (talk) · Download and installationExtension:Page Forms/Download and installation · Quick start guideExtension:Page Forms/Quick start guide · HostingExtension:Page Forms/Hosting · Special pagesExtension:Page Forms/Special pages
Using Page Forms PF and templatesExtension:Page Forms/Page Forms and templates · Defining formsExtension:Page Forms/Defining forms   (Input typesExtension:Page Forms/Input types) · The "Edit with form" tabExtension:Page Forms/The "edit with form" tab · Linking to formsExtension:Page Forms/Linking to forms · Creating query formsExtension:Page Forms/Creating query forms
Resources for help Common problemsExtension:Page Forms/Common problems · Known bugs and planned featuresExtension:Page Forms/Known bugs and planned features · Getting supportExtension:Page Forms/Getting support · Developers' documentationExtension:Page Forms/Developers' documentation · TestingExtension:Page Forms/Testing
About Page Forms Authors and creditsExtension:Page Forms/Authors and credits · Version historyExtension:Page Forms/Version history · Sites that use Page FormsExtension:Page Forms/Sites that use Page Forms · Related extensionsExtension:Page Forms/Related extensions
Podręcznik rozszerzeń MediaWikiManual:Extensions
Crystal Clear action run.png
Page Forms

Status wydania:Extension status stabilne

RealizacjaTemplate:Extension#type Special page, API
OpisTemplate:Extension#description Rozszerzenie umożliwia tworzenie i edytowanie za pomocą zdefiniowanych przez użytkownika formularzy stron korzystających z szablonów (infoboksów). Może ono być używane samodzielnie albo w skojarzeniu z Semantic MediaWikiExtension:Semantic MediaWiki lub CargoExtension:Cargo. Użytkownicy definiują formularze za pomocą stworzonego specjalnie do tego celu języka znaczników. Definicje są przechowywane na wikistronach w przeznaczonej do tego celu odrębnej przestrzeni nazw.
AutorzyTemplate:Extension#username Yaron Koren <yaron57@gmail.com>, Stephan Gambke i inne
Ostatnia wersjaTemplate:Extension#version 4.1.2 (czerwiec 2017(2017-06))
MediaWikiTemplate:Extension#mediawiki 1.21+
ComposerComposer mediawiki/page-forms
LicencjaTemplate:Extension#license GNU General Public License 2.0 or later
Pobieranie

Kliknij tutaj

PrzykładTemplate:Extension#example Przykładowy formularz stworzony za pomocą kreatora
Użyte hakiTemplate:Extension#hook
MakeGlobalVariablesScriptManual:Hooks/MakeGlobalVariablesScript
LinkEndManual:Hooks/LinkEnd
UnknownActionManual:Hooks/UnknownAction
SkinTemplateTabsManual:Hooks/SkinTemplateTabs
SkinTemplateNavigationManual:Hooks/SkinTemplateNavigation
AdminLinksManual:Hooks/AdminLinks
ParserBeforeStripManual:Hooks/ParserBeforeStrip
ParserFirstCallInitManual:Hooks/ParserFirstCallInit
ResourceLoaderRegisterModulesManual:Hooks/ResourceLoaderRegisterModules

Przetłumacz rozszerzenie Page Forms jeżeli jest dostępne na translatewiki.net

Sprawdź wykorzystywanie i version matrix.

ProblemyPhabricator

Otwarte zadania · Zgłoś błąd

Page Forms, do listopada 2016 znane jako Semantic Forms, to rozszerzenie umożliwiające dodawanie, edytowanie i przeszukiwanie danych (wykonywanie kwerend) z użyciem formularzy. Rozszerzenie to powstało w ramach Semantic MediaWikiExtension:Semantic MediaWiki i pierwotnym jego przeznaczeniem było umożliwienie łatwego edytowania szablonów semantycznych (tj. przechowujących dane semantyczne) - stąd jego pierwotna nazwa Semantic Forms. Obecnie jednak może być używane także w skojarzeniu z CargoExtension:Cargo, jak i samodzielnie.

Ujmując sprawę w skrócie - rozszerzenie Page Forms daje użytkownikom wiki możliwość edytowania oraz tworzenia wikistron za pomocą formularzy, a jeśli jest używane w skojarzeniu z Cargo lub Semantic MediaWiki także wykonywania kwerend. Co najważniejsze - użytkownicy nie muszą posiadać żadnej wiedzy na temat wikikodu, czy tworzenia kwerend. Można powiedzieć, że formularz to rodzaj szablonu, z tą jednak różnicą, że służącego nie do prezentacji, a do wprowadzania danych. Formularze mogą być tworzone nie tylko przez administratorów, ale też przez zwykłych użytkowników.

Centralną częścią rozszerzenia Page Forms są definicje formularzy. Definicje te są niczym innym, jak wikistronami znajdującymi się w odrębnej, przeznaczonej tylko dla nich przestrzeni nazw Form. Formularze definiuje się za pomocą specjalnego języka znaczników. Kod definicji jest parsowany "w locie" za każdym razem gdy użytkownik korzysta z formularza. Całość kodu niezbędnego do zdefiniowana danego formularza znajduje się na jego stronie. (np. kod formularza o nazwie Recencja znajduje się na stronie Form:Recenzja). Dzięki temu użytkownicy mogą w (stosunkowo) łatwy sposób samodzielnie tworzyć i modyfikować formularze bez konieczności programowania w ścisłym tego wyrażenia znaczeniu. Konieczne jest tylko zapoznanie się ze składnią znaczników służących do definiowania formularzy, co jest stosunkowo proste (niewiele bardziej skomplikowane niż standardowy wikikod używany do tworzenia szablonów).

Rozszerzenie Page Forms zwykle jest używane w celu wstawiania na stronę szablonów (w tym infoboksów) oraz edytowania ich treści. Dzięki formuarzom użytkownicy mogą w prosty sposób wstawiać na stronie zarówno pojedyncze szablony jak i całe ich zestawy, a także edytować te fragmenty strony, które nie zostały ujęte w szablonach (tekst dowolny). Jeśli na danej wiki zainstalowano także rozszerzenie Semantic MediaWiki lub Cargo, to możliwe jest wstawianie na strony określonych przez szablon danych (adnotacji) semantycznych oraz późniejsze ich przeszukiwanie za pomocą kwerend zdefiniowanych za pomocą formularza i odpowiednich szablonów. Szczegółowe informacje na temat tego czym są dane (adnotacje) semantyczne i jak ich używać można znaleźć w opisie rozszerzenie Semantic MediaWiki.

Formularzy można także uzywac do edytowania danych na stronach już istniejących. W tym celu należy włączyć opcję Edytuj za pomocą formularza w menu na górze strony (⧼formedit⧽).

W poszczególnych polach formularza można włączyć opcję automatycznego uzupełniania wprowadzanego tekstu. Autouzupełnianie może odbywać się albo z wykorzystaniem danych wprowadzonych już podczas wcześniejszych edycji, albo z użyciem danych pochodzących z wcześniej zdefiniowanej listy dopuszczalnych wartości. Inne, rzadziej stosowane opcje, są opisane w osobnym artykule pomocy opisującym sposób definiowania pól formularza.

Podczas edytowania strony za pomocą formualrza dane, które nie pasują do żadnego z pól powiązanego z tym formularzem szablonu nie są ani ingorowane ani usuwane. Trafiają one do specjalnego pola formularza, które słuzy do wprowadzania tekstu dowolnego (pole dowolny tekst).

Rozszerzenie Page Forms, oprócz możliwości prostego wprowadzania tekstu, czy autouzupełniania oferuje duży wybór innych uzytecznych funkcjonalności związanych z formularzami.

Poniżej znajdują się linki do szczegółowej dokumentacji rozszerzenia.

Rozszerzenie można pobrać i zainstalować na kilka sposobów: za pomocą Git, Composera lub ręcznie.
Jak szybko rozpocząć pracę z Page Forms
Serwisy hostujące strony typu wiki wspierające Page Forms oraz publiczne wiki, które mogą posłużyć do przetestowania rozszerzenia
All the "special pages" that Page Forms defines: the ones that provide helper forms (Special:CreateProperty, Special:CreateTemplate, Special:CreateForm, Special:CreateCategory, Special:CreateClass), the ones that display lists (Special:Templates, Special:Forms) and the ones used to display actual forms (Special:FormEdit, Special:FormStart, Special:RunQuery, Special:UploadWindow).
The template-based philosophy of Page Forms - plus information on the two parser functions that PF defines for templates: #arraymap and #arraymaptemplate.
This is the first of the two major sections. How to define a form via a page within the "Form:" namespace. Covers the entire form-definition syntax, including the {{{info}}}, {{{for template}}}, {{{end template}}}, {{{field}}}, {{{section}}} and {{{standard input}}} tags. Also covers how to add tabs and tooltips.
The second major section. A listing of all allowed input types, as well as parameters for each, and the set of SMW and Cargo data types that each can be used with. Also includes complete information on autocompletion options.
How to get the "⧼formedit⧽" tab to appear on pages, using the #default_form parser function. Plus, how to rename the tab to simply "edit", and how to remove the standard "edit" tab (if you want to).
How to bring users to forms, via the #forminput, #formlink, #formredlink and #queryformlink functions. Also, how to use #formredlink to have red-linked pages created automatically. Also, how to create links that directly modify a page, via the #autoedit function.
Creating forms to query data, instead of to modify data, via the Special:RunQuery page.
Common issues people have run into, and their solutions, relating to forms, data structure design, and the use of Page Forms with other extensions.
Known bugs in the software, and potential workarounds for them; plus features that are planned in the current "development roadmap".
Where to ask questions, submit bug reports, submit feature requests, submit fixes, and add new translations.
Information for developers who want to modify Page Forms, or create an extension that works in tandem with it.
The main authors, others who have contributed to the code, and credits to other organizations and software projects.
A version history of Page Forms, from May 2007 to the present.
A small sampling of the wikis that use Page Forms, plus links to more comprehensive lists.
Extensions that require the presence of Page Forms, extensions that can be used together with Page Forms, and extensions that have a similar purpose to Page Forms.
Cheat sheet
Links SMW quick reference · Cargo quick referenceExtension:Cargo/Other documentation · Scratchpad · Sandbox
Parser functions {{#arraymap:value|delimiter|var|formula|new_delimiter}}
{{#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|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}}
{{#autoedit:form=|target=|link text=|link type=|query string=|reload|tooltip=|query string parameters}}
{{#default_form:form name}}
Input types

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