Naar inhoud springen

Sjabloon:Coord2

Uit Wikipedia, de vrije encyclopedie
Mee bezig
Mee bezig
Aan dit sjabloon wordt de komende uren of dagen nog druk gewerkt.
Klik op geschiedenis voor de laatste ontwikkelingen.

Voor het testen van:
- ombouwen van de serie coördinaten in infoboxen (deze kunnen namelijk van wikidata worden gehaald, dan hoef je bij veel artikelen niks meer in te vullen)
- het switchen van meerdere positiekaarten over elkaar (eventuele 2e fase, vermoedelijk is hier meer voor nodig, module:switch en Module:Positiekaart/multi)
Is naar analogie van de Engelse wiki Module:Positiekaart aangemaakt. Op basis van Module:Positiekaart/data/landnaam kan daarmee worden getest. De module maakt echter gebruik van sjabloon:coord die uitgezet is op de Nederlandse wiki.

Om te kunnen testen wordt geprobeerd dit mogelijk te maken door een tijdelijk sjabloon:coord2 aan te maken, die module:coordinaten aanroept. Zonder dit sjabloon werkt het momenteel nog niet.

Betreft in Module:Positiekaart:

-- Onderstaande zoekt een parameter in een gebruikt sjabloon {{Coord}}.
local function coord2text(para,coord) -- deze zou moeten worden gewijzigd voor talen die geen Arabische cijfers of het gradenteken gebruiken
	local lat, long = mw.ustring.match(coord,'<span class="p%-latitude latitude">([^<]+)</span><span class="p%-longitude longitude">([^<]+)</span>')
	if lat then
		return tonumber(para == 'longitude' and long or lat)
	end
	local result = mw.text.split(mw.ustring.match(coord,'%-?[%.%d]+°[NS] %-?[%.%d]+°[EW]') or '', '[ °]')
	if para == 'longitude' then result = {result[3], result[4]} end
	if not tonumber(result[1]) or not result[2] then
		mw.log('Malformed coordinates value')
		mw.logObject(para, 'para')
		mw.logObject(coord, 'coord')
		return error('Malformed coordinates value', 2)
	end
	return tonumber(result[1]) * hemisphereMultipliers[para][result[2]]
end

Coord wordt hiervoor omgezet in coord2.

Mocht dit niks opleveren, dan kan na een maand dit sjabloon weg en moeten we kijken hoe we dit anders kunnen regelen.