モジュール:仮リンク/sandbox

これはこのページの過去の版です。YTRK (会話 | 投稿記録) による 2021年2月20日 (土) 13:52個人設定で未設定ならUTC)時点の版 (Wikipedia:井戸端/subj/Template:仮リンクに関連する提案 alt引数(candidateから名称変更)導入試行・失敗)であり、現在の版とは大きく異なる場合があります。

local p = {}

function p.ill(frame)
	local args = mw.getCurrentFrame():getParent().args
	args['viewInterwikiPageName'] = '0'
	return p.runIll(args)
end

function p.ill_vipn(frame)
	local args = mw.getCurrentFrame():getParent().args
	args['viewInterwikiPageName'] = '1'
	return p.runIll(args)
end

function p.runIll(args)
	local mIllLink = require('モジュール:仮リンク/link/sandbox')
	local result = ""
	local resolvedFlag = false
	
	local title = mw.title.new(args[1])
	
--	local main = mw.title.new(args[1])
--	if main.exists then
--		local title = mw.title.new(args[1])
--	else
--		if args['alt1'] ~= "" and args['alt1'] ~= nil then
--			local alt1 = mw.title.new(args['alt1'])
--			if alt1.exists then
--				local title = mw.title.new(args['alt1'])
--			else
--				if args['alt2'] ~= "" and args['alt2'] ~= nil then
--					local alt2 = mw.title.new(args['alt2'])
--					if alt2.exists then
--						local title = mw.title.new(args['alt2'])
--					else
--						local title = mw.title.new(args[1])
--					end
--				else
--					local title = mw.title.new(args[1])
--				end
--			end
--		else
--			local title = mw.title.new(args[1])
--		end
--	end
	
	if title.exists then
		if title.isRedirect then
			-- 引数1の記事がリダイレクト
			if args['FIXME'] ~= "" and args['FIXME'] ~= nil then
				-- FIXME引数指定
				args['view'] = 1
				args['title'] = "リンク先が誤っている可能性があります。"
				result = mIllLink.otherLangLinkList(args)
			else
				local argRedirect = args['redirect']
				if argRedirect == nil then argRedirect = "" end
				local argPreserve = args['preserve']
				if argPreserve == nil then argPreserve = "" end
				args['view'] = argRedirect .. argPreserve
				args['title'] = "リンク先の項目はリダイレクトなため、新規作成や他言語版からの翻訳が望まれます。"
				result = mIllLink.otherLangLinkList(args)
				result = result .. "[[Category:日本語版記事がリダイレクトの仮リンクを含む記事]]"
			end
		else
			-- 引数1の記事がリダイレクト以外で存在している
			if args['FIXME'] ~= "" and args['FIXME'] ~= nil then
				-- FIXME引数指定
				args['view'] = 1
				args['title'] = "リンク先が誤っている可能性があります。"
				result = mIllLink.otherLangLinkList(args)
			else
				args['view'] = args['preserve']
				args['title'] = "リンク先の項目はまだ不十分なため、加筆や他言語版からの追加翻訳が望まれます。"
				result = mIllLink.otherLangLinkList(args)
			
				-- preserve引数付きの場合はカテゴリ分類しない
				if args['preserve'] == "" or args['preserve'] == nil then
					resolvedFlag = true
				end
			end
		end
	else
		-- 引数1の記事が存在しない
		args['view'] = 1
		args['title'] = "リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。"
		result = mIllLink.otherLangLinkList(args)
	end
		
	if args['FIXME'] ~= "" and args['FIXME'] ~= nil then
		result = result .. '<span title="'
		if args['FIXME'] == "1" then
			result = result .. "このリンクは修正が必要です。"
		else
			result = result .. args['FIXME']
		end
		result = result .. '"><sup class="noprint Inline-Template nowrap">&#91;[[:Category:修正が必要な仮リンクを含む記事|要リンク修正]]&#93;</sup></span>'
		result = result .. "[[Category:修正が必要な仮リンクを含む記事]]"
	else
		if resolvedFlag then
			if mw.title.getCurrentTitle().namespace == 0 then
				result = result .. "[[Category:解消済み仮リンクを含む記事]]"
			else
				result = result .. "[[Category:解消済み仮リンクを含むページ]]"
			end
		end
	end
	
	return result
end

return p