Module:New pages: Difference between revisions
From Eli's Software Encyclopedia
mNo edit summary |
mNo edit summary |
||
| Line 25: | Line 25: | ||
ruser = page.user | ruser = page.user | ||
local year, month, day, hour, minute, second = rdate:match("^(%d+)-(%d+)-(%d+) | local year, month, day, hour, minute, second = rdate:match("^(%d+)-(%d+)-(%d+) (%d+):(%d+):(%d+)") | ||
if year and month and day and hour and minute then | if year and month and day and hour and minute then | ||
rdate = string.format('%s-%s-%s %s:%s', year, month, day, hour, minute) | rdate = string.format('%s-%s-%s %s:%s', year, month, day, hour, minute) | ||
| Line 39: | Line 39: | ||
return html | return html | ||
end | |||
function p.test() | |||
local data = mw.smw.ask { | |||
'[[:+]][[Creation date::+]]', | |||
'mainlabel=-', | |||
'?Creation date#-F[Y-m-d H:i:s]=timestamp', | |||
'?#-=title', | |||
'?Page creator#-=user', | |||
'sort=Creation date', | |||
'order=desc', | |||
'limit=20' | |||
} or {} | |||
return data | |||
end | end | ||
return p | return p | ||
Revision as of 11:45, December 10, 2025
Documentation for this module may be created at Module:New pages/doc
local p = {}
function p.main()
local data = mw.smw.ask {
'[[:+]][[Creation date::+]]',
'mainlabel=-',
'?Creation date#-F[Y-m-dTH:i:s]=timestamp',
'?#-=title',
'?Page creator#-=user',
'sort=Creation date',
'order=desc',
'limit=20'
} or {}
local rtitle, rdate, ruser, rrow
local html = mw.html.create()
local ul = html:tag('ul')
for _, page in ipairs(data) do
rtitle = page.title
rdate = page.timestamp
ruser = page.user
local year, month, day, hour, minute, second = rdate:match("^(%d+)-(%d+)-(%d+) (%d+):(%d+):(%d+)")
if year and month and day and hour and minute then
rdate = string.format('%s-%s-%s %s:%s', year, month, day, hour, minute)
else
rdate = 'Invalid Timestamp' -- Handle invalid timestamps
end
rrow = string.format('%s - [[%s]] by [[User:%s|%s]]', rdate, rtitle, ruser, ruser )
ul:tag('li'):wikitext(rrow)
end
return html
end
function p.test()
local data = mw.smw.ask {
'[[:+]][[Creation date::+]]',
'mainlabel=-',
'?Creation date#-F[Y-m-d H:i:s]=timestamp',
'?#-=title',
'?Page creator#-=user',
'sort=Creation date',
'order=desc',
'limit=20'
} or {}
return data
end
return p
