Difference between revisions of "Module:Slugify"

From Yugipedia
Jump to: navigation, search
(create)
 
(fix when called without any value in {{{1}}})
Line 12: Line 12:
 
local args = mArguments.getArgs( frame, { parentOnly = true } )
 
local args = mArguments.getArgs( frame, { parentOnly = true } )
 
 
local str = args[1]
+
local str = args[1] or ''
 
 
 
-- this probably misses some characters
 
-- this probably misses some characters

Revision as of 19:22, 21 June 2019

-- <pre>

--
-- implements {{Slugify}}
--

local mArguments --lazily initialize
local p = {}

function p.slugify( frame )
	mArguments = mArguments or require( 'Module:Arguments' )
	local args = mArguments.getArgs( frame, { parentOnly = true } )
	
	local str = args[1] or ''
	
	-- this probably misses some characters
	str = str
		:gsub( '%-', ' ' )
		:gsub( '%p', '' )
		:gsub( '%s+', '-')
	
	return str:lower()
end

return p

-- </pre>