Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

Module:Database reports/WikiProject edit count

From Wikipedia, the free encyclopedia

local Report = require('Module:Database report')
local Arguments = require('Module:Arguments')

local p = {}

p.main = function(frame)
	local args = Arguments.getArgs(frame)
	local report = Report:new()
	
	report:setSQL([[
	  WITH botlist AS
      (
      SELECT actor_name AS bot_name
      FROM actor
      JOIN user_groups ON ug_user = actor_user
      WHERE ug_group = 'bot'
      )
      SELECT COUNT(*) AS 'Edit Count'
      FROM page_assessments_projects
      JOIN page_assessments ON pa_project_id = pap_project_id
      JOIN revision ON rev_page = pa_page_id AND rev_timestamp > (NOW() - INTERVAL 30 DAY)
      JOIN actor_revision ON actor_id = rev_actor AND actor_name NOT IN (SELECT bot_name from botlist)
      WHERE pap_project_title = "]] .. args.pap_project_title .. [["; -- substitute project name as coded in PageAssessments
	]])

    report:setInterval(1)
    report:setSilent(true)
    report:setRowTemplate("/countfmt") -- how you would like to format/display the count, supplied in raw form as {{{1}}}
    report:skipTable(true)
	
	return report:generate()
end 

return p