Modul:LinkFormDatum: Unterschied zwischen den Versionen

keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 17: Zeile 17:
      
      
     mw.smw.set({[attr_date] = date})
     mw.smw.set({[attr_date] = date})
     if isEmpty(date_array[1]) then
     if isEmpty(date_array[2]) then
     -- When datestring contained no "/"
     -- When datestring contained no "/"
     if isInteger(date_array[0]) then
     if isInteger(date_array[1]) then
     -- When dateformat is just YYYY
     -- When dateformat is just YYYY
     return "[[" .. attr_year .. "::" .. date_array[0] .. "]]"
     return "[[" .. attr_year .. "::" .. date_array[1] .. "]]"
     else
     else
     -- Dateformat is <monthname> YYYY
     -- Dateformat is <monthname> YYYY
     local mda = str.split(date_array[0])
     local mda = str.split(date_array[1])
     return mda[0] .. " [[" .. attr_year .. "::" .. mda[1] .. "]]"
     return mda[1] .. " [[" .. attr_year .. "::" .. mda[2] .. "]]"
     end
     end
     elseif isEmpty(date_array[2]) then
     elseif isEmpty(date_array[3]) then
     -- Datestring contained one "/"
     -- Datestring contained one "/"
     local mn = months[tonumber(date_array[1])]
     local mn = months[tonumber(date_array[2])]
     return mn .. " [[" .. attr_year .. "::" .. date_array[0] .. "]]"
     return mn .. " [[" .. attr_year .. "::" .. date_array[1] .. "]]"
     else
     else
     -- Dateformat should be YYYY/MM/DD
     -- Dateformat should be YYYY/MM/DD
     mn = months[tonumber(date_array[1])]
     local mn = months[tonumber(date_array[2])]
     date_array[2] = date_array[2]:gsub('0*', '', 1)
     date_array[3] = date_array[3]:gsub('0*', '', 1)
     return "[[" .. attr_day .. "::" .. date_array[2] .. ". " .. mn .. "]]" ..  
     return "[[" .. attr_day .. "::" .. date_array[3] .. ". " .. mn .. "]]" ..  
     " [[" .. attr_year .. "::" .. date_array[0] .. "]]"
     " [[" .. attr_year .. "::" .. date_array[1] .. "]]"
     end
     end
end
end
Zeile 47: Zeile 47:
function p.format_date(date)
function p.format_date(date)
local date_array = str.split(date, " ")
local date_array = str.split(date, " ")
if isEmpty(date_array[1]) then
if isEmpty(date_array[2]) then
     -- When datestring contained no " ", thus is year
     -- When datestring contained no " ", thus is year
     return "[[" .. date_array[0] .. "]]"
     return "[[" .. date_array[1] .. "]]"
elseif isEmpty(date_array[2]) then
elseif isEmpty(date_array[3]) then
-- When datestring contains monthname and year
-- When datestring contains monthname and year
return date_array[0] .. " [[" .. date_array[1] .. "]]"
return date_array[1] .. " [[" .. date_array[2] .. "]]"
else
else
-- When datestring contains day, monthname and year
-- When datestring contains day, monthname and year
local day = string.gsub(date_array[0], "%.", "")
local day = string.gsub(date_array[1], "%.", "")
return "[[" .. day .. ". " .. date_array[1] .. "]] " ..  
return "[[" .. day .. ". " .. date_array[2] .. "]] " ..  
"[[" .. date_array[2] .. "]]"
"[[" .. date_array[3] .. "]]"
end
end
end
end
Zeile 69: Zeile 69:
function p.human_to_form_date(date)
function p.human_to_form_date(date)
local date_array=str.split(date, " ")
local date_array=str.split(date, " ")
if isEmpty(date_array[1]) then
if isEmpty(date_array[2]) then
-- When datestring contained no " ", thus is year
-- When datestring contained no " ", thus is year
return date_array[0]
return date_array[1]
elseif isEmpty(date_array[2]) then
elseif isEmpty(date_array[3]) then
-- When datestring contains monthname and year
-- When datestring contains monthname and year
return date_array[0].." "..date_array[1]
return date_array[1].." "..date_array[1]
else
else
local day = string.gsub(date_array[0], "%.", "")
local day = string.gsub(date_array[1], "%.", "")
day = string.format("%02d", day)
day = string.format("%02d", day)
local mnr = getMonthnr(date_array[1])
local mnr = getMonthnr(date_array[2])
mnr = string.format("%02d", mnr)
mnr = string.format("%02d", mnr)
return date_array[2] .. "/" .. mnr .. "/" .. day
return date_array[2] .. "/" .. mnr .. "/" .. day
82.367

Bearbeitungen