コンテンツにスキップ

このWebサイトは、管理人が個人的に書き留めている備忘録です。それ以上でもそれ以下でもありません。
誤記・誤解・誤謬を含め、記述内容の確度を一切保証しません。責任を負いません。問い合わせ等を受け付けません。
This Mediawiki is a personal memorandum written by Administrator, nothing more, nothing less.
Administrator do NOT guarantee accuracy of content, including any errors, misunderstandings, fallacies, take NO responsibility, do NOT accept inquiries anything of the sort.

モジュール:仮リンク

提供: Memorandum
2021年6月14日 (月) 09:36時点におけるWebmaster (トーク | 投稿記録)による版 (1版 をインポートしました)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

このモジュールについての説明文ページを モジュール:仮リンク/doc に作成できます

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')
	local result = ""
	local resolvedFlag = false
	
	local title = mw.title.new(args[1])
	
	if title.exists then
		if title.isRedirect then
			-- 引数1の記事がリダイレクト
			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:日本語版記事がリダイレクトの仮リンクを含む記事]]"
		else
			-- 引数1の記事がリダイレクト以外で存在している
			args['view'] = args['preserve']
			args['title'] = "リンク先の項目はまだ不十分なため、加筆や他言語版からの追加翻訳が望まれます。"
			result = mIllLink.otherLangLinkList(args)
			
			-- preserve引数付きの場合はカテゴリ分類しない
			if args['preserve'] == "" or args['preserve'] == nil then
				resolvedFlag = true
			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