Modul:Kembox/Chembox explosive

Kembox/Chembox explosive[mi ez?] • [dokumentáció: mutat, szerkeszt] • [tesztek: létrehozás]


Robbanószer tulajdonságok
{{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;