« Module:Person/class » : différence entre les versions

De Semantic MediaWiki - Sandbox
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 4 : Ligne 4 :
local person = class:new( config )
local person = class:new( config )


function person:adjustData( data )
function person:alterDataAfterStorage( data )
local data = data
local data = data
if not data.profession then
if not data.profession then

Version du 25 décembre 2016 à 14:39

This module holds a lua class representing a person. It uses Module:SSC base for its functionality and gets its configuration from Module:Person/config.

Usage

local person = require( 'Module:Person/class' ):new()
-- for example, this call would be placed inside the main function called on the template:
return person:renderPage()

For available public methods see Module:SSC base.


local config = mw.loadData( 'Module:Person/config' )
local class = require( 'Module:SSC base' )

local person = class:new( config )

function person:alterDataAfterStorage( data )
	local data = data
	if not data.profession then
		data.profession = 'unknown'
	end
	if not data.firstname and not data.lastname then
		data.firstname = 'John'
		data.lastname = 'Doe'
		data.name = data.firstname .. ' ' .. data.lastname
	else
		data.name = data.firstname or data.lastname
	end
	
	if data['date of birth'] and mw.ustring.find( data['date of birth'], '/', 1, true ) then
		local date = mw.text.split( data['date of birth'], '/', true )
		data['date of birth'] = date[2] .. '.' .. date[1] .. '.' .. date[3]
	end
	
	return data
end

return person
Les cookies nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de cookies.