Modul:LinkSubformDatum: Unterschied zwischen den Versionen
Aus FürthWiki
Keine Bearbeitungszusammenfassung Markierung: Manuelle Zurücksetzung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 27: | Zeile 27: | ||
if isEmpty(date_array[1]) then | if isEmpty(date_array[1]) then | ||
-- When datestring contained no "/" | -- When datestring contained no "/" | ||
mda = split(date_array[0]) | |||
if isEmpty(mda[1]) then | |||
-- When dateformat is just YYYY | -- When dateformat is just YYYY | ||
return | return mda[0] | ||
else | else | ||
-- Dateformat is <monthname> YYYY | -- Dateformat is <monthname> YYYY | ||
return mda[1] | return mda[1] | ||
end | end | ||
Version vom 4. Juni 2025, 14:30 Uhr
Dieses Modul befasst sich mit Datumskonversionen bei Subformularen, wenn also Subobjekte abgebildet werden sollen. Es geht um die Konvertierung der Datumsformate, wie sie auch bei normalen Formularen stattfinden.
GetMonthday
Konvertiert ein Formular-Datum wie 2025/01/08 zu 8. Januar. Ist das Format Oktober 2022 kommt Oktober raus.
GetYear
Konvertiert ein Formular-Datum wie 2025/01/08 zu 2025. Es versteht aber auch das Datumsformat Oktober 2022
local p = {}
local c = require( "Module:Common" )
function p.GetMonthday(frame)
pf = frame:getParent()
args = pf.args
months=getMonthList()
date = args[1]
date_array=split(date, "/")
if isEmpty(date_array[2]) then
return ""
else
mn = months[tonumber(date_array[1])]
date_array[2] = date_array[2]:gsub('0*', '', 1)
end
return date_array[2]:gsub("%s+", "") .. ". " .. mn
end
function p.GetYear(frame)
pf = frame:getParent()
args = pf.args
date = args[1]
date_array=split(date, "/")
if isEmpty(date_array[1]) then
-- When datestring contained no "/"
mda = split(date_array[0])
if isEmpty(mda[1]) then
-- When dateformat is just YYYY
return mda[0]
else
-- Dateformat is <monthname> YYYY
return mda[1]
end
elseif isEmpty(date_array[2]) then
-- Datestring contained one "/"
return date_array[0]
else
-- Dateformat should be YYYY/MM/DD
return date_array[0]
end
end
return p