Modul:Kembox/Chembox explosive
Megjelenés
Kembox/Chembox explosive[mi ez?] • [dokumentáció: mutat, ] • [tesztek: létrehozás]
{{Chembox new}} (?) |
{{Chembox_új}} (?) |
{{Vegyület_infobox}} (?) |
{{Drugbox}} (?) |
{{Gyógyszeresdoboz}} (?) |
Jelentés |
---|---|---|---|---|---|
ShockSens | ShockSens | ShockSens | ütésérzékenység(en) | ||
FrictionSens | FrictionSens | FrictionSens | dörzsérzékenység(en) | ||
ExplosiveV | ExplosiveV | ExplosiveV | detonációsebesség(en) | ||
REFactor | REFactor | REFactor | TNT-egyenérték | ||
OxyBal | OxyBal | OxyBal | Oxigénegyenleg |
local csopfej = "Robbanószerkémia"
local boxtbl = { -- a paraméterek sorrendje és infóboxbeli felirata. Az 1-es sorszám fenntartva csopfej-nek
ShockSens = { 2, "[[Ütésérzékenység]]" },
FrictionSens = { 3, "[[Dörzsérzékenység]]" },
ExplosiveV = { 4, "[[Detonációsebesség]]" },
REFactor = { 5, "[[TNT-egyenérték]]" },
OxyBal = { 6, "[[Oxigénegyenleg]]" }
}
local munka = {} -- { { sorsz, címke }, érték }
local function egysor(nev,ertek)
if boxtbl[nev] -- a boxtbl tábla (lásd feljebb) az ismert paramétereket és azok sorrendjét tartalmazza
then if ertek and #ertek > 0 then table.insert(munka,{boxtbl[nev],ertek}) end -- az üres paramétereket nem írjuk ki
-- else -- a hívó sablon hibás paramétert kapott a szócikkből
end
end
-- A munka-beli értékek rendezése és kiírása
local function rendez(hivo)
local eredm = {} -- { címke, érték } rendezve
if next(munka)
then -- van megadott paraméter
local kozos = require("Module:Kembox/kozos")
eredm[1] = csopfej
kozos.adatcsoport(munka,eredm) -- munka rendezése és átmásolása eredm-be
return kozos.kiir(eredm,hivo)
end
return ""
end
-- Kívülről is hívható függvények
local p = {}
-- Hívás sablonból
function p.Chembox_explosive(frame)
local hivo = frame.args['infobox'] -- hívó sablon
for nev,ertek in frame:getParent():argumentPairs()
do egysor(nev,ertek)
end
return rendez(hivo)
end
-- Hívás modulból
function p.lua(partbl,hivo)
for nev,ertek in pairs(partbl)
do egysor(nev,ertek)
end
return rendez(hivo)
end
return p;