Μετάβαση στο περιεχόμενο

Module:Wikidata/Formatters/string

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Αυτή είναι η τρέχουσα έκδοση της σελίδας Module:Wikidata/Formatters/string, όπως διαμορφώθηκε από τον Uzume (συζήτηση | συνεισφορές) στις 01:44, 22 Νοεμβρίου 2024. Αυτό το URL είναι ένας μόνιμος σύνδεσμος για αυτή την έκδοση της σελίδας.
(διαφ.) ← Παλαιότερη έκδοση | Βλέπε τελευταία έκδοση (διαφ.) | Νεότερη έκδοση → (διαφ.)
--require "strict"

local p = {}

local lib = require 'Module:Wikidata/lib'

local function findPattern(property)
	local Statements = mw.wikibase.getBestStatements(property:upper(), 'P1630')
	for _, statement in ipairs(Statements) do
		if lib.IsSnakValue(statement.mainsnak) then
			return statement.mainsnak.datavalue.value
		end
	end
	return nil
end

function p.getRawValue(value, options)
	return value
end

function p.formatValue(value, options)
	if options.pattern then
		return lib.formatFromPattern(value, options.pattern)
	elseif lib.IsOptionTrue(options, 'autoformat') then
		local pattern = findPattern(options.property)
		if pattern then
			return lib.formatFromPattern(value, mw.ustring.format('[%s %s]', pattern, options.text or '$1'))
		end
	end
	return value
end

p.formatRawValue = p.formatValue

return p