« Module:Infobox/Événement » : différence entre les versions
Page créée avec « local localdata = require('Module:Infobox/Localdata') function buildSubject(arg) local subject = 'Évènement' if arg then local types = { ['conflit militaire'] = 'Conflit militaire' } subject = types[arg:lower()] or subject end return subject end function buildColumns(localdata, prefix) local res = mw.html.create( 'div' ) local style = 'display:grid;text-align:left;' local isFirstColumn = true for i = 1, 4 do local value = localdata[pre... » |
Aucun résumé des modifications |
||
Ligne 1 : | Ligne 1 : | ||
local localdata = require( | local localdata = require("Module:Infobox/Localdata") | ||
function | function build_columns(localdata, prefix) | ||
local res = mw.html.create("div") | |||
local style = "display:grid;text-align:left;" | |||
local isFirstColumn = true | |||
for i = 1, 4 do | |||
local value = localdata[prefix .. i] | |||
if value then | |||
if isFirstColumn then | |||
end | isFirstColumn = false | ||
style = style .. "grid-template-columns:1fr" | |||
else | |||
style = style .. " 1fr" | |||
end | |||
res:tag("div"):wikitext(value):done() | |||
else | |||
break | |||
end | |||
end | |||
res:attr("style", style .. ";"):allDone() | |||
if isFirstColumn then | |||
return | |||
end | |||
return tostring(res) | |||
end | end | ||
return { | return { | ||
parts = { | |||
{ | |||
type = "title", | |||
value = "titre", | |||
subtitle = "sous-titre", | |||
}, | |||
{ | |||
type = "images", | |||
imageparameters = {"image", "image2", "image3", "image4", "image5"}, | |||
captionparameter = "légende", | |||
}, | |||
{ | |||
type = "table", | |||
title = "Informations générales", | |||
rows = { | |||
{type = "row", label = "Date", value = "date"}, | |||
{type = "row", label = "Lieu", value = "lieu"}, | |||
{type = "row", label = "''Casus belli''", value = "casus belli"}, | |||
{type = "row", label = "Issue", value = "issue"} | |||
} | |||
}, | |||
{ | |||
type = "table", | |||
title = "Belligérants", | |||
rows = { | |||
{type = "row1col", value = function(localdata) | |||
return build_columns(localdata, "combattant") | |||
end} | |||
} | |||
}, | |||
{ | |||
type = "table", | |||
title = "Commandants", | |||
rows = { | |||
{type = "row1col", value = function(localdata) | |||
return build_columns(localdata, "commandant") | |||
end} | |||
} | |||
}, | |||
{ | |||
type = "table", | |||
title = "Forces en présence", | |||
rows = { | |||
{type = "row1col", value = function(localdata) | |||
return build_columns(localdata, "forces") | |||
end} | |||
} | |||
}, | |||
{ | |||
type = "table", | |||
title = "Pertes", | |||
rows = { | |||
{type = "row1col", value = function(localdata) | |||
return build_columns(localdata, "pertes") | |||
end} | |||
} | |||
}, | |||
{ | |||
type = "table", | |||
title = "Évènements associés", | |||
rows = { | |||
{type = "row", label = "Partie de", value = "partie de"}, | |||
{type = "row", label = "Connexe", value = "connexe"}, | |||
{ | |||
type = "succession", | |||
value = { | |||
before = localdata["précédent"], | |||
after = localdata["suivant"] | |||
} | |||
} | |||
} | |||
}, | |||
{type = "text", value = "pied"} | |||
} | |||
} | } |
Version du 10 janvier 2023 à 16:28
local localdata = require("Module:Infobox/Localdata")
function build_columns(localdata, prefix)
local res = mw.html.create("div")
local style = "display:grid;text-align:left;"
local isFirstColumn = true
for i = 1, 4 do
local value = localdata[prefix .. i]
if value then
if isFirstColumn then
isFirstColumn = false
style = style .. "grid-template-columns:1fr"
else
style = style .. " 1fr"
end
res:tag("div"):wikitext(value):done()
else
break
end
end
res:attr("style", style .. ";"):allDone()
if isFirstColumn then
return
end
return tostring(res)
end
return {
parts = {
{
type = "title",
value = "titre",
subtitle = "sous-titre",
},
{
type = "images",
imageparameters = {"image", "image2", "image3", "image4", "image5"},
captionparameter = "légende",
},
{
type = "table",
title = "Informations générales",
rows = {
{type = "row", label = "Date", value = "date"},
{type = "row", label = "Lieu", value = "lieu"},
{type = "row", label = "''Casus belli''", value = "casus belli"},
{type = "row", label = "Issue", value = "issue"}
}
},
{
type = "table",
title = "Belligérants",
rows = {
{type = "row1col", value = function(localdata)
return build_columns(localdata, "combattant")
end}
}
},
{
type = "table",
title = "Commandants",
rows = {
{type = "row1col", value = function(localdata)
return build_columns(localdata, "commandant")
end}
}
},
{
type = "table",
title = "Forces en présence",
rows = {
{type = "row1col", value = function(localdata)
return build_columns(localdata, "forces")
end}
}
},
{
type = "table",
title = "Pertes",
rows = {
{type = "row1col", value = function(localdata)
return build_columns(localdata, "pertes")
end}
}
},
{
type = "table",
title = "Évènements associés",
rows = {
{type = "row", label = "Partie de", value = "partie de"},
{type = "row", label = "Connexe", value = "connexe"},
{
type = "succession",
value = {
before = localdata["précédent"],
after = localdata["suivant"]
}
}
}
},
{type = "text", value = "pied"}
}
}