Модуль:Супруг или супруга
Материал из вики «Вече»
Дополнительные действия
Для документации этого модуля может быть создана страница Модуль:Супруг или супруга/doc
local p = {}
function p.getSpouseId(frame)
-- получение объекта текущего элемента Викиданных
local entity = mw.wikibase.getEntityObject()
-- проверка наличия элемента и свойства [[d:p:P26]] — указан(а) ли супруг(а)
if not entity or not entity.claims or not entity.claims.P26 then
return ""
end
-- Извлечение данных о супруге. Выбор первого значения, которое должно быть
-- единственным: когда супруг(ов) несколько, то модуль не должен быть вызван.
-- Нескольких супругов — полигамию или бывших супруг(ов) —
-- анализирует [[ш:Wikidata number switch]] внутри [[ш:Супруг или супруга]].
local spouse_claim = entity.claims.P26[1]
-- проверка типа значения
if spouse_claim.mainsnak.snaktype ~= 'value' then
return ""
end
-- получение идентификатора Q супруга и передача его для [[ш:Wikidata gender switch]]
return spouse_claim.mainsnak.datavalue.value.id
end
return p