Module:Χρήστης:Xoristzatziki:Πληροφορίες προσώπου

Documentation icon Τεκμηρίωση module[δημιουργία]
export = {}

local Lf = {} --τοπικές συναρτήσεις
local Ld = {} --τοπικές μεταβλητές, μπορούν να έχουν τα ίδια ονόματα με τις συναρτήσεις

Lf['last module'] = require("Module:Χρήστης:Xoristzatziki:bla") 
Lf['wikidata module'] = require("Module:Wikidata") 
local exists = function(arg)
	local larg = arg or ''
	return (larg ~= '')
end

local firstof = function(arg1, arg2, ...)
	if exists(arg1) then return arg1 end
	if exists(arg2) then return arg2 end
	local args = { ... }
	local n = select( '#', ... )
	for xcounter = 1,n do
		if exists(args[xcounter]) then return args[xcounter] end
	end
	return ''
end

--only a specific param data15
export.data15 = function(frame)
	local lc = {}
	if frame == mw.getCurrentFrame() then
		lc['page args'] = frame:getParent().args
		return firstof(lc['page args'] ['nationality'], lc['page args'] ['εθνικότητα'] , lc['page args'] ['ιθαγένεια'] )
	end
	return ''
end

--κατυθείαν από το πρότυπο Πρότυπο:Πληροφορίες προσώπου
--με {{#invoke:Πληροφορίες προσώπου|main}}
--(χωρίς παραμέτρους στο πρότυπο)
export.main = function(frame)
	local lc = {}
	if frame == mw.getCurrentFrame() then
		lc['page args'] = frame:getParent().args
		--φτιάχνουμε εδώ όλες τις παραμέτρους για το πρότυπο: Πλαίσιο πληροφοριών
		--lc['child'] = lc['page args']['child']
		--lc['abovestyle'] = lc['page args']['abovestyle']
		
		--lc['labelXXX'] = '....'
		--if exists(lc['page args']['someparam']) then
		--    lc['dataXXX'] = lc['page args']['someparam']
		--end
		--lc['categoryXXX'] = '....' 
		
		
		lc['label15'] = 'Εθνικότητα'
		lc['data15'] = firstof(lc['page args'] ['nationality'], lc['page args'] ['εθνικότητα'] , lc['page args'] ['ιθαγένεια'] )
		lc['category15'] = 'category' --???? (από το πρότυπο Πρότυπο:Πληροφορίες προσώπου)
		--
		--lc['label16'] = '....'
		--lc['data16'] = firstof(...... )
		--lc['category16'] = '....' 
		
		--...
		
		--τις στέλνουμε σε ένα module (σαν το Module:Χρήστης:Xoristzatziki:bla)
		--lc['τελικό'] = Lf['last module']['noframe'](lc)
		--ή τις στέλνουμε στο πρότυπο: Πλαίσιο πληροφοριών
		--lc['τελικό'] = frame:expandTemplate{ title = 'Πλαίσιο πληροφοριών', args = lc }
		
		--return frame:preproccess(lc['τελικό'] )
		
	end
	--αλλιώς δείξε τίποτε (ή σφάλμα: η κλήση δεν έγινε από σελίδα κλπ. ) ;
	return ''
	
end

return export