Модуль:PlayerNav
Документацію для цього модуля можна створити у Модуль:PlayerNav/документація
local p = {}
local players = {
"Демон", "Кексік", "Малена", "Маска", "Нюта", "Сімон", "Артерія", "Бетмен",
"Сенаторс", "Ноунейм", "Легасі", "Гробік", "Кіфа", "Панда", "Берлін", "Леві",
"Х'юґо", "Рендал", "Малюк", "Браун", "Маджест", "Пірожуля", "Лев", "Рауль",
"Механік", "Фейт", "Ліна", "Міракл Найт", "Анастезія", "Емесай", "Лінчакі",
"Бендер", "Мамка", "Кетрін", "Шеперд", "Тян", "Джордж", "Алоха", "Оттерія",
"Хантер", "Хоррорчік", "Інфанта", "ЕХС", "Шадоу", "ВВ", "Радаґаст", "Лектор",
"Містер Тен", "Ітеро", "Доктор Ямато", "Мері", "Бівер", "Тігарбо", "Дальтонік",
"Щирі Очі", "Ластон", "Ліп Дей", "Лемур", "Фавер", "Мерч", "Нахтіґаль",
"Повар", "Кузя", "Ніколетта", "Космос", "Дантес", "Комедіант", "Справа",
"Хуаніта", "Фенікс", "Керміт", "Іуда", "Меля", "Міна", "Ротація", "Доктор Хаус",
"Індиго", "Расм", "Безкiнечнiсть", "Ната", "Клей", "Фінлі", "Аристократ",
"Муза", "Медді", "Клайд", "Бейбі", "Патрон", "Кінік", "Бейтман", "Гросмейстер",
"Васильович", "Тіна", "Дежаву", "Мальвінка", "Ачоровал", "Протон", "Аріель",
"Бродхан", "Трололо", "Лівінгстон", "Соло", "Найтінґейл", "Колапс", "Мюнхен",
"Адамант", "Вікі", "Комар", "Балтіка 9", "Nasty27", "Карфакс", "Котик", "Мата",
"Патрік", "Сенс", "Барні", "Медик", "Фаза", "Мун", "Фeя", "Інша", "Ювентіно",
"Шостік", "Філоріан", "Назавжди", "Вотер", "Каратель", "Жовтень", "Нелл",
"Тайєр", "Еморі", "Лілія", "Дюймовочка", "Седвік", "Скромний", "Кобальт",
"Радист", "Привіт, киця", "Марвел", "Македонський", "Пікассо", "Борщ", "Гроза",
"Бембі", "Вишня", "Меріманго", "Флекс", "Стеля", "Посейдон", "Оксі", "Зірка",
"Блінк", "Фолд", "Зодіак", "Андервуд", "Абракадабра", "Жасмін", "Кіноманка",
"Бонд", "Фея", "Сутінки", "Ананасік", "Боб", "Лектоp", "Динамо", "Магуз",
"Палац Україна"
}
-- Знайти індекс гравця
local function findIndex(name)
for i, player in ipairs(players) do
if player == name then
return i
end
end
return nil
end
-- Отримати попереднього гравця
function p.prev(frame)
local name = frame.args[1] or frame.args.player or mw.title.getCurrentTitle().text
local index = findIndex(name)
if index and index > 1 then
return players[index - 1]
end
return ""
end
-- Отримати наступного гравця
function p.next(frame)
local name = frame.args[1] or frame.args.player or mw.title.getCurrentTitle().text
local index = findIndex(name)
if index and index < #players then
return players[index + 1]
end
return ""
end
-- Повна навігація (HTML) - ОНОВЛЕНА ФУНКЦІЯ
function p.navigation(frame)
local name = frame.args[1] or frame.args.player or mw.title.getCurrentTitle().text
local index = findIndex(name)
local prevLink = ""
local nextLink = ""
if index and index > 1 then
local prevPlayer = players[index - 1]
local prevUrl = mw.uri.encode(prevPlayer, "WIKI")
prevLink = string.format('<a href="/index.php/%s" title="%s">←</a>', prevUrl, prevPlayer)
end
if index and index < #players then
local nextPlayer = players[index + 1]
local nextUrl = mw.uri.encode(nextPlayer, "WIKI")
nextLink = string.format('<a href="/index.php/%s" title="%s">→</a>', nextUrl, nextPlayer)
end
return string.format(
'<div class="player-nav"><span class="player-nav-prev">%s</span><span class="player-nav-name">%s</span><span class="player-nav-next">%s</span></div>',
prevLink, name, nextLink
)
end
return p