Jump to content

Module:Convert to eastern arabic numerals

From Wikipedia, the free encyclopedia

local p = {}

local conversion_table = {
	['0'] = '٠',
	['1'] = '١',
	['2'] = '٢',
	['3'] = '٣',
	['4'] = '٤',
	['5'] = '٥',
	['6'] = '٦',
	['7'] = '٧',
	['8'] = '٨',
	['9'] = '٩',
	['.'] = '٫'
}

function p._convert(args)
	if args == nil then
		return 'Error! Arguments provided are null'
	end
	if args[1] == nil then
		return ''
	end
	local num_str = tostring(args[1])
	local new_str, _ = string.gsub(num_str, '[0-9.]', conversion_table)
	return new_str
end

function p.convert(frame)
	return p._convert(frame.args)
end

return p