Module:SD

Revision as of 07:24, 10 December 2024 by Pavel Malakhov (addition | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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

local sd = {} -- functions package for “Secret Doctrine” by H.P. Blavatsky

local function isempty(s)
  return s == nil or s == ''
end

-- Return pdf page number in The Secret Doctrin, which coresponds to book page
-- Example for vol.1: xxx → 30; 100 → 53
-- Call example: {{#invoke: SD | pdf_page | volume=1 | page=17}}
-- Values:
-- vol. 1, pages: i-xlvii, 1-676
-- vol. 2, pages: i-xvi, 1-798
-- vol. 3, pages: i-xx, 1-594
function sd.pdf_page( frame )
	local volume = tonumber( frame.args['volume'] ) or 1
	local page = tonumber( frame.args['page'] ) or 1 
	local p_pdf = 1

	--mw.log('vol= '.. volume .. ', page= ' .. page)
	if volume == 1 then
		p_pdf = 47 + page
	else 
		if volume == 2 then
			p_pdf = 16 + page
		else 
			p_pdf = 20 + page
		end
	end

	return p_pdf
end

return sd