Modulo:Vedi anche

Da Esopedia, l'Enciclopedia dell'[[Ordine Martinista Antico e Tradizionale|O.M.A.T.]] per gli Iniziati.
Jump to navigation Jump to search

--[[

]]

require('Modulo:No globals')

local p = {}

-- Parsifica un argomento del template (rappresenta il titolo di una pagina) e ne ritorna il wikilink. local function parseArg(arg) local dest, count

-- evita l'uso con categorie if mw.ustring.find(arg, '^%s*:%s*[Cc][Aa][Tt]', 1, false) then return '(usare t:Vedi categoria)' end -- rimuove eventuali pipe inserite tramite | arg = arg:match('(.*)|') or arg -- sostituisce le HTML entity (per esempio ' generato da Vedi anche quando il titolo contiene l'apostrofo) arg = mw.text.decode(arg) -- sostituisce # con §, se trovato crea un piped wikilink dest = arg arg, count = arg:gsub('#', ' § ') dest = count == 1 and (dest .. '|') or

return "" .. dest .. arg .. "" end

-- Costruisce l'HTML per contenere i wikilink alle pagine. local function buildHTML(wikitext, with_noprint) local tableStyle = { ['margin-bottom'] = '.5em', border = '1px solid #CCC', ['text-align'] = 'left', ['font-size'] = '95%', background = 'transparent' } local tableNode = mw.html.create('table') tableNode :addClass(with_noprint and 'noprint' or nil) :css(tableStyle) :tag('tr') :tag('td') :css('padding', '0 .5em') :wikitext('Exquisite-kfind.png') :done() :tag('td') :css('width', '100%') :wikitext("Lo stesso argomento in dettaglio: " .. wikitext .. ".") :done()

return tostring(tableNode) end

-- Entry-point per Template:Vedi anche sezione function p.sezione(frame) local arg = frame:getParent().args[1] local wlink = arg and ("" .. arg .. "") or return buildHTML('sezione ' .. wlink) end

-- Entry-point per

Exquisite-kfind.pngLo stesso argomento in dettaglio: .

function p.main(frame) local lastArg, conjunction local args = {}

for _, val in ipairs(frame:getParent().args) do table.insert(args, parseArg(val)) lastArg = val end if #args > 1 and lastArg then conjunction = mw.ustring.lower(lastArg:sub(1, 1)) == 'e' and 'ed' or 'e' conjunction = ' ' .. conjunction .. ' ' end

return buildHTML(mw.text.listToText(args, ', ', conjunction), true) end

return p