Амодуль:Wikidata/Formatters/globecoordinate

Аматериал Авикипедиа аҟынтә - зхы иақәиҭу аенциклопедиа

require 'Амодуль:No globals'

local p = {}

local lib = require 'Амодуль:Wikidata/lib'

function p.getRawValue(value, options)
	if not options.field then
		local GlobeCoordinate = require 'Амодуль:GlobeCoordinate'
		return GlobeCoordinate.newFromWikidataValue(value)
	elseif options.field == 'latitude' or options.field == 'longitude' or options.field == 'precision' or options.field == 'globe' then
		return value[options.field]
	else
		return error(lib.formatError('invalid-field', options.field))
	end
end

function p.formatValue(value, options)
	--local GlobeCoordinate = require 'Амодуль:GlobeCoordinate'
	--local _value = GlobeCoordinate.newFromWikidataValue(value)
	local Coord = require 'Амодуль:Coordinates'
	local args = {
		value.latitude,
		value.longitude,
	}
	local globe = lib.getItemIdFromURI(value.globe)
	if globe and globe ~= 'Q2' then
		args.globe = Coord.myGlobes[globe]
	end
	setmetatable(args, { __index = options })
	return Coord._renderCoordinates(args, mw.getCurrentFrame())
end

return p