コンテンツにスキップ

モジュール:TypeToColor

提供:ウィキボヤージュ
モジュールの解説[表示] [編集] [履歴] [キャッシュを破棄]

このモジュールは、{{listing}}テンプレートで識別される目的地の種類によってCSSの6桁の色コードを返すモジュールです。通常はテンプレート:TypeToColorを使用してください。

Listingが{{vCard}}に置き換えられたことにより、typeとgroup、そしてmap-groupという新しい概念が使用されるようになり、おそらくこのテンプレートは古いです。これらのラベルや色、さらには地図に表示するshowAllなどはモジュール:Marker utilities/Groupsで取得することが出来ます。

使い方

入力 出力 情報
{{#invoke:TypeToColor|convert|sleep}} #000080 type to color
{{#invoke:TypeToColor|convert|red}} #FF0000 color to color
{{#invoke:TypeToColor|convert|wrong}} #C0C0C0 wrong to default
{{#invoke:TypeToColor|convert|}} #C0C0C0 no to default

なお、マップ上にピンを指したい場合は{{marker}}を使用してください。

技術情報

type カラーコード
{{see}} #4682B4 0
{{do}} #808080 0
{{buy}} #008080 0
{{eat}} #D2691E 0
{{drink}} #000000 0
{{sleep}} #000080 0
{{listing}} #228B22 0
city #0000FF 0
go #A52A2A 0
other #228B22 0
view #4169E1 0
vicinity #800000 0
around #800080 0

一部英語版より

local p = {}

function p.convert( frame )
	return p.convertImpl(frame.args[1])
end

function p.convertImpl(type)
	type = type:lower()
	local types = {
		['do'] = '808080',
		around = '800080',
		buy = '008080',
		city = '0000FF',
		drink = '000000',
		eat = 'D2691E',
		go = 'A52A2A',
		listing = '228B22',
		other = '228B22',
		see = '4682B4',
		sleep = '000080',
		vicinity = '800000',
		view = '4169E1',

		launchsite = 'FF8C00',
	}

	local result = types[type]
	if result then
		return result
	end
	
	-- Deprecated usage - trace it
	types = {
		black = '000000',
		blue = '0000FF',
		brown = 'A52A2A',
		chocolate = 'D2691E',
		forestgreen = '228B22',
		gold = 'FFD700',
		gray = '808080',
		grey = '808080',
		lime = 'BFFF00',
		magenta = 'FF00FF',
		maroon = '800000',
		mediumaquamarine = '66CDAA',
		navy = '000080',
		orange = 'FFA500',
		plum = 'DDA0DD',
		purple = '800080',
		red = 'FF0000',
		royalblue = '4169E1',
		silver = 'C0C0C0',
		steelblue = '4682B4',
		teal = '008080',
	}

	local result = types[type]
	if result then
		return result --  .. '[[カテゴリ:Fixme TypeToColor]]'
	end

	return 'C0C0C0' -- .. '[[カテゴリ:Fixme TypeToColor Unknown]]'
end

return p