Modulo:Fumetto e animazione/sandbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m + |
m Bot: rimuovo no globals obsoleto |
||
(19 versioni intermedie di un altro utente non mostrate) | |||
Riga 4:
]]
require('
local cfg = mw.loadData("Modulo:Fumetto e animazione/Configurazione/sandbox")
Riga 60:
genre = mw.text.trim(genre:lower())
end
return
end
end
Riga 66:
-- Parsifica i parametri rimuovendo le stringhe vuote
local function parse_args(args)
local ret = {}
for key, value in pairs(args) do
if end
end
return
end
Riga 129 ⟶ 131:
-- Cerca il nome o l'alias del medium nella configurazione
function Media:_getValue(
return cfg[
cfg[
cfg[
end
Riga 146 ⟶ 148:
setmetatable(self, { __index = CategoryManager })
self.args =
self.media = Media:new(
self.error_category = false▼
self.year = self:_getYear()
self.genre_table_name = self:_getGenreTableName()
▲ self.error_category = false
self.categories = {}
self.tables_matched = {}
Riga 214 ⟶ 216:
self:_addCategoriesBy('studio')
local broadcaster
local network = self.args['rete 1'] or self.args.rete
if self.media:inArray('film TV', 'serie TV') then
elseif network and self.media:inArray('ONA', 'webserie') then
broadcaster = self:_getCategory(delink(network), 'rete')▼
self.error_category = true▼
end
if not
local platform = self.args['streaming 1'] or self.args.streaming
broadcaster = self:_getCategory
end
if broadcaster then
Riga 244 ⟶ 248:
-- Aggiunge categorie per una lista di valori
function CategoryManager:_addCategoriesBy(table_name, gender, callback)
if self:_isCategoryRedundant(table_name) == false then▼
▲ local base_name = table_name:match('[^_]+')
▲ for value in extract_values(self.args, base_name) do
▲ if table_name == 'genere' then
▲ self:_addCategoryByGenre(value)
value = delink(value)▼
▲ if table_name == 'paese' then
▲ self:_addCategoryByCountry(value, gender, callback)
▲ if category then
▲ if callback then
self.tables_matched[table_name] = true▼
self:_addCategory(category)▼
end
end
end
Riga 271 ⟶ 270:
-- Formatta e aggiunge una categoria
function CategoryManager:_addCategory(category)
if self.args.
table.insert(self.categories, string.format('[[Categoria:%s]]', category))
end
Riga 282 ⟶ 281:
local frame = mw.getCurrentFrame()
local success, adj = pcall(frame.expandTemplate, frame, {
title = 'Template:AggNaz/' .. delink(country),
args = { gender }
})
if not success then
self.error_category = true
elseif self:_isCategoryRedundant('paese') == false then
callback(self, adj)
▲ self.error_category = true
end
end
Riga 294 ⟶ 293:
-- Aggiunge una o più categorie per genere dell'opera
function CategoryManager:_addCategoryByGenre(value)
for genre
▲ local categories = cfg[self.genre_table_name][alias] or
if categories then
for _, category in ipairs(categories) do
Riga 347 ⟶ 344:
-- Cerca il nome di una categoria nella configurazione
function CategoryManager:_getCategory(key, table_name)
key = cfg['alias_' .. table_name] and cfg['alias_' .. table_name][key] or key
return cfg[table_name][key]
Riga 369 ⟶ 367:
local start_date = self.args['data inizio'] or ''
local end_date = self.args['data fine'] or ''
local year = (start_date .. ' ' .. end_date):match('%f[%w]%d%d%d%d%f[%W]')
if year then
return year
else
self.
end
end
Riga 403 ⟶ 401:
function p.categorie(frame)
if mw.title.getCurrentTitle().namespace ~= 0 then return end
return CategoryManager:new(args):listCategories()
end
Riga 409 ⟶ 408:
function p.generi(frame)
local ret = {}
for genre, tail, default in extract_genres(args[1]) do
local wikilink =
table.insert(ret, wikilink and (wikilink .. tail) or default)
end
Riga 419:
-- una data tabella nella configurazione
function p.tabella_configurazione(frame)
local table_name =
if not cfg[table_name] then return end
local root = mw.html.create('table')
|