మాడ్యూల్:Wikidata: కూర్పుల మధ్య తేడాలు
Content deleted Content added
This is no longer true |
Prune duplication in date-parsing code |
||
పంక్తి 112:
return '<span class="error">' .. (i18n.errors[code] or code) .. '</span>'
end
local function parseDateFormat(f, timestamp, addon, prefix_addon)
end▼
end▼
local function parseDateValue(timestamp, date_format, date_addon)
local prefix_addon = i18n["datetime"]["prefix-addon"]
Line 122 ⟶ 146:
timestamp = '+' .. string.sub(timestamp, 2)
addon = date_addon
▲ end
▲ local year_suffix
▲ local tstr = ""
▲ local lang_obj = mw.language.new(wiki.langcode)
▲ local f_parts = mw.text.split(f, 'Y', true)
▲ for idx, f_part in pairs(f_parts) do
▲ year_suffix = ''
▲ if string.match(f_part, "x[mijkot]$") then
▲ -- for non-Gregorian year
▲ f_part = f_part .. 'Y'
▲ elseif idx < #f_parts then
▲ -- supress leading zeros in year
▲ year_suffix = lang_obj:formatDate('Y', timestamp)
▲ year_suffix = string.gsub(year_suffix, '^0+', '', 1)
▲ tstr = tstr .. lang_obj:formatDate(f_part, timestamp) .. year_suffix
▲ end
▲ if addon ~= "" and prefix_addon then
▲ return addon .. addon_sep .. tstr
▲ elseif addon ~= "" then
▲ return tstr .. addon_sep .. addon
▲ else
▲ return tstr
▲ end
end
local _date_format = i18n["datetime"]["format"][date_format]
if _date_format ~= nil then
return
else
return printError("unknown-datetime-format")
Line 218 ⟶ 217:
_date_format = i18n["datetime"][9]
end
return parseDateFormat(_date_format, timestamp, addon, prefix_addon)
▲ end
else
return printError("unknown-datetime-format")
|