Modul:Skuad sepak bola
Modul ini dinilai sebagai modul beta, dan siap digunakan secara luas. Modul ini masih baru dan harus digunakan dengan hati-hati untuk memastikan bahwa hasilnya sesuai dengan yang diharapkan. |
Modul ini digunakan oleh Templat:Skuad sepak bola. Dapat dipanggil langsung dengan kode berikut:
{{#invoke:Skuad sepak bola|navbox}}
Penggunaan
suntingTemplat ini dirancang untuk menampilkan daftar anggota skuad (biasanya diletakkan di bagian bawah halaman artikel pemain) agar mempermudah penyuntingan dan standarisasi. Apabila ingin menggunakan templat ini, terlebih dahulu buatlah templat baru yang berisi daftar seluruh anggota skuat, dengan nama seperti Templat:Squad (nama tim).
Templat yang dapat digunakan untuk memformat daftarnya adalah:
- {{Fsp2}} - dengan parameter "no" (nomor) dan "name" (nama pemain).
- {{Football squad lastplayer}} - sama seperti {{Fsp2}}, tetapi tanpa bullet setelahnya. Gunakan templat ini untuk pemain terakhir dalam daftar. Jangan gunakan apabila daftar diakhiri dengan "manajer" (menggunakan {{Fsm}}).
- {{Fsm}} - dengan parameter "name" (nama manajer) dan parameter opsional "title" (standar: Manajer, jabatan lainnya misalnya Pelatih atau Kepala pelatih). Tidak ada bullet setelahnya, gunakan hanya untuk anggota skuad terakhir dalam daftar.
Contoh
sunting{{Skuad sepak bola/bakpasir
| name = {{subst:PAGENAME}}
| teamname = Chelsea F.C.
| bgcolor = #001489
| textcolor = #FFFFFF
| bordercolor = #FFFFFF
|list = <div>
{{Fsp2|no=1|name=[[Kepa Arrizabalaga|Arrizabalaga]]}}
{{Fsp2|no=4|name=[[Benoît Badiashile|Badiashile]]}}
{{Fsp2|no=5|name=[[Enzo Jeremías Fernández|Enzo]]}}
{{Fsp2|no=6|name=[[Thiago Silva]]}}
{{fsp2|no=9|name=[[Pierre-Emerick Aubameyang|Aubameyang]]}}
{{Fsp2|no=10|name=[[Christian Pulisic|Pulisic]]}}
{{Fsp2|no=13|name=[[Marcus Bettinelli|Bettinelli]]}}
{{Fsp2|no=14|name=[[Trevoh Chalobah|Chalobah]]}}
{{Fsp2|no=15|name=[[Mykhailo Mudryk|Mudryk]]}}
{{Fsp2|no=17|name=[[Raheem Sterling|Sterling]]}}
{{fsp2|no=18|name=[[Armando Broja|Broja]]}}
{{Fsp2|no=19|name=[[Mason Mount|Mount]]}}
{{Fsp2|no=21|name=[[Ben Chilwell|Chilwell]]}}
{{Fsp2|no=22|name=[[Hakim Ziyech|Ziyech]]}}
{{Fsp2|no=23|name=[[Conor Gallagher|Gallagher]]}}
{{Fsp2|no=24|name=[[Reece James (pemain sepak bola kelahiran 1999)|James]]}}
{{Fsp2|no=27|name=[[David Datro Fofana|D. Fofana]]}}
{{Fsp2|no=28|name=[[César Azpilicueta|Azpilicueta]] {{Kapten}}}}
{{Fsp2|no=30|name=[[Carney Chukwuemeka|Chukwuemeka]]}}
{{Fsp2|no=31|name=[[Noni Madueke|Madueke]]}}
{{Fsp2|no=32|name=[[Marc Cucurella|Cucurella]]}}
{{fsp2|no=33|name=[[Wesley Fofana|W. Fofana]]}}
{{fsp2|no=36|name=[[Gabriel Slonina|Slonina]]}}
{{Fsp2|no=56|name=[[Omari Hutchinson|Hutchinson]]}}
{{Fsp2|no=67|name=[[Lewis Hall|Hall]]}}
{{Fsp2|no=|name=[[Ethan Ampadu|Ampadu]]}}
{{Fsp2|no=|name=[[Tino Anjorin|Anjorin]]}}
{{Fsp2|no=|name=[[Andrey Santos]]}}
{{fsp2|no=|name=[[Baba Rahman]]}}
{{Fsp2|no=|name=[[Malo Gusto|Gusto]]}}
{{Fsp2|no=|name=[[Callum Hudson-Odoi|Hudson-Odoi]]}}
{{Fsp2|no=|name=[[Bashir Humphreys|Humphreys]]}}
{{Fsp2|no=|name=[[Nicolas Jackson|Jackson]]}}
{{Fsp2|no=|name=[[Romelu Lukaku|Lukaku]]}}
{{Fsp2|no=|name=[[Diego Moreira|Moreira]]}}
{{Fsp2|no=|name=[[Christopher Nkunku|Nkunku]]}}
{{Fsp2|no=|name=[[Malang Sarr|Sarr]]}}
{{Fsp2|no=|name=[[Harvey Vale|Vale]]}}
{{fsm|title=Kepala pelatih|name=[[Mauricio Pochettino|Pochettino]]}}
menghasilkan:
-- This implements Template:Football squad
local p = {}
local getArgs = require('Module:Arguments').getArgs
local Navbox = require('Module:Navbox/bakpasir')
local function buildList(args, listType)
local list={}
for k, v in pairs(args) do
if (type(k) == 'string') and (mw.ustring.match((v or ''),'%S') ~= nil) then
local prefix, n = k:sub(1,string.len(listType)), k:sub(string.len(listType)+1)
if prefix == listType and (tonumber(n) or n == '') then
if listType == 'manager' then
n = (args['manager_type' .. n] or "Manajer") .. ':'
end
if k == listType then k = listType .. '1' end
local row = string.format('* <span class="nowrap agent vcard fbsquad_%s">%s <span class="fn">%s</span></span>', k, n, v)
table.insert(list, row)
end
end
end
table.sort(list, function (x, y) return tonumber(string.match(x, 'fbsquad_' .. listType .. '(%d*)"')) < tonumber(string.match(y, 'fbsquad_' .. listType .. '(%d*)"')) end )
return table.concat(list, "\n") .. "\n"
end
function p.navbox(frame)
local args = getArgs(frame)
args.name = args.name or "{{{name}}}"
args.state = args.state or "autocollapse"
args.teamname = args.teamname or "{{{teamname}}}"
args.bgcolor = args.bgcolor or "#ccf"
args.textcolor = args.textcolor or "#000"
args.bordercolor = args.bordercolor or ""
args.list1 = buildList(args, 'p') .. (args.list1 or args.list or '') .. buildList(args, 'manager')
if args.list1 == '' then args.list1 = '{{{list}}}' end
args.titlestyle = args.titlestyle or ("background:" .. args.bgcolor ..
"; color:" .. args.textcolor ..
"; box-shadow: inset 1px 1px 0 " .. args.bordercolor .. ", inset -1px -1px 0 " .. args.bordercolor ..
"; width:87%;")
args.title = args.title or args.teamdisplay or args.teamname
args.title = "<span style=\"color:" .. args.textcolor .. ";\"> Skuad </span> [[" .. args.teamname .. "|<span style=\"color:" .. args.textcolor .. ";\">" .. args.title .. "</span>]]"
return Navbox._navbox({
name = args.name,
state = args.state,
bodystyle = nil,
bodyclass = "vcard",
titleclass = "fn org",
listclass = "hlist",
titlestyle = args.titlestyle,
title = args.title,
list1 = args.list1
})
end
return p