Модуль:Wikidata/DateTemplates

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
{{i}} Документація модуля[створити]
local M = {}
 
local wdUtils = require('Module:Wikidata')
local dateUtils = require('Module:Datetime')
 
function M.birthday(frame)
	local property = 'p569'
	local args = frame.args
	local forceJulian = args.forceJulian or false
	local categories = args.categories or false
	local wikidataDate = wdUtils.getDate(property)
	local result = dateUtils.TimeToString(wikidataDate, 'посилання', forceJulian or (wikidataDate.calendar == 'julian'))
	if categories then
		if wikidataDate.day and wikidataDate.month then
			result = result..'[[Категорія:Народились '..wikidataDate.day..' '..dateUtils.MonthGenetiveCase(wikidataDate.month)..']]'
		end
		if wikidataDate.year then
			result = result..'[[Категорія:Народились '..wikidataDate.year..']]'
		elseif wikidataDate.century then
			result = result..'[[Категорія:Народились у '..dateUtils.CenturyLocativeCase(wikidataDate.century)..']]'
		end
	end

	return result
end

function M.deathday(frame)
	local property = 'p570'
	local args = frame.args
	local forceJulian = args.forceJulian or false
	local categories = args.categories or false
	local wikidataDate = wdUtils.getDate(property)
	local result = dateUtils.GregDateToString(wikidataDate, 'посилання', forceJulian or (wikidataDate.calendar == 'julian'))
	if categories then
		if wikidataDate.day and wikidataDate.month then
			result = result..'[[Категорія:Померли '..wikidataDate.day..' '..dateUtils.MonthGenetiveCase(wikidataDate.month)..']]'
		end
		if wikidataDate.year then
			result = result..'[[Категорія:Померли '..wikidataDate.year..']]'
		elseif wikidataDate.century then
			result = result..'[[Категорія:Померли у '..dateUtils.CenturyLocativeCase(wikidataDate.century)..']]'
		end
	end

	return result
end
 
return M