Modulo:Bio/Parametri/sandbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m fix gsub |
aggiornato alla versione corrente, +Pseudonimo |
||
(3 versioni intermedie di 2 utenti non mostrate) | |||
Riga 6:
]]
config.params = {
["Didascalia2"] = true,
["DimImmagine"] = true,
["CognomePrima"] = true,
["Debug"] = true
}
Line 60 ⟶ 64:
Deve ritornare true se il valore del parametro è valido altrimenti false.
Esempio: scommentando la seguente funzione checkNome e aggiungendo la riga:
saranno categorizzate come errore la pagine con Nome contenente "soprannominato" o "al secolo".
Inoltre non verrà visualizzato il messaggio di errore (errmsg è assente).
]]
--local function checkNome(value, args)
--
--
--end
local function checkEpoca(value, args)
end
local function checkLen1000(value, args)
end
local function checkQuestionMark(value, args)
return value ~= "?"
end
local function checkEllipsis(value, args)
return value ~= "..."
end
local function checkPeriod(value, args)
return not value:match("^%.")
end
-- Applicato su AnnoMorte per verificare che in presenza di AnnoNascita sia uguale o posteriore
local function checkMorteDopoNascita(value, args)
local annoNascita, annoMorte
local ret = true
if args["AnnoNascita"] then
annoNascita = tonumber(args["AnnoNascita"])
annoMorte = tonumber(value)
if annoNascita and annoMorte then
ret = annoMorte >= annoNascita
end
end
return ret
end
-- Per controllare la dipendenza da un altro parametro
local function hasParam(param)
return function(value, args)
return args[param] ~= nil
end
end
-- Per controllare il conflitto con un altro parametro
local function unusedParam(param)
return function(value, args)
return args[param] == nil
end
end
-- Per controllare che un altro parametro abbia valore diverso
local function diffParam(param)
return function(value, args)
return value ~= args[param]
end
end
config.validators = {
{ param = "DimImmagine", valuetest = "^%d+$", errmsg = "il valore del parametro DimImmagine non è valido, inserire la dimensione senza px" },
{ param = "PostNazionalità", valuetest = checkLen1000 },▼
{ param = "PostNazionalità", valuetest = checkPeriod, errmsg = "PostNazionalità inizia con il punto. Spostarne il contenuto alla riga successiva dopo la chiusura del template Bio" },
{ param = "FineIncipit", valuetest = checkLen1000 },
{ param = "PostCognomeVirgola", valuetest = unusedParam("PostCognome"), errmsg = "PostCognome e PostCognomeVirgola non possono essere utilizzati insieme" },
{ param = "AnnoNascita", valuetest = checkQuestionMark, errmsg = "il valore '?' in AnnoNascita non è valido: se sconosciuto va lasciato vuoto e il template visualizzerà i punti di sospensione" },
{ param = "AnnoNascita", valuetest = checkEllipsis, errmsg = "il valore '...' in AnnoNascita non è valido: se sconosciuto va lasciato vuoto e il template visualizzerà i punti di sospensione" },
{ param = "AnnoMorte", valuetest = checkEllipsis, errmsg = "il valore '...' in AnnoMorte non è valido: se sconosciuto va utilizzato '?' e il template visualizzerà i punti di sospensione" },
{ param = "AnnoMorte", valuetest = checkMorteDopoNascita, errmsg = "il valore del parametro AnnoMorte è anteriore ad AnnoNascita" },
{ param = "LuogoNascitaLink", valuetest = hasParam("LuogoNascita"), errmsg = "LuogoNascitaLink è usato ma LuogoNascita è vuoto" },
{ param = "LuogoNascitaLink", valuetest = diffParam("LuogoNascita"), errmsg = "LuogoNascitaLink va usato solo se diverso da LuogoNascita" },
{ param = "LuogoNascitaAlt", valuetest = hasParam("LuogoNascita"), errmsg = "LuogoNascitaAlt è usato ma LuogoNascita è vuoto" },
{ param = "LuogoMorteLink", valuetest = hasParam("LuogoMorte"), errmsg = "LuogoMorteLink è usato ma LuogoMorte è vuoto" },
{ param = "LuogoMorteLink", valuetest = diffParam("LuogoMorte"), errmsg = "LuogoMorteLink va usato solo se diverso da LuogoMorte" },
{ param = "LuogoMorteAlt", valuetest = hasParam("LuogoMorte"), errmsg = "LuogoMorteAlt è usato ma LuogoMorte è vuoto" },
{ param = "LuogoMorte", valuetest = hasParam("AnnoMorte"), errmsg = "LuogoMorte è usato ma AnnoMorte è vuoto" },
{ param = "GiornoMeseMorte", valuetest = hasParam("AnnoMorte"), errmsg = "GiornoMeseMorte è usato ma AnnoMorte è vuoto" },
{ param = "Attività3", valuetest = hasParam("Attività2"), errmsg = "Attività3 è usato ma Attività2 è vuoto" }
}
|