×
Create a new article
Write your page title here:
We currently have 1,662 articles on The Quelmar Wiki. Type your article name above or click on one of the titles below and start writing!



The Quelmar Wiki

Module:Worldbuilders: Difference between revisions

(Created page with "local p = {} -- Function to fetch and return the Worldbuilder section local function getWorldbuilderSection() local pageTitle = mw.title.getCurrentTitle().text local talkPageTitle = 'Talk:' .. pageTitle local talkPage = mw.title.new(talkPageTitle) local talkContent = talkPage:getContent() if not talkContent then return '' end local sectionPattern = '==%s*Worldbuilder%s*==(.*)' local worldbuilderSection = talkContent:match(sectio...")
 
No edit summary
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
local p = {}
local p = {}


-- Function to fetch and return the Worldbuilder section
function p.getWorldbuilderSection(frame)
local function getWorldbuilderSection()
     -- Get the title of the current page
     local pageTitle = mw.title.getCurrentTitle().text
     local pageTitle = mw.title.getCurrentTitle().prefixedText
     local talkPageTitle = 'Talk:' .. pageTitle
    local talkPage = mw.title.new(talkPageTitle)
    local talkContent = talkPage:getContent()


     if not talkContent then
    -- Construct the Talk page URL
         return ''
    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&section=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
     end


     local sectionPattern = '==%s*Worldbuilder%s*==(.*)'
    -- Extract the Worldbuilder section
     local sectionPattern = '==%s*Worldbuilders%s*==(.*)'
     local worldbuilderSection = talkContent:match(sectionPattern)
     local worldbuilderSection = talkContent:match(sectionPattern)


    -- Check if the Worldbuilder section exists
     if not worldbuilderSection then
     if not worldbuilderSection then
         return ''
         return '[' .. editSectionUrl .. ' ' .. addLinkText .. ']'
     end
     end


     return worldbuilderSection
    -- Create the internal wiki link for "Worldbuilders" using the fullText of the talkPage
    local worldbuildersLink = '[[' .. talkPage.fullText .. '|Worldbuilders]]'
 
    -- Prepend "Worldbuilders" link to the section content
     return worldbuildersLink .. ':\n' .. worldbuilderSection
end
end
-- Automatically execute the function when the module is invoked
p = getWorldbuilderSection()


return p
return p

Latest revision as of 02:54, 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&section=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

    -- Create the internal wiki link for "Worldbuilders" using the fullText of the talkPage
    local worldbuildersLink = '[[' .. talkPage.fullText .. '|Worldbuilders]]'

    -- Prepend "Worldbuilders" link to the section content
    return worldbuildersLink .. ':\n' .. worldbuilderSection
end

return p
Cookies help us deliver our services. By using our services, you agree to our use of cookies. (Hi Margarita's Table. 🇩🇪)
Cookies help us deliver our services. By using our services, you agree to our use of cookies. (Hi Margarita's Table. 🇩🇪)