Модуль:Һайланған мәҡәлә
Уҡыу көйләүҙәре
Для документации этого модуля может быть создана страница Модуль:Һайланған мәҡәлә/doc
local p = {}
-- көнгә ике алыштыру
local function betterRandomSeed()
local time = os.time()
local dateTable = os.date("*t", time)
local hour = dateTable.hour
local day = dateTable.day -- Көн
local period = math.floor(hour / 12) -- 0 иртән (0-11), 1 кичкә (12-23)
local hash = mw.uri.encode(tostring(time), "QUERY") -- хэш
math.randomseed(period + day + (tonumber(hash:sub(1, 8)) or 0)) -- Seed периодка
end
function p.fakt(frame)
betterRandomSeed() -- Инициализация
-- Тулы исемлек (1 - 126)
local faktlar = {
'Ҡалып:Баш бит/Һайланған мәҡәлә/1',
'Ҡалып:Баш бит/Һайланған мәҡәлә/2',
'Ҡалып:Баш бит/Һайланған мәҡәлә/3',
'Ҡалып:Баш бит/Һайланған мәҡәлә/4',
'Ҡалып:Баш бит/Һайланған мәҡәлә/5',
'Ҡалып:Баш бит/Һайланған мәҡәлә/6',
'Ҡалып:Баш бит/Һайланған мәҡәлә/7',
'Ҡалып:Баш бит/Һайланған мәҡәлә/8',
'Ҡалып:Баш бит/Һайланған мәҡәлә/9',
'Ҡалып:Баш бит/Һайланған мәҡәлә/10',
'Ҡалып:Баш бит/Һайланған мәҡәлә/11',
'Ҡалып:Баш бит/Һайланған мәҡәлә/12',
'Ҡалып:Баш бит/Һайланған мәҡәлә/13',
'Ҡалып:Баш бит/Һайланған мәҡәлә/14',
'Ҡалып:Баш бит/Һайланған мәҡәлә/15',
'Ҡалып:Баш бит/Һайланған мәҡәлә/16',
'Ҡалып:Баш бит/Һайланған мәҡәлә/17',
'Ҡалып:Баш бит/Һайланған мәҡәлә/18',
'Ҡалып:Баш бит/Һайланған мәҡәлә/19',
'Ҡалып:Баш бит/Һайланған мәҡәлә/20',
'Ҡалып:Баш бит/Һайланған мәҡәлә/21',
'Ҡалып:Баш бит/Һайланған мәҡәлә/22',
'Ҡалып:Баш бит/Һайланған мәҡәлә/23',
'Ҡалып:Баш бит/Һайланған мәҡәлә/24',
'Ҡалып:Баш бит/Һайланған мәҡәлә/25',
'Ҡалып:Баш бит/Һайланған мәҡәлә/26',
'Ҡалып:Баш бит/Һайланған мәҡәлә/27',
'Ҡалып:Баш бит/Һайланған мәҡәлә/28',
'Ҡалып:Баш бит/Һайланған мәҡәлә/29',
'Ҡалып:Баш бит/Һайланған мәҡәлә/30',
}
-- Теләсә кайсын сайлау (1–120)
local index = math.random(1, #faktlar)
local templateTitle = faktlar[index]
-- Калыпны тикшерү
local title = mw.title.new(templateTitle)
if not title or not title.exists then
return "'''Хата:''' Калып '" .. templateTitle .. "' табылмады. Исемлекне тикшерегез." -- Хата
end
-- Калыпны киңәйтү
local content = frame:expandTemplate{ title = templateTitle }
-- Кире кайтару: номерлы тест өчен, продада беренче юлны ал
local debugMode = frame.args.debug or "false" -- Параметры |debug=yes номерын күрсәтү
if debugMode == "yes" then
return index .. " сан чыгарылышы: " .. content
else
return content -- Чыгару
end
end
return p