Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Module:Cite book

From Wings of Fire Wiki
Revision as of 20:58, 12 January 2025 by Rusty (talk | contribs) (getparent)

Documentation for this module may be created at Module:Cite book/doc

local p = {}

function p.main(frame)
	local args = frame:getParent().args
	local result = ''
	if not args.book then
		return '{{error|<code>book</code> parameter is required}}'
	else 
		result = formatBookTitle(args.book)
	end
	if args.chapter then
		if tonumber(chapter, 10) then
			result = result .. ', chapter ' .. args.chapter
		else
			result = result .. ', ' .. args.chapter
		end
	end
	if args.page then
		result = result .. ', page ' .. args.page 
	elseif args.paragraph then
		result = result .. ', paragraph ' .. args.paragraph 
	end
	return result
end

function formatChapter(chapter)
	if tonumber(chapter, 10) then
		return 'chapter ' .. chapter
	else
		return chapter
	end
end

function formatBookTitle(title)
	local page = mw.title.new(title, 0)
	if page and page.exists then
		return '\'\'[[' .. title .. ']]\'\''
	else
		return '\'\'' .. title .. '\'\''
	end
end

return p
Cookies help us deliver our services. By using our services, you agree to our use of cookies.