Diferencia entre revisiones de «Módulo:URL»

De Hispanopedia
Sin resumen de edición
Eliminar "/" del final de la url
Línea 15: Línea 15:
    return '[' .. urlCorregida .. ' ' .. texto .. ']'
    return '[' .. urlCorregida .. ' ' .. texto .. ']'
else
else
textoCorregido = urlCorregida:match('^http://(.+)')
textoCorregido = urlCorregida:match('^http://(.+)') or
                urlCorregida:match('^https://(.+)') or
                urlCorregida
if textoCorregido then
-- Eliminar la / al final
return '[' .. urlCorregida .. ' ' .. textoCorregido .. ']'
textoCorregido = textoCorregido:match('(.+)/$') or textoCorregido
end
textoCorregido = urlCorregida:match('^https://(.+)')
return '[' .. urlCorregida .. ' ' .. textoCorregido .. ']'
if textoCorregido then
return '[' .. urlCorregida .. ' ' .. textoCorregido .. ']'
end
return '[' .. urlCorregida .. ']'
end
end
end
end

Revisión del 11:12 14 jun 2015

Uso

Este módulo proporciona operaciones sobre URL.

Funciones

url

Formatea una url añadiéndole el texto especificado. Sintaxis:

{{#Invoke:URL|url|<url>|<texto>}}
Ejemplos
  • {{#Invoke:URL|url|www.ejemplo.com|Sitio web oficial}}Sitio web oficial
  • {{#Invoke:URL|url|http://www.ejemplo.coml}}www.ejemplo.com
  • {{#Invoke:URL|url|[http://www.ejemplo.com Ejemplo]|Sitio web oficial}}Ejemplo
  • {{#Invoke:URL|url||Sitio web oficial}} → [http:// Sitio web oficial]
Notas

Para llamar a la función desde LUA puede utilizarse en su lugar la función enlazar:

enlazar(<url>, <texto>)

local z = {}

function z.enlazar(url, texto)
    if not url then
		return
	elseif url:find('%[') then
		return url
	elseif z.esValida(url) then
		urlCorregida = url
	else
		urlCorregida = 'http://' .. url
	end
	
	if texto then
	    return '[' .. urlCorregida .. ' ' .. texto .. ']'
	else
		textoCorregido = urlCorregida:match('^http://(.+)') or 
		                 urlCorregida:match('^https://(.+)') or
		                 urlCorregida
		
		-- Eliminar la / al final
		textoCorregido = textoCorregido:match('(.+)/$') or textoCorregido
		
		return '[' .. urlCorregida .. ' ' .. textoCorregido .. ']'
	end
end

function z.url(frame)
	if not frame or not frame.args then
		return
	end
	
	return z.enlazar(frame.args[1], frame.args[2])
end

--function z.enlacePlano
	-- Ver la plantilla Enlace plano
--	return
--end

-- Ver la función checkurl del módulo de citas.
function z.esValida(url)
	return url:sub(1,2) == "//" or url:match( "^[^/]*:" )
end

return z