Module:ContactManager/ConversationsNavigation: Difference between revisions

From Wikisphere
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:


local months = {
local months = {
     January = 1,
     { name = "January", value = 1 },
     February = 2,
     { name = "February", value = 2 },
     March = 3,
     { name = "March", value = 3 },
     April = 4,
     { name = "April", value = 4 },
     May = 5,
     { name = "May", value = 5 },
     June = 6,
     { name = "June", value = 6 },
     July = 7,
     { name = "July", value = 7 },
     August = 8,
     { name = "August", value = 8 },
     September = 9,
     { name = "September", value = 9 },
     October = 10,
     { name = "October", value = 10 },
     November = 11,
     { name = "November", value = 11 },
     December = 12
     { name = "December", value = 12 }
}
}


local monthRet = {}
local monthRet = {}
for key, value in pairs(months) do
for i, month in ipairs(months) do
     table.insert(monthRet, '{{#querylink:{{FULLPAGENAME}}|' .. key .. '|class=item-{{#ifeq:' .. value .. '|{{#if: {{#urlget:month}}|{{#urlget:month}}|{{CURRENTMONTH}} }}||un}}selected|month=' .. value .. '|year={{#if: {{#urlget:year}}|{{#urlget:year}}|{{CURRENTYEAR}} }}|hash={{#urldecode:{{#urlget:hash}}}}|mailbox={{#urlget:mailbox}} }}')
     table.insert(monthRet, '{{#querylink:{{FULLPAGENAME}}|' .. month.name .. '|class=item-{{#ifeq:' .. month.value .. '|{{#if: {{#urlget:month}}|{{#urlget:month}}|{{CURRENTMONTH}} }}||un}}selected|month=' .. month.value .. '|year={{#if: {{#urlget:year}}|{{#urlget:year}}|{{CURRENTYEAR}} }}|hash={{#urldecode:{{#urlget:hash}}}}|mailbox={{#urlget:mailbox}} }}')
end
end


Line 37: Line 38:
-- =p.fn({"add\ndfdd","b","c","text"})
-- =p.fn({"add\ndfdd","b","c","text"})
return p
return p

Revision as of 07:17, 28 April 2025

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

local p = {}

function p.fn(frame)
    local args = (type(frame.getParent) == "function") and frame:getParent().args or frame

local months = {
    { name = "January", value = 1 },
    { name = "February", value = 2 },
    { name = "March", value = 3 },
    { name = "April", value = 4 },
    { name = "May", value = 5 },
    { name = "June", value = 6 },
    { name = "July", value = 7 },
    { name = "August", value = 8 },
    { name = "September", value = 9 },
    { name = "October", value = 10 },
    { name = "November", value = 11 },
    { name = "December", value = 12 }
}


local monthRet = {}
for i, month in ipairs(months) do
     table.insert(monthRet, '{{#querylink:{{FULLPAGENAME}}|' .. month.name .. '|class=item-{{#ifeq:' .. month.value .. '|{{#if: {{#urlget:month}}|{{#urlget:month}}|{{CURRENTMONTH}} }}||un}}selected|month=' .. month.value .. '|year={{#if: {{#urlget:year}}|{{#urlget:year}}|{{CURRENTYEAR}} }}|hash={{#urldecode:{{#urlget:hash}}}}|mailbox={{#urlget:mailbox}} }}')
end

local ret = ''
ret = ret .. table.concat(monthRet, " | ")
ret = ret .. ' – '
ret = ret .. '{{#querylink:{{FULLPAGENAME}}|previous year|month={{#if: {{#urlget:month}}|{{#urlget:month}}|{{CURRENTMONTH}} }}|year={{#expr:{{#if: {{#urlget:year}}|{{#urlget:year}}|{{CURRENTYEAR}} }} -1}}|hash={{#urldecode:{{#urlget:hash}}}}|mailbox={{#urlget:mailbox}} }}'
ret = ret .. ' | '
ret = ret .. '{{#querylink:{{FULLPAGENAME}}|next year|month={{#if: {{#urlget:month}}|{{#urlget:month}}|{{CURRENTMONTH}} }}|year={{#expr:{{#if: {{#urlget:year}}|{{#urlget:year}}|{{CURRENTYEAR}} }} +1}}|hash={{#urldecode:{{#urlget:hash}}}}|mailbox={{#urlget:mailbox}} }}'
ret = ret .. ' | '
ret = ret .. '{{#querylink:{{FULLPAGENAME}}|show all|hash={{#urldecode:{{#urlget:hash}}}}|mailbox={{#urlget:mailbox}}|show=all|month=-1|class=item-{{#ifeq:{{#urlget:show}}|all||un}}selected}}'

     return frame:preprocess(ret)
end
-- =p.fn({"add\ndfdd","b","c","text"})
return p