Path of Exile Wiki

Wiki поддерживается сообществом, поэтому подумайте над тем, чтобы внести свой вклад.

ПОДРОБНЕЕ

Path of Exile Wiki
Редактировать страницу

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы ваша отмена правки была сохранена.

Текущая версия Ваш текст
Строка 1: Строка 1:
 
--
-------------------------------------------------------------------------------
 
  +
-- Module for skill linking
--
 
 
--
-- Module:Skill link
 
--
 
-- This module implements Template:Skill link
 
-------------------------------------------------------------------------------
 
   
local getArgs = require('Module:Arguments').getArgs
 
 
local m_util = require('Module:Util')
 
local m_util = require('Module:Util')
local m_cargo = require('Module:Cargo')
+
local getArgs = require('Module:Arguments').getArgs
 
local m_cargo = require('Module:cargo')
  +
 
local p = {}
  +
 
-- ----------------------------------------------------------------------------
  +
-- Strings
 
-- ----------------------------------------------------------------------------
  +
  +
local i18n = {
  +
errors = {
  +
missing_id_parameter = 'id parameter must be specified, please choose only one of these ids:<br>%s',
  +
multiple_results = 'Too many skills found with q_where = %s. Please choose only one of the following ids:<br>%s',
  +
no_results = 'No results found.',
  +
category = 'Pages with skill infobox errors',
  +
 
-- Skill link:
  +
invalid_args = 'id, page or name must be specified',
  +
no_results_found = 'No skills found with q_where = %s',
  +
invalid_format = 'Invalid return format specified: %s',
  +
broken_skill_links = 'Pages with broken skill links',
  +
},
  +
}
  +
  +
  +
-- ----------------------------------------------------------------------------
  +
-- Constants & Data
  +
-- ----------------------------------------------------------------------------
   
  +
local c = {}
-- Should we use the sandbox version of our submodules?
 
  +
-- c.image_size = 39
local use_sandbox = m_util.misc.maybe_sandbox('Skill link')
 
  +
-- c.image_size_full = c.image_size * 2
  +
c.parameters = {
  +
name = 'skill.active_skill_name',
  +
icon = 'skill.icon',
  +
html = 'skill.html',
  +
}
   
  +
c.selectors = {'id', 'page', 'skill_name'}
-- The cfg table contains all localisable strings and configuration, to make it
 
-- easier to port this module to another wiki.
 
local cfg = use_sandbox and mw.loadData('Module:Skill link/config/sandbox') or mw.loadData('Module:Skill link/config')
 
   
local i18n = cfg.i18n
 
   
 
-- ----------------------------------------------------------------------------
 
-- ----------------------------------------------------------------------------
-- Helper functions
+
-- Helper functions and globals
 
-- ----------------------------------------------------------------------------
 
-- ----------------------------------------------------------------------------
   
Строка 30: Строка 56:
 
]]
 
]]
 
local str = {}
 
local str = {}
for _, v in pairs(results) do
+
for i,v in pairs(results) do
 
str[#str+1] = string.format(
 
str[#str+1] = string.format(
 
'%s - %s ([[%s|page]])',
 
'%s - %s ([[%s|page]])',
Строка 78: Строка 104:
   
 
-- ----------------------------------------------------------------------------
 
-- ----------------------------------------------------------------------------
-- Exported functions
+
-- Page functions
 
-- ----------------------------------------------------------------------------
 
-- ----------------------------------------------------------------------------
   
Строка 205: Строка 231:
 
end
 
end
   
  +
--
 
-- Template:Skill link
 
--
 
 
function p.skill_link(frame)
 
function p.skill_link(frame)
 
--[[
 
--[[
Строка 234: Строка 258:
   
 
-- Check if the correct parameters have been set:
 
-- Check if the correct parameters have been set:
if m_util.table.has_all_value(tpl_args, cfg.selectors) and tpl_args.skip_query == nil then
+
if m_util.table.has_all_value(tpl_args, c.selectors) and tpl_args.skip_query == nil then
 
return m_util.html.error{
 
return m_util.html.error{
 
msg=i18n.errors.invalid_args .. m_util.misc.add_category(i18n.errors.broken_skill_links)
 
msg=i18n.errors.invalid_args .. m_util.misc.add_category(i18n.errors.broken_skill_links)
Строка 242: Строка 266:
 
--
 
--
 
local skill
 
local skill
if m_util.table.has_one_value(tpl_args, cfg.selectors, nil) and tpl_args.skip_query == nil then
+
if m_util.table.has_one_value(tpl_args, c.selectors, nil) and tpl_args.skip_query == nil then
 
-- Create q_where depending on the input:
 
-- Create q_where depending on the input:
 
if tpl_args.skill_name then
 
if tpl_args.skill_name then
Строка 306: Строка 330:
   
 
-- Add allowed parameters:
 
-- Add allowed parameters:
for k, prop in pairs(cfg.parameters) do
+
for k, prop in pairs(c.parameters) do
 
if tpl_args[k] ~= nil then
 
if tpl_args[k] ~= nil then
 
skill[prop] = tpl_args[k]
 
skill[prop] = tpl_args[k]
Строка 379: Строка 403:
 
end
 
end
 
end
 
end
  +
-- ----------------------------------------------------------------------------
 
-- End
  +
-- ----------------------------------------------------------------------------
   
 
return p
 
return p

Обратите внимание, что все правки на Path of Exile Wiki публикуются по лицензии CC BY-NC-SA 3.0