Module:Data item link

From OpenStreetMap Wiki
Jump to navigation Jump to search
[Create] Documentation
local p = {}

function p.wbGetEntityIdForCurrentPage( frame )
	EntityId = mw.wikibase.getEntityIdForCurrentPage()
	if EntityId ~= nil then
        return mw.wikibase.getEntityUrl( EntityId )
    else
    	return 'nodataitem'
    end
end

function p.wbGetEntityIdForTitle( frame )
	if frame.args[1] ~= nil then
		EntityId = mw.wikibase.getEntityIdForTitle( frame.args[1] )
	end
	if EntityId ~= nil then
        return mw.wikibase.getEntityUrl( EntityId )
    else
    	return 'nodataitem'
    end
end

function p.wbGetEntityIdForTag( frame )
	if frame.args[1] ~= nil and frame.args[2] ~= nil and frame.args[2] ~= '' and frame.args[2] ~= ' ' and frame.args[2] ~= '*' then
		EntityId = mw.wikibase.getEntityIdForTitle('Tag:' .. frame.args[1] .. '=' .. frame.args[2])
	elseif frame.args[1] ~= nil then
		EntityId = mw.wikibase.getEntityIdForTitle('Key:' .. frame.args[1])
	else
		EntityId = mw.wikibase.getEntityIdForCurrentPage()
	end
	if EntityId ~= nil then
        return mw.wikibase.getEntityUrl( EntityId )
    else
    	return 'nodataitem'
    end
end

function p.wbGetEntityIdForKeyPrefix( frame )
	if frame.args[1] ~= nil then
		EntityId = mw.wikibase.getEntityIdForTitle('Key:' .. frame.args[1] .. ':*')
	else
		EntityId = mw.wikibase.getEntityIdForCurrentPage()
	end
	if EntityId ~= nil then
        return mw.wikibase.getEntityUrl( EntityId )
    else
    	return 'nodataitem'
    end
end

function p.wbGetEntityIdForKeySuffix( frame )
	if frame.args[1] ~= nil then
		EntityId = mw.wikibase.getEntityIdForTitle('Key:*:' .. frame.args[1])
	else
		EntityId = mw.wikibase.getEntityIdForCurrentPage()
	end
	if EntityId ~= nil then
        return mw.wikibase.getEntityUrl( EntityId )
    else
    	return 'nodataitem'
    end
end

return p