Module:CopyEmbeddedStories: Difference between revisions

From Seven Sages of Rome
No edit summary
No edit summary
 
Line 1: Line 1:
local p = {}
local p = {}


-- Function to fetch and format EmbeddedStory templates from a given page
-- Function to fetch EmbeddedStory templates from a given page
function p.fetchEmbeddedStories(frame)
function p.fetchEmbeddedStories(frame)
     local pageTitle = frame.args["sourcePage"]
     local pageTitle = frame.args["sourcePage"]
Line 20: Line 20:
     end
     end


     -- Return the extracted templates
     -- Return templates as a single concatenated string
    if #templates == 0 then
        return "No EmbeddedStory templates found on the source page."
    end
 
     return table.concat(templates, "\n")
     return table.concat(templates, "\n")
end
end


return p
return p

Latest revision as of 20:17, 13 November 2024

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

local p = {}

-- Function to fetch EmbeddedStory templates from a given page
function p.fetchEmbeddedStories(frame)
    local pageTitle = frame.args["sourcePage"]
    if not pageTitle then
        return "Error: No source page specified."
    end

    -- Get the wikitext content of the source page
    local content = mw.title.new(pageTitle):getContent()
    if not content then
        return "Error: Source page not found or empty."
    end

    -- Find all EmbeddedStory templates
    local templates = {}
    for embeddedStory in content:gmatch("{{EmbeddedStory.-}}") do
        table.insert(templates, embeddedStory)
    end

    -- Return templates as a single concatenated string
    return table.concat(templates, "\n")
end

return p