Difference between revisions of "Module:Entity"
Jump to navigation
Jump to search
Line 21: | Line 21: | ||
else | else | ||
return mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):formatPropertyValues( frame.args[1] ).value | return mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):formatPropertyValues( frame.args[1] ).value | ||
+ | end | ||
+ | end | ||
+ | |||
+ | function p.get2ndLevelProp ( frame ) | ||
+ | -- return mw.wikibase.getEntityIdForTitle(mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):formatPropertyValues( frame.args[1] ).value) | ||
+ | pv = mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] | ||
+ | |||
+ | pv2 = mw.wikibase.getEntity(pv):getBestStatements( frame.args[2] )[1].mainsnak.datavalue.value['id'] | ||
+ | |||
+ | sl = mw.wikibase.getSitelink(pv2) | ||
+ | if sl ~= nil then | ||
+ | return sl | ||
+ | else | ||
+ | return mw.wikibase.getEntity(pv):formatPropertyValues( frame.args[2] ).value | ||
end | end | ||
end | end | ||
return p | return p |
Revision as of 19:11, 15 April 2019
Documentation for this module may be created at Module:Entity/doc
local p = {} -- p stands for package function p.get( frame ) return mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text) end function p.getUrl ( frame ) return mw.wikibase.getEntityUrl(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)) end function p.getSiteLink ( frame ) return mw.wikibase.getSitelink(mw.wikibase.getEntityIdForTitle(frame.args[0])) end function p.getProp ( frame ) -- return mw.wikibase.getEntityIdForTitle(mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):formatPropertyValues( frame.args[1] ).value) pv = mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] sl = mw.wikibase.getSitelink(pv) if sl ~= nil then return sl else return mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):formatPropertyValues( frame.args[1] ).value end end function p.get2ndLevelProp ( frame ) -- return mw.wikibase.getEntityIdForTitle(mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):formatPropertyValues( frame.args[1] ).value) pv = mw.wikibase.getEntity(mw.wikibase.getEntityIdForTitle(mw.title.getCurrentTitle().text)):getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] pv2 = mw.wikibase.getEntity(pv):getBestStatements( frame.args[2] )[1].mainsnak.datavalue.value['id'] sl = mw.wikibase.getSitelink(pv2) if sl ~= nil then return sl else return mw.wikibase.getEntity(pv):formatPropertyValues( frame.args[2] ).value end end return p