Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Humanipedia
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Module:Legislationuk/test
Module
Discussion
English
Read
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
local p = {} function p.main( frame ) if frame:getParent().args[ 1 ] then args = frame:getParent().args else args = frame.args end local qid, snakShort, snakLong, snakDate, snakSession, snakCitation, snaklegGovUK local o = "" local leg = {} for _,v in pairs( args ) do qid = args[ _ ] --short title snakShort = mw.wikibase.getBestStatements( qid, 'P1813' ) leg.Short = {} for __,vv in ipairs( snakShort ) do if snakShort[ __ ].mainsnak.datavalue.value.language == "en" then leg.Short.en = snakShort[ __ ].mainsnak.datavalue.value.text elseif snakShort[ __ ].mainsnak.datavalue.value.language == "cy" then leg.Short.cy = snakShort[ __ ].mainsnak.datavalue.value.text end end --long title snakLong = mw.wikibase.getBestStatements( qid, 'P1448' ) leg.Long = {} for __,vv in ipairs( snakLong ) do if snakLong[ __ ].mainsnak.datavalue.value.language == "en" then leg.Long.en = snakLong[ __ ].mainsnak.datavalue.value.text elseif snakLong[ __ ].mainsnak.datavalue.value.language == "cy" then leg.Long.cy = snakLong[ __ ].mainsnak.datavalue.value.text end end --date snakDate = mw.ustring.sub( mw.wikibase.getBestStatements( qid, 'P7589' )[1].mainsnak.datavalue.value.time, 2, 11 ) leg.Date = os.time { day = tonumber( mw.ustring.sub( snakDate, 9, 10 ) ), month = tonumber( mw.ustring.sub( snakDate, 6, 7 ) ), year = tonumber( mw.ustring.sub( snakDate, 1, 4 ) ) } --session snakSession = mw.wikibase.getBestStatements( qid, 'P2937' ) for __,vv in ipairs( snakSession ) do leg.Session = snakSession[ __ ].mainsnak.datavalue.value.id end --citation snakCitation = mw.wikibase.getBestStatements( qid, 'P1031' ) leg.Citation = {} for __,vv in ipairs( snakCitation ) do --for each citation statement if snakCitation[ __ ].qualifiers then --if there are qualifiers if snakCitation[ __ ].qualifiers.P1001 and snakCitation[ __ ].qualifiers.P407 then --if it has jurisdiction and language local c = 0 for ___,vvvv in ipairs( snakCitation[ __ ].qualifiers.P1001 ) do --for each jurisdiction if snakCitation[ __ ].qualifiers.P1001[ ___ ].datavalue.value.id == "Q145" then c = c + 4 end --if jurisdiction is UK end for ___,vvvv in ipairs( snakCitation[ __ ].qualifiers.P407 ) do --for each language if snakCitation[ __ ].qualifiers.P1001[ ___ ].datavalue.value.id == "Q1860" then c = c + 2 --if language is English elseif snakCitation[ __ ].qualifiers.P1001[ ___ ].datavalue.value.id == "Q9309" then c = c + 1 --if langauge is Welsh end end if c == 6 then leg.Citation.en = snakCitation[ __ ].mainsnak.datavalue.value --if jurisdiction is UK and language English elseif c == 5 then leg.Citation.cy = snakCitation[ __ ].mainsnak.datavalue.value --if jurisdiction is UK and language Welsh end c = 0 elseif snakCitation[ __ ].qualifiers.P1001 then --if it has jurisdiction but not language for ___,vvvv in ipairs( snakCitation[ __ ].qualifiers.P1001 ) do --for each jurisdiction if snakCitation[ __ ].qualifiers.P1001[ ___ ].datavalue.value.id == "Q145" then leg.Citation.en = snakCitation[ __ ].mainsnak.datavalue.value end end elseif snakCitation[ __ ].qualifiers.P407 then --if it has language but not jurisdiction for ___,vvvv in ipairs( snakCitation[ __ ].qualifiers.P407 ) do --for each language if snakCitation[ __ ].qualifiers.P407[ ___ ].datavalue.value.id == "Q1860" then --if language is English leg.Citation.en = snakCitation[ __ ].mainsnak.datavalue.value elseif snakCitation[ __ ].qualifiers.P407[ ___ ].datavalue.value.id == "Q9309" then --if langauge is Welsh leg.Citation.cy = snakCitation[ __ ].mainsnak.datavalue.value end end else leg.Citation.en = snakCitation[ __ ].mainsnak.datavalue.value --if no relevant qualifiers end else leg.Citation.en = snakCitation[ __ ].mainsnak.datavalue.value --if no qualifiers end end --legislation.gov.uk ID snaklegGovUK = mw.wikibase.getBestStatements( qid, 'P3343' ) for __,vv in ipairs( snaklegGovUK ) do leg.GovUK = "https://www.legislation.gov.uk/id/" .. snaklegGovUK[ __ ].mainsnak.datavalue.value end o = o .. " " .. leg.Short.en end return o end return p
Summary:
Please note that all contributions to Humanipedia may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Humanipedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Template used on this page:
Module:Legislationuk/test/doc
(
edit
)