Module:BibleQuote: Difference between revisions

Content deleted Content added
No edit summary
No edit summary
 
(28 intermediate revisions by the same user not shown)
Line 1:
 
local getArgs = require('Module:Arguments').getArgs
local p = {} --p stands for package
 
local VERSIONS_AVAILABLE = {
"NABRE",
"NVBSE",
"LUZZI",
"CEI2008",
"DRB",
"VGCL"
}
 
Line 14 ⟶ 19:
end
end
 
return false
end
 
local function makeInvokeFunc(funcName)
local p = {} --p stands for package
return function p.main( frame )
local args = getArgs(frame, {)
-- let's make sure defaults are set
if args.version == nil or args.version or== "NABRE" then
args.version = "NABRE"
})end
if args.ref == nil or args.ref == "" then
args.ref = "John 3:16"
end
if args.inline == nil or args.inline == "" or args.inline == 1 or args.inline == "1" or args.inline == "true" then
frameOnlyargs.inline = true
elseif args.inline == 0 or args.inline == "0" or args.inline == "false" then
args.inline = false
end
return p._main[funcName](args)
end
end
 
p.isValidVersion = makeInvokeFunc("_isValidVersion")
function p.main( frame )
function p._isValidVersion(args)
local args = getArgs(frame, {
if (in_table(args.version, VERSIONS_AVAILABLE)) then
--we will only consider arguments that are passed by the template itself in the invoke
return 1
frameOnly = true
else
})
return 0
-- let's make sure defaults are set
end
args.version = args.version or "NABRE"
return p._main(args)
end
 
p.main = makeInvokeFunc("_main")
function p._main( args )
if (in_table(args.version, VERSIONS_AVAILABLE)) then
if args.inline then
return "<span class=&quot;bibleQuoteRef&quot; style=&quot;color:Blue;font-weight:bold;cursor:pointer;&quot;>" .. args.ref .. "</span><div data-ref=&quot;" .. args.ref .. "&quot; data-version=&quot;" .. args.version .. "&quot; class=&quot;BibleGetQuote&quot;></div>"
return "<span class=\"bibleQuoteRef\" data-ref=\"" .. args.ref .. "\" data-version=\"" .. args.version .. "\" data-inline=\"true\">" .. args.ref .. "</span>"
else
return "<div class=\"bibleQuoteRef\" data-ref=\"" .. args.ref .. "\" data-version=\"" .. args.version .. "\" data-inline=\"false\"><div class=\"lds-spinner\"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div></div>"
end
else
return "<span class=\"bibleQuoteRefBroken\" data-ref=\"" .. args.ref .. "\" data-version=\"" .. args.version .. "\" data-inline=\"" .. (args.inline == true and "true" or "false") .. "\" title=\"The Bible version '" .. args.version .. "' is not supported by the BibleGet endpoint.\">" .. args.ref .. "</span><sup class=\"bibleQuoteRefBrokenReason\" title=\"The Bible version '" .. args.version .. "' is not supported by the BibleGet endpoint.\">[!]</sup>"
return args.version .. " is not a valid version"
end
end
 
return p