ماژول:صندخ/دیتا
توضیحات این پودمان میتواند در ماژول:صندخ/دیتا/توضیحات قرار گیرد.
local localdata = {}
local frame = mw.getCurrentFrame()
local modulename = frame.args.modulename or frame.args['ماژول'] or frame.args.name or frame.args['اسم']
local parent = frame:getParent() or frame
local templatename = parent:getTitle() -- اگه ماژول نوم فرق کرده
local params = parent.args
localdata.wikidata = frame:getParent().args.wikidata
or frame:getParent().args['ویکی دیتا']
or frame.args.wikidata
or frame.args['ویکی دیتا']
function localdata.getEntity( val )
if type(val) == 'table' then
return val
end
if val == '-' or val =='لا' then
return nil
end
if val == '' then
val = nil
end
if(type(val) == 'string' and mw.wikibase.isValidEntityId(val))
then return {id = val}
else return {id = mw.wikibase.getEntityIdForCurrentPage()}
end
end
-- fill-up global variable localdata using params
for i, j in pairs(params) do
if j and mw.text.trim(j) ~= '' then -- empty parameters are ignored
if(type(i) == 'string')
then localdata[i:gsub(' ','_')] = j
else localdata[i] = j
end
end
end
localdata.templatename = templatename
localdata.modulename = modulename
-- load wikidata item:
localdata.item = localdata.getEntity(localdata.wikidata or localdata['ویکی دیتا'])
return localdata