Changes

Correction to tabulate function
Line 21: Line 21:  
template =  mw.ustring.gsub(template, "/doc$", "") -- strip /doc from end
 
template =  mw.ustring.gsub(template, "/doc$", "") -- strip /doc from end
 
local index = mw.ustring.sub(mw.title.new(template).text,1,1)
 
local index = mw.ustring.sub(mw.title.new(template).text,1,1)
local data = mw.loadData('Module:Transclusion_count/data/' .. (mw.ustring.find(index, "%a") and index or "other"))
+
local status, data = pcall(function ()
return_value = tonumber(data[mw.ustring.gsub(template, " ", "_")])
+
return(mw.loadData('Module:Transclusion_count/data/' .. (mw.ustring.find(index, "%a") and index or "other")))  
 +
end)
 +
if status then
 +
return_value = tonumber(data[mw.ustring.gsub(template, " ", "_")])
 +
end
 
end
 
end
 
end
 
end
Line 35: Line 39:  
 
 
return return_value
 
return return_value
 +
end
 +
 +
-- Tabulate this data for [[Wikipedia:Database reports/Templates transcluded on the most pages]]
 +
function p.tabulate(frame)
 +
local list = {}
 +
for i = 65, 91 do
 +
local data = mw.loadData('Module:Transclusion count/data/' .. ((i == 91) and 'other' or string.char(i)))
 +
for name, count in pairs(data) do
 +
table.insert(list, {mw.title.new(name, "Template").fullText, count})
 +
end
 +
end
 +
table.sort(list, function(a, b)
 +
return (a[2] == b[2]) and (a[1] < b[1]) or (a[2] > b[2])
 +
end)
 +
local lang = mw.getContentLanguage();
 +
for i = 1, #list do
 +
list[i] = ('|-\n| %d || [[%s]] || %s\n'):format(i, list[i][1]:gsub('_', ' '), lang:formatNum(list[i][2]))
 +
end
 +
return table.concat(list)
 
end
 
end
    
return p
 
return p
Anonymous user