6,571
个编辑
小无编辑摘要 |
小 (update) |
||
第75行: | 第75行: | ||
local t_time = time_diff(n_long_time,n_short_time); | local t_time = time_diff(n_long_time,n_short_time); | ||
local time_txt = string.format("%02d", t_time.month).."月"..string.format("%02d", t_time.day).."日 "..string.format("%02d", t_time.hour)..":"..string.format("%02d", t_time.min)..":"..string.format("%02d", t_time.sec); | local time_txt = string.format("%02d", t_time.month).."月"..string.format("%02d", t_time.day).."日 "..string.format("%02d", t_time.hour).. | ||
":"..string.format("%02d", t_time.min)..":"..string.format("%02d", t_time.sec); | |||
第99行: | 第100行: | ||
function close(text,timestyle) | function close(text,timestyle) | ||
--mcwiki | |||
local yes=string.match(text, "closed%-topic%-yes") | local yes=string.match(text, "closed%-topic%-yes") | ||
local no=string.match(text, "closed%-topic%-no") | local no=string.match(text, "closed%-topic%-no") | ||
--arcaeawiki | |||
local closed=string.match(text, "以下讨论已结束") | |||
if yes then return [[background-color: #efe;]] end | if yes then return [[background-color: #efe;]] end | ||
if no then return [[background-color: #fee;]] end | if no then return [[background-color: #fee;]] end | ||
if closed then return [[background-color: #8779DD;]] end | |||
return timestyle | return timestyle | ||
end | end | ||
第179行: | 第184行: | ||
--输入讨论的文本,输出和User有关的转换部分table | --输入讨论的文本,输出和User有关的转换部分table | ||
--1-4分别为发言条数,发言人数,发起人,最后发言的人。 | --1-4分别为发言条数,发言人数,发起人,最后发言的人。 | ||
text=string.gsub(text, "Special: | text=string.gsub(text, "Special:User 贡献/", "User:ip:") | ||
--别问为什么是User贡献,问就是神奇代码 | |||
local match=string.gmatch (text,"User:([^\n]-)%|[^\n]-CST") | local match=string.gmatch (text,"User:([^\n]-)%|[^\n]-CST") | ||
local userlist={} | local userlist={} | ||
第201行: | 第207行: | ||
function get_table(talktitle,talktext) | function get_table(talktitle,talktext) | ||
local result=[[<table class="wikitable sortable mw-collapsible" style="text-align:center"><tr><th>#</td><th>话题</td><th>发言</td><th>参与</td><th>发起者</td><th>最近发言</td><th>最后发言时间(CST)</td></tr>]] | local result=[[<table class="wikitable sortable mw-collapsible" style="text-align:center"><tr><th>#</td><th>话题</td><th>发言</td> | ||
<th>参与</td><th>发起者</td><th>最近发言</td><th>最后发言时间(CST)</td></tr>]] | |||
local tableend=[[</table>]] | local tableend=[[</table>]] | ||
local part="" | local part="" | ||
第210行: | 第217行: | ||
do | do | ||
time,userinf=talk_time(talktext[i]),user_manage(talktext[i]) | time,userinf=talk_time(talktext[i]),user_manage(talktext[i]) | ||
--对表格添加样式 | |||
if userinf[1]==1 then userstyle=[[background-color: #fcc;"]] else userstyle=[[]] end | if userinf[1]==1 then userstyle=[[background-color: #fcc;"]] else userstyle=[[]] end | ||
if userinf[2]==1 then userstyleind=[[background-color: #fcc;"]] else userstyleind=[[]] end | if userinf[2]==1 then userstyleind=[[background-color: #fcc;"]] else userstyleind=[[]] end | ||
timestyle=close(talktext[i],time_style(time)) | timestyle=close(talktext[i],time_style(time)) | ||
part=[[<tr><th>]]..i..[[</td><td>]]..link(talktitle[i])..[[</td><td style="]]..userstyle..[[">]]..userinf[1]..[[</td><td style="]]..userstyleind..[[">]]..userinf[2]..[[</td><td>]]..user_link(userinf[3])..[[</td><td style="]]..timestyle..[[">]]..user_link(userinf[4])..[[</td><td style="]]..timestyle..[[">]]..tostring(time) | --组装表格一个论题的部分 | ||
part=[[<tr><th>]]..i..[[</td><td>]]..link(talktitle[i])..[[</td><td style="]]..userstyle..[[">]]..userinf[1]..[[</td><td style="]]..userstyleind..[[">]]..userinf[2].. | |||
[[</td><td>]]..user_link(userinf[3])..[[</td><td style="]]..timestyle..[[">]]..user_link(userinf[4])..[[</td><td style="]]..timestyle..[[">]]..tostring(time) | |||
result=result..part | result=result..part | ||
end | end | ||
第224行: | 第234行: | ||
function p.main(frame) | function p.main(frame) | ||
local talktitle,talktext=title_list(frame.args[1]),talk_list(frame.args[1]) | local talktitle,talktext=title_list(frame.args[1]),talk_list(frame.args[1]) | ||
for i=1,get_len(talktitle) do talktitle[i]=frame:preprocess(frame:preprocess(talktitle[i])) end | |||
local result=tostring(get_table(talktitle,talktext)) | |||
if get_len(talktitle)==get_len(talktext) then return result else return frame:expandTemplate{ title = 'error', args = { 'Topic list 获取错误。' } } end | |||
end | end | ||
return p | return p |