More languages
More actions
m (adding parser function example for later testing) |
m (Testing dpl) |
||
Line 3: | Line 3: | ||
function is_lib_work(s) | function is_lib_work(s) | ||
return mw.getCurrentFrame():callParserFunction('#ifexist',"Library:" .. s,true) == "1" | return mw.getCurrentFrame():callParserFunction('#ifexist',"Library:" .. s,true) == "1" | ||
end | |||
function listOfWorks(author) | |||
local list = mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","titleregexp=" ..author .. "/[^/]+$","format=,%PAGE%\\n") | |||
if list == "" then | |||
list = mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","category=Library works by " .. author ,"format=,%PAGE%\\n") | |||
end | |||
return list | |||
end | end | ||
Line 12: | Line 20: | ||
local author = parentFrame.args.author | local author = parentFrame.args.author | ||
-- error("error message") to send error messages | -- error("error message") to send error messages | ||
-- mw.log(mw.getCurrentFrame():callParserFunction( | -- mw.log(mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","titleregexp=Vladimir Lenin/[^/]+$","format=,%PAGE%\\n")) | ||
-- mw.log(mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","category=Library works by Vladimir Lenin","format=,%PAGE%\\n")) | |||
return listOfWorks(author) | |||
end | end | ||
return p | return p |
Revision as of 00:33, 7 October 2024
local p = {}
function is_lib_work(s)
return mw.getCurrentFrame():callParserFunction('#ifexist',"Library:" .. s,true) == "1"
end
function listOfWorks(author)
local list = mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","titleregexp=" ..author .. "/[^/]+$","format=,%PAGE%\\n")
if list == "" then
list = mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","category=Library works by " .. author ,"format=,%PAGE%\\n")
end
return list
end
function p.cite(frame)
-- Parent frame to get parameters from template calls instead of from {{#invoke: ...
local parentFrame = frame:getParent()
-- get arguments from "args" table pre-defined by MediaWiki/Scribunto
local link = parentFrame.args.link
local author = parentFrame.args.author
-- error("error message") to send error messages
-- mw.log(mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","titleregexp=Vladimir Lenin/[^/]+$","format=,%PAGE%\\n"))
-- mw.log(mw.getCurrentFrame():callParserFunction("#dpl","namespace=Library","category=Library works by Vladimir Lenin","format=,%PAGE%\\n"))
return listOfWorks(author)
end
return p