Difference between revisions of "Module:Entity"
Jump to navigation
Jump to search
Line 31: | Line 31: | ||
− | function p. | + | function p.get2ndLevelSL ( frame ) |
− | + | currTitle = mw.title.getCurrentTitle().text | |
− | + | currEntityId = mw.wikibase.getEntityIdForTitle(currTitle) | |
− | + | currEntity = mw.wikibase.getEntity(currEntityId) | |
− | + | if currEntity ~= nil then | |
− | + | pv = currEntity:getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] | |
− | + | currEntity2 = mw.wikibase.getEntity(pv) | |
− | + | if currEntity2 ~= nil then | |
− | + | pv2 = currEntity2:getBestStatements( frame.args[2] )[1].mainsnak.datavalue.value['id'] | |
− | + | sl = mw.wikibase.getSitelink(pv2) | |
+ | if sl ~= nil then | ||
+ | return sl | ||
+ | else | ||
+ | return currEntity2:formatPropertyValues( frame.args[2] ).value | ||
+ | end | ||
+ | end | ||
+ | end | ||
end | end | ||
− | function p. | + | function p.get2ndLevelProp ( frame ) |
− | + | currTitle = mw.title.getCurrentTitle().text | |
− | + | currEntityId = mw.wikibase.getEntityIdForTitle(currTitle) | |
− | + | currEntity = mw.wikibase.getEntity(currEntityId) | |
− | + | if currEntity ~= nil then | |
− | + | pv = currEntity:getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] | |
− | + | currEntity2 = mw.wikibase.getEntity(pv) | |
− | + | if currEntity2 ~= nil then | |
− | + | pv2 = currEntity2:getBestStatements( frame.args[2] )[1].mainsnak.datavalue.value['id'] | |
− | + | if pv2 ~= nil then | |
− | + | return pv2 | |
− | + | else | |
+ | return currEntity2:formatPropertyValues( frame.args[2] ).value | ||
+ | end | ||
+ | end | ||
+ | end | ||
end | end | ||
return p | return p |
Revision as of 21:51, 16 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 ) currTitle = mw.title.getCurrentTitle().text currEntityId = mw.wikibase.getEntityIdForTitle(currTitle) currEntity = mw.wikibase.getEntity(currEntityId) if currEntity ~= nil then pv = currEntity:getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] sl = mw.wikibase.getSitelink(pv) if sl ~= nil then return sl else return currEntity:formatPropertyValues( frame.args[1] ).value end else return "" end end function p.get2ndLevelSL ( frame ) currTitle = mw.title.getCurrentTitle().text currEntityId = mw.wikibase.getEntityIdForTitle(currTitle) currEntity = mw.wikibase.getEntity(currEntityId) if currEntity ~= nil then pv = currEntity:getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] currEntity2 = mw.wikibase.getEntity(pv) if currEntity2 ~= nil then pv2 = currEntity2:getBestStatements( frame.args[2] )[1].mainsnak.datavalue.value['id'] sl = mw.wikibase.getSitelink(pv2) if sl ~= nil then return sl else return currEntity2:formatPropertyValues( frame.args[2] ).value end end end end function p.get2ndLevelProp ( frame ) currTitle = mw.title.getCurrentTitle().text currEntityId = mw.wikibase.getEntityIdForTitle(currTitle) currEntity = mw.wikibase.getEntity(currEntityId) if currEntity ~= nil then pv = currEntity:getBestStatements( frame.args[1] )[1].mainsnak.datavalue.value['id'] currEntity2 = mw.wikibase.getEntity(pv) if currEntity2 ~= nil then pv2 = currEntity2:getBestStatements( frame.args[2] )[1].mainsnak.datavalue.value['id'] if pv2 ~= nil then return pv2 else return currEntity2:formatPropertyValues( frame.args[2] ).value end end end end return p