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:Sandbox/RexxS

From Wikipedia, the free encyclopedia

-- This is here as a placeholder.
-- It is to demonstrate to Google-Code-in students what the module sandbox is.

local p = {}

function p.cats(frame)
	local title = frame.args.title or ""
	local ttlobj = mw.title.new( title, 14 )
	if ttlobj then
		local cont = ttlobj:getContent()
		if cont then return cont:sub( 1, 100000 ) end
	end
end

function p.namespaces(frame)
	local ns = mw.site.namespaces
	local msg = ""
	for k, v in pairs(ns) do
		msg = msg .. k .. " = " .. v.name .. "<br>"
	end
	return msg
end

p.roundto = function(frame)
	local x = tonumber(frame.args.x) or 0
	local sf = tonumber(frame.args.sf) or 0
	if x == 0 then return 0 end
	local s = 1
	if x < 0 then
		x = -x
		s = -1
	end
	if sf < 1 then sf = 1 end
	local p = 10 ^ (math.floor(math.log10(x)) - sf + 1)
	x = math.floor(x / p + 0.5) * p * s
	-- if it's integral, cast to an integer:
	--if x == math.floor(x) then x = math.floor(x) end
	return x
end

return p