Modulo:Bio/sandbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
didascalia dal parametro Pseudonimo quando la voce è intitolata allo pseudonimo |
rimosse funzioni Wikidata inutilizzate, sostituita getEntity, commenti |
||
Riga 8:
require("Module:No globals")
local args -- argomenti passati al template▼
local errorTable = {} -- table per contenere gli errori▼
local attivitaParams = { "Attività", "Attività2", "Attività3" }▼
local nazionalitaParams = { "Nazionalità", "NazionalitàNaturalizzato", "Cittadinanza" }▼
local cfg = mw.loadData("Modulo:Bio/Configurazione")▼
local mString = require("Modulo:String")
local mWikidata = require("Modulo:Wikidata")
▲local cfg = mw.loadData("Modulo:Bio/Configurazione")
local args
local errorTable = {}
-- nomi dei parametri per l'attività e la nazionalità
▲local attivitaParams = { "Attività", "Attività2", "Attività3" }
▲local nazionalitaParams = { "Nazionalità", "NazionalitàNaturalizzato", "Cittadinanza" }
-- =============================================================================
-- Funzioni di utilità
-- =============================================================================
-- Aggiunge l'output del [[Template:Avviso]] e una categoria di warning a errorTable
Line 53 ⟶ 55:
end
-- Se date inizia con "1 " o "1°"
local function fixFirstOfMonth(date)
date = date:gsub("^1%s", "1º ")
Line 60 ⟶ 62:
end
--
local function getEufonica(nextWord)
return nextWord:sub(1, 1) == "e" and "ed" or "e"
end
--
-- un valore tra quelli indicati (values), altrimenti false
local function argsSearch(params, values)
Line 72 ⟶ 74:
for _, value in ipairs(values) do
if args[param] == value then
end
end
end
return
end
-- =============================================================================
-- classe ArgsParser
-- =============================================================================
local ArgsParser = {}
Line 130 ⟶ 94:
-- Parsifica i parametri passati al modulo e aggiunge eventuali categorie di errore.
--
function ArgsParser:parse(origArgs)
local paramcfg = require("Modulo:Bio/Parametri")
Line 162 ⟶ 126:
-- Utilizzata da parse per controllare il valore di un parametro.
--
function ArgsParser:_checkParamValue(value, valueTest, otherArgs)
local ret = true
Line 175 ⟶ 139:
end
-- =============================================================================
-- classe CategoryManager
-- =============================================================================
local CategoryManager = {}
Line 249 ⟶ 213:
-- Aggiunge la categoria se la pagina non ha un elemento Wikidata collegato,
-- oppure
function CategoryManager:_addCategoryWikidata(
if not mWikidata._getProperty({ propertyId }) then
self:_addCategory(cat)
end
Line 261 ⟶ 224:
function CategoryManager:_addCategoriesWikidata()
-- Per Speciale:LinkPermanente/80165551#Proposta_categoria_di_servizio_biografie_con_data_di_morte_su_Wikidata
if not args.AnnoMorte and mWikidata._getProperty(
self:_addCategory("Voci con template Bio senza AnnoMorte ma con data di morte su Wikidata")
end
if mWikidata._instanceOf(
-- Per Speciale:LinkPermanente/66620402#Add_this_text_to_Template:Bio
if args["Nazionalità"] then
Line 318 ⟶ 281:
end
--
function CategoryManager:_getPluralAttivita(attivita)
local plural
Line 331 ⟶ 294:
end
--
function CategoryManager:_getPluralNazionalita(nazionalita)
local plural
Line 344 ⟶ 307:
end
--
function CategoryManager:_getPluralsAttivitaNazionalita()
local plurals = {}
Line 405 ⟶ 368:
end
-- Utilizzata da addNatiMorti,
-- se titleLink o title sono nella lista di eccezioni Cat luoghi, altrimenti nil
function CategoryManager:_getCatLuoghi(titleLink, title, catPrefix)
Line 517 ⟶ 480:
end
-- =============================================================================
-- classe Incipit
-- =============================================================================
local Incipit = {}
Line 597 ⟶ 560:
--
function Incipit:_needSpace(text)
return mw.ustring.match(mw.ustring.sub(text, 1, 1), "%w") ~= nil or
Line 656 ⟶ 619:
self:_addImage(args.Immagine, args.DimImmagine, caption)
elseif args.Didascalia2 then
-- parentesi () extra per non
self:_addText( (cfg.didascalia2:gsub("$1", args.Didascalia2)) )
end
Line 875 ⟶ 838:
end
-- =============================================================================
-- Funzioni
-- =============================================================================
local p = {}
Line 895 ⟶ 858:
-- come avveniva nel vecchio template.
args = ArgsParser:new():parse(frame:getParent().args)
local catTable = CategoryManager:new():getCategories()
|