Module:ContactManager/ConversationsNavigation
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