Модуль:Wikidata/media
Уҡыу көйләүҙәре
Для документации этого модуля может быть создана страницаМодуль:Wikidata/media/doc
localp={}
functionp.formatCommonsCategory(context,options,value)
locallink='commons:Category:'..value
localtitle=value..' Викимилектә'
if(options['text']andoptions['text']~='')then
title=options['text']
end
commons='[['..link..'|'..title..']]'
--Commons icon
if(notoptions['icon']oroptions['icon']~='-')then
localicon_size='15px'
if(options['icon_size']andoptions['icon_size']~='')then
icon_size=options['icon_size']
end
commons='[[File:Commons-logo.svg|'..icon_size..'|link='..link..']] '..commons
end
--Text before and after link
if(options['text_before']andoptions['text_before']~='')then
if(options['text_before']~='-')then
commons=options['text_before']..' '..commons
end
end
if(options['text_after']andoptions['text_after']~='')then
if(options['text_after']~='-')then
commons=commons..' '..options['text_after']
end
end
returncommons
end
functionp.formatImage(context,options,value)
localimage='[[File:'..value
ifoptions['border']andoptions['border']~=''then
image=image..'|border'
end
ifoptions['size']andoptions['size']~=''then
image=image..'|'..options['size']
end
ifoptions['alt']andoptions['alt']~=''then
image=image..'|'..options['alt']
end
image=image..']]'
returnimage
end
--[[
Функция для оформления одного утверждения (statement) для изображения
Принимает: объект-таблицу утверждение, таблицу параметров,
объект-функцию оформления внутренних структур утверждения (snak) и
объект-функцию оформления ссылки на источники (reference)
Возвращает: строку оформленного текста с заявлением (claim)
]]
functionp.formatImageClaim(context,options,statement)
localsnak=statement.mainsnak
localhash=''
localmainSnakClass=''
if(snak.hash)then
hash=' data-wikidata-hash= "'..snak.hash..' "'
else
mainSnakClass=' wikidata-main-snak';
end
localbefore='<span class= "wikidata-snak '..mainSnakClass..' "'..hash..'>'
localafter='</span>'
ifsnak.snaktype~='value'then
return''
end
--Image legend
locallegend=''
if(statement.qualifiersandstatement.qualifiers.P2096)then
locallangCode=mw.language.getContentLanguage():getCode()
mw.logObject(statement.qualifiers.P2096)
mw.logObject(langCode)
fork,qualifierinpairs(statement.qualifiers.P2096)do
ifqualifier.snaktype=='value'
andqualifier.datavalue.value.language==langCode
then
legend='<br>'..qualifier.datavalue.value.text
break
end
end
end
returnp.formatImage(context,options,snak.datavalue.value)..legend
end
returnp