Redigerer
Modul:WikidataBilde/sandkasse
Hopp til navigering
Hopp til søk
Advarsel:
Du er ikke innlogget. IP-adressen din vil bli vist offentlig om du redigerer. Hvis du
logger inn
eller
oppretter en konto
vil redigeringene dine tilskrives brukernavnet ditt, og du vil få flere andre fordeler.
Antispamsjekk.
Ikke
fyll inn dette feltet!
local p = {} function dump( out ) if type( out ) == 'table' then local s = '{ ' for k,v in pairs( out ) do if type( k ) ~= 'number' then k = '"'..k..'"' end s = s .. '['..k..'] = ' .. dump( v ) .. ',' end return s .. '} ' else return tostring( out ) end end local kategori = {[5] = "biografi" } local resten = "[[Kategori:Artikler hvor bilde er hentet fra Wikidata]]" function finnKategori(frame) if not mw.wikibase then return resten end local artikkel = mw.wikibase.getEntityObject() if not artikkel then return resten end local claims = artikkel:getBestStatements( 'P31' ) if not claims then return resten end for _,v in ipairs( claims ) do if v.type == 'statement' then local snak = v.mainsnak if snak.snaktype == 'value' then if snak.datatype == 'wikibase-item' then local data = snak.datavalue if data.type == 'wikibase-entityid' then local value = data.value if value["entity-type"] == "item" then if kategori[value["numeric-id"]] then return "[[Kategori:Artikler hvor bilde er hentet fra Wikidata - " .. kategori[value["numeric-id"]] .. "]]" end end end end end end end -- failed to find correct type return resten end -- Return bilde til artikkelen function p.wikidatabilde(frame) if not mw.wikibase then return "" end local artikkel = mw.wikibase.getEntityObject() if not artikkel then return "" end local claims = artikkel:getBestStatements( 'P18' ) if not claims then return "" end for _,v in ipairs( claims ) do if v.type == 'statement' then local snak = v.mainsnak if snak.snaktype == 'value' then if snak.datatype == 'commonsMedia' then local data = snak.datavalue if data.type == 'string' then return data.value end end end end end -- failed to find correct type return "" end function p.framebilde(frame) local args = frame.args if args[1] == nil then local pFrame = frame:getParent(); args = pFrame.args; for k,v in pairs( frame.args ) do args[k] = v; end end if args['bilde'] then return args['bilde'] end return "" end function p.framekart(frame) local args = frame.args if args[1] == nil then local pFrame = frame:getParent(); args = pFrame.args; for k,v in pairs( frame.args ) do args[k] = v; end end if args['kart'] then return args['kart'] end return "" end function p.velgbilde(frame) local bilde = p.framebilde(frame) if bilde then if bilde == "" then -- return "" elseif bilde == "uten" then return "" else return bilde end else return "" end local frawikidata = p.wikidatabilde(frame) local framekart = p.framekart(frame) if framekart == frawikidata then return "" end return frawikidata end function p.bildetekst(frame) if not mw.wikibase then return '' end local artikkel = mw.wikibase.getEntityObject() if not artikkel then return '' end local claims = artikkel:getBestStatements( 'P18' ) if not claims then return '' end for _,v in ipairs( claims ) do if v.type == 'statement' then local snak = v.mainsnak if snak.snaktype == 'value' then if snak.datatype == 'commonsMedia' then local data = snak.datavalue if data.type == 'string' then local q = v.qualifiers if q then wdcaptions = q['P2096'] end if wdcaptions then for k, l in pairs(wdcaptions) do if l.datavalue.value and l.datavalue.value.text and l.datavalue.value.language == 'nb' then return l.datavalue.value.text end end end end end end end end -- failed to find correct type return '' end function p.finnesbildeiartikkel(frame) local innhold = mw.title.getCurrentTitle():getContent() or '' local frawikidata = p.wikidatabilde(frame) if innhold:find(frawikidata) or innhold:find(frawikidata:gsub(" ", "_")) then return "[[Kategori:Artikler hvor bilde fra Wikidata også brukes utenfor infoboks]]" else return "" end end function p.sammenlignbilde(frame) local fraframe = p.framebilde(frame) local frawikidata = p.wikidatabilde(frame) if fraframe == frawikidata then if fraframe == "" then return "" else return "[[Kategori:Artikler hvor bilde er samme som på Wikidata]]" end else if frawikidata == "" then return "[[Kategori:Artikler hvor bilde mangler på Wikidata]]" end if fraframe == "" then return "[[Kategori:Artikler uten bilde i infoboks med bilde på Wikidata]]" end return "[[Kategori:Artikler med bilde forskjellig fra Wikidata]]" end end function p.sammenlignMedWikidataValgtBilde(frame) local fraframe = p.framebilde(frame) local frawikidata = p.wikidatabilde(frame) local framekart = p.framekart(frame) local finnesbildeiartikkel = p.finnesbildeiartikkel(frame) if fraframe == frawikidata then if fraframe == "" then return "" else return end else if frawikidata == "" then return "[[Kategori:Artikler hvor bilde mangler på Wikidata]]" end if framekart == frawikidata then return "[[Kategori:Artikler hvor kart er samme som bilde på Wikidata]]" end if fraframe == "" then return finnKategori(frame) .. finnesbildeiartikkel end return "[[Kategori:Artikler med bilde forskjellig fra Wikidata]]" end end return p
Redigeringsforklaring:
Merk at alle bidrag til Wikisida.no anses som frigitt under Creative Commons Navngivelse-DelPåSammeVilkår (se
Wikisida.no:Opphavsrett
for detaljer). Om du ikke vil at ditt materiale skal kunne redigeres og distribueres fritt må du ikke lagre det her.
Du lover oss også at du har skrevet teksten selv, eller kopiert den fra en kilde i offentlig eie eller en annen fri ressurs.
Ikke lagre opphavsrettsbeskyttet materiale uten tillatelse!
Avbryt
Redigeringshjelp
(åpnes i et nytt vindu)
Forhåndsvis en side som bruker denne malen
Mal som brukes på denne siden:
Modul:WikidataBilde/sandkasse/dok
(
rediger
)
Navigasjonsmeny
Personlige verktøy
Ikke logget inn
Brukerdiskusjon
Bidrag
Opprett konto
Logg inn
Navnerom
Modul
Diskusjon
English
Visninger
Les
Rediger kilde
Vis historikk
Mer
Navigasjon
Forside
Siste endringer
Tilfeldig side
Hjelp til MediaWiki
Verktøy
Lenker hit
Relaterte endringer
Spesialsider
Sideinformasjon