Modul:Bugungi kunda yaratilgan maqolalar

Vikipediya, ochiq ensiklopediya

Amalga oshirish {{Bugungi kunda yaratilgan maqolalar}}.


local getArgs = require('Module:Arguments').getArgs
local p = {}

function p.main(frame)
	local args = getArgs(frame)
	local scale = args == 'relative'
	
	local languages = {
      	{ 'ru', 'Ruscha', 'Rossiya' },
		{ 'uz', 'Oʻzbekcha', 'Oʻzbekiston' },
		{ 'tr', 'Turkcha', 'Turkiya' },
		{ 'tt', 'Tatarcha', 'Tatarstan' },
        { 'kaa', 'Qoraqalpoqcha', 'Qoraqalpoqston' },
		}
	local numberOf, todayNumberOf, today, maxToday = {}, {}, {}, 0
	for k, v in pairs(languages) do
		numberOf[k] = frame:expandTemplate{ title = 'NUMBEROF', args = { 'ARTICLES', v[1] } }
		todayNumberOf[k] = frame:expandTemplate{ title = 'TODAYNUMBEROF', args = { 'ARTICLES', v[1] } }
		today[k] = numberOf[k] - todayNumberOf[k]
		if today[k] > maxToday then
			maxToday = today[k]
		end
	end
	
	local bars = ''
	local minWidth = 400;
	for k, v in pairs(today) do
		bars = bars .. '\n' .. frame:expandTemplate{ title = 'bar pixel', args = {
			'[[' .. languages[k][2] .. ' Vikipediya|' .. languages[k][2] .. ']]',
			'#cfe3ff',
			math.max(scale == 'relative' and (today[k] / maxToday * minWidth) or today[k], 0),
			'',
			today[k]
		} }
	end
	
	local lang = mw.language.new('uz')
	local result = frame:expandTemplate{ title = 'bar box', args = {
		title = 'Bugungi kunda yaratilgan maqolalar<br><span style="font-weight:normal;">' ..
			lang:ucfirst(lang:formatDate('l, j xg Y, H:i "(UTC)"')) .. '</span>',
		titlebar = '#75f23f',
		left1 = 'Vikipediya',
		right1 = 'Maqolalar',
		barwidth = tostring(minWidth) .. 'px',
		bars = bars,

	} }
	
	mw.logObject(result)
	return '<div style="overflow:auto; width:100%;">\n{|\n|-\n|' .. result .. '\n|}</div>'
end

return p