Această pagină este protejată de mișcare
Această pagină este protejată

Forma: A se vedea, de asemenea

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Modul care implementează șablonul {{ Vezi și }}.

Are o subpagină CSS: Formular: Vezi și / styles.css .


 - [[
* Modul care implementează șablonul {{Vezi și}}.
]]

require ( „Formular: fără globali” )

- Parsificați un argument șablon (reprezintă titlul unei pagini) și returnează wikilink-ul acestuia.
-
- @param {string} arg
- @return {șir}
funcție locală parseArg ( arg )
local dest , count , obj , content

- returnează eroarea cu wikilink la categorii
dacă arg : match ( '^% s *:% s * [Cc] [Aa] [Tt]' ) atunci
return '<span class = "error"> (utilizați [[Șablon: A se vedea categoria]]) </span>'
Sfârșit

- elimină orice țevi inserate prin {{!}}
arg = arg : match ( '(.-) |' ) sau arg
- înlocuiți entitatea HTML (de exemplu, este generată de {{PAGENAME}} când titlul conține apostroful)
arg = mw . text . decodifica ( arg )
- creați subiect pentru titlu
obj = mw . titlu . new ( mw . uri . decode ( arg , 'PATH' ))
- înlocuiți # cu §, dacă se găsește, creează un wikilink cu conductă
dest = arg
arg , count = arg : gsub ( '#' , '§' )
dest = count == 1 și ( dest .. '|' ) sau ''

- convertește prima literă în majuscule sau mici, în funcție de dacă intrarea conține șablonul Titlu minuscule
content = obj și obj : getContent ()
dacă și conținutul de : meci ( '{{% s * [Tt] ea minusculă% s * [|}]') atunci
arg = mw . getContentLanguage (): lcfirst ( arg )
altfel
arg = mw . getContentLanguage (): ucfirst ( arg )
Sfârșit

returnează string.format ( "'' '[[% s% s]]' ''" , dest , arg )
Sfârșit

- Construiți HTML pentru a conține linkuri pe pagini.
-
- @param {string} wikitext
- @return {șir}
funcție locală buildHTML ( wikitext )
local tableNode = mw . html. creat ( „tabel”)
tableNode
: addClass ( 'vezi și noprint' )
: Etichetă ( „tr”)
: Etichetă ( „TD”)
: wikitext ( '[[Fișier: pictogramă lupă mgx2.svg | 20px | class = noviewer | link =]]' )
: Gata ()
: Etichetă ( „TD”)
: wikitext ( string.format ( "'' Același argument în detaliu:% s ''." , wikitext ))
: Gata ()

întoarcere înapoi (nod de tablă)
Sfârșit

- ================================================== ============================
- Funcții exportate
- ================================================== ============================

local p = {}

- Funcția pentru șablon {{Vezi și}}.
funcția p. principal ( cadru )
local lastArg , conjuncție
local styles = 'Module: Vezi și / styles.css'
argumente locale = {}

pentru _ , val in ipairs ( frame : getParent (). args ) do
dacă mw . text . trim ( val ) ~ = " atunci
table.insert ( args , parseArg ( val ))
lastArg = val
Sfârșit
Sfârșit
dacă # args > 1 și lastArg atunci
conjuncție = mw . ustring. lower ( lastArg : sub ( 1 , 1 )) == 'e' și 'ed' sau 'e'
conjuncție = '& # 32;' .. conjuncție .. „& # 32;”
Sfârșit

retur cadru : extensionTag {
nume = 'șabloane' ,
args = { src = styles }
} .. buildHTML ( mw . text . listToText ( args , ', & # 32;' , conjuncție ))
Sfârșit

retur p