Spiderjjr45 (talk | contribs) No edit summary |
Spiderjjr45 (talk | contribs) No edit summary |
||
Line 3: | Line 3: | ||
function p.getWorldbuilderSection(frame) |
function p.getWorldbuilderSection(frame) |
||
-- Get the title of the current page |
-- Get the title of the current page |
||
local pageTitle = mw.title.getCurrentTitle(). |
local pageTitle = mw.title.getCurrentTitle().prefixedText |
||
-- |
-- Construct the Talk page URL |
||
local talkPageTitle = |
local talkPageTitle = pageTitle:gsub(" ", "_") -- Replace spaces with underscores |
||
local |
local baseWikiUrl = 'https://quelmarwiki.com/wiki/' |
||
local |
local talkPageUrl = baseWikiUrl .. 'Talk:' .. talkPageTitle |
||
-- |
-- Construct the edit URL for adding the Worldbuilder section |
||
local editSectionUrl = talkPageUrl .. '?action=edit§ion=new&preloadtitle=Worldbuilders&preload=Template:WorldbuilderPreload' |
|||
local addSectionParams = { |
|||
action = 'edit', |
|||
section = 'new', |
|||
preloadtitle = 'Worldbuilders', |
|||
preload = 'Template:WorldbuilderPreload' -- Assuming you have a template for preload content |
|||
} |
|||
local addSectionUrl = mw.uri.fullUrl(talkPageTitle, addSectionParams).full |
|||
-- Link text |
-- Link text |
||
local addLinkText = 'Add worldbuilding credits now!' |
local addLinkText = 'Add worldbuilding credits now!' |
||
-- Fetch the content of the Talk page |
|||
local talkPage = mw.title.new('Talk:' .. pageTitle) |
|||
local talkContent = talkPage and talkPage:getContent() or nil |
|||
-- Check if the Talk page exists and has content |
-- Check if the Talk page exists and has content |
||
if not talkContent then |
if not talkContent or talkContent == '' then |
||
return '[' .. |
return '[' .. editSectionUrl .. ' ' .. addLinkText .. ']' |
||
end |
end |
||
Line 33: | Line 31: | ||
-- Check if the Worldbuilder section exists |
-- Check if the Worldbuilder section exists |
||
if not worldbuilderSection then |
if not worldbuilderSection then |
||
return '[' .. |
return '[' .. editSectionUrl .. ' ' .. addLinkText .. ']' |
||
end |
end |
||
Revision as of 01:46, 10 January 2024
Documentation for this module may be created at Module:Worldbuilders/doc
local p = {} function p.getWorldbuilderSection(frame) -- Get the title of the current page local pageTitle = mw.title.getCurrentTitle().prefixedText -- Construct the Talk page URL local talkPageTitle = pageTitle:gsub(" ", "_") -- Replace spaces with underscores local baseWikiUrl = 'https://quelmarwiki.com/wiki/' local talkPageUrl = baseWikiUrl .. 'Talk:' .. talkPageTitle -- Construct the edit URL for adding the Worldbuilder section local editSectionUrl = talkPageUrl .. '?action=edit§ion=new&preloadtitle=Worldbuilders&preload=Template:WorldbuilderPreload' -- Link text local addLinkText = 'Add worldbuilding credits now!' -- Fetch the content of the Talk page local talkPage = mw.title.new('Talk:' .. pageTitle) local talkContent = talkPage and talkPage:getContent() or nil -- Check if the Talk page exists and has content if not talkContent or talkContent == '' then return '[' .. editSectionUrl .. ' ' .. addLinkText .. ']' end -- Extract the Worldbuilder section local sectionPattern = '==%s*Worldbuilders%s*==(.*)' local worldbuilderSection = talkContent:match(sectionPattern) -- Check if the Worldbuilder section exists if not worldbuilderSection then return '[' .. editSectionUrl .. ' ' .. addLinkText .. ']' end -- Return the Worldbuilder section content return worldbuilderSection end return p