<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fa">
	<id>https://wikialborz.com/history/%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:PersonInfobox?feed=atom</id>
	<title>پودمان:PersonInfobox - تاریخچهٔ نسخه‌ها</title>
	<link rel="self" type="application/atom+xml" href="https://wikialborz.com/history/%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:PersonInfobox?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://wikialborz.com/history/%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:PersonInfobox"/>
	<updated>2026-08-17T09:55:09Z</updated>
	<subtitle>تاریخچهٔ نسخه‌ها برای این صفحه در ویکی</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://wikialborz.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:PersonInfobox&amp;diff=10703&amp;oldid=prev</id>
		<title>Modir: صفحه‌ای تازه حاوی «local p = {}  ------------------------------------------------------- -- ARGUMENTS -------------------------------------------------------  local function normalize(value) 	if not value then 		return nil 	end 	 	value = mw.text.trim(tostring(value)) 	 	if value == &quot;&quot; then 		return nil 	end 	 	value = mw.ustring.gsub(value, &quot;[\u200C\u200D]&quot;, &quot;&quot;) 	 	return value end   local function getArgs(frame) 	local args = {}  	local parent = frame:...» ایجاد کرد</title>
		<link rel="alternate" type="text/html" href="https://wikialborz.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:PersonInfobox&amp;diff=10703&amp;oldid=prev"/>
		<updated>2026-07-10T22:43:05Z</updated>

		<summary type="html">&lt;p&gt;صفحه‌ای تازه حاوی «local p = {}  ------------------------------------------------------- -- ARGUMENTS -------------------------------------------------------  local function normalize(value) 	if not value then 		return nil 	end 	 	value = mw.text.trim(tostring(value)) 	 	if value == &amp;quot;&amp;quot; then 		return nil 	end 	 	value = mw.ustring.gsub(value, &amp;quot;[\u200C\u200D]&amp;quot;, &amp;quot;&amp;quot;) 	 	return value end   local function getArgs(frame) 	local args = {}  	local parent = frame:...» ایجاد کرد&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحهٔ تازه&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
-- ARGUMENTS&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
local function normalize(value)&lt;br /&gt;
	if not value then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	value = mw.text.trim(tostring(value))&lt;br /&gt;
	&lt;br /&gt;
	if value == &amp;quot;&amp;quot; then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	value = mw.ustring.gsub(value, &amp;quot;[\u200C\u200D]&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	return value&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
local function getArgs(frame)&lt;br /&gt;
	local args = {}&lt;br /&gt;
&lt;br /&gt;
	local parent = frame:getParent()&lt;br /&gt;
&lt;br /&gt;
	if parent then&lt;br /&gt;
		for k, v in pairs(parent.args) do&lt;br /&gt;
			args[k] = normalize(v)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	for k, v in pairs(frame.args) do&lt;br /&gt;
		args[k] = normalize(v)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return args&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
local function getArg(args, ...)&lt;br /&gt;
	for _, key in ipairs({...}) do&lt;br /&gt;
		if args[key] then&lt;br /&gt;
			return args[key]&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
-- HTML HELPERS&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
local function addRow(box, label, value)&lt;br /&gt;
&lt;br /&gt;
	if not value then&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local row = box:tag(&amp;quot;tr&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	row&lt;br /&gt;
		:tag(&amp;quot;th&amp;quot;)&lt;br /&gt;
		:wikitext(label)&lt;br /&gt;
&lt;br /&gt;
	row&lt;br /&gt;
		:tag(&amp;quot;td&amp;quot;)&lt;br /&gt;
		:wikitext(value)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
local function addHeader(box, title)&lt;br /&gt;
&lt;br /&gt;
	local row = box:tag(&amp;quot;tr&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	row&lt;br /&gt;
		:tag(&amp;quot;th&amp;quot;)&lt;br /&gt;
		:attr(&amp;quot;colspan&amp;quot;, &amp;quot;2&amp;quot;)&lt;br /&gt;
		:css({&lt;br /&gt;
			[&amp;quot;text-align&amp;quot;] = &amp;quot;center&amp;quot;,&lt;br /&gt;
			[&amp;quot;background&amp;quot;] = &amp;quot;#2C5F9E&amp;quot;,&lt;br /&gt;
			[&amp;quot;color&amp;quot;] = &amp;quot;#FFFFFF&amp;quot;&lt;br /&gt;
		})&lt;br /&gt;
		:wikitext(title)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
-- IMAGE&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
local function addImage(box, args)&lt;br /&gt;
&lt;br /&gt;
	local image = getArg(&lt;br /&gt;
		args,&lt;br /&gt;
		&amp;quot;image&amp;quot;,&lt;br /&gt;
		&amp;quot;تصویر&amp;quot;,&lt;br /&gt;
		&amp;quot;پرونده&amp;quot;&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	if not image then&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	local row = box:tag(&amp;quot;tr&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	row&lt;br /&gt;
		:tag(&amp;quot;td&amp;quot;)&lt;br /&gt;
		:attr(&amp;quot;colspan&amp;quot;, &amp;quot;2&amp;quot;)&lt;br /&gt;
		:css({&lt;br /&gt;
			[&amp;quot;text-align&amp;quot;] = &amp;quot;center&amp;quot;&lt;br /&gt;
		})&lt;br /&gt;
		:wikitext(&lt;br /&gt;
			&amp;quot;[[File:&amp;quot; .. image .. &amp;quot;|250px]]&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	local caption = getArg(&lt;br /&gt;
		args,&lt;br /&gt;
		&amp;quot;caption&amp;quot;,&lt;br /&gt;
		&amp;quot;توضیح تصویر&amp;quot;,&lt;br /&gt;
		&amp;quot;زیرنویس&amp;quot;&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if caption then&lt;br /&gt;
&lt;br /&gt;
		local c = box:tag(&amp;quot;tr&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
		c&lt;br /&gt;
			:tag(&amp;quot;td&amp;quot;)&lt;br /&gt;
			:attr(&amp;quot;colspan&amp;quot;,&amp;quot;2&amp;quot;)&lt;br /&gt;
			:css({&lt;br /&gt;
				[&amp;quot;text-align&amp;quot;]=&amp;quot;center&amp;quot;,&lt;br /&gt;
				[&amp;quot;font-size&amp;quot;]=&amp;quot;90%&amp;quot;&lt;br /&gt;
			})&lt;br /&gt;
			:wikitext(caption)&lt;br /&gt;
&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
-- MAIN&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
local function render(args)&lt;br /&gt;
&lt;br /&gt;
	local box =&lt;br /&gt;
		mw.html.create(&amp;quot;table&amp;quot;)&lt;br /&gt;
		:addClass(&amp;quot;infobox&amp;quot;)&lt;br /&gt;
		:addClass(&amp;quot;person-infobox&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
	-- TITLE&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
	local title = getArg(&lt;br /&gt;
		args,&lt;br /&gt;
		&amp;quot;name&amp;quot;,&lt;br /&gt;
		&amp;quot;نام&amp;quot;&lt;br /&gt;
	)&lt;br /&gt;
	or mw.title.getCurrentTitle().text&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	box:tag(&amp;quot;tr&amp;quot;)&lt;br /&gt;
		:tag(&amp;quot;th&amp;quot;)&lt;br /&gt;
		:attr(&amp;quot;colspan&amp;quot;,&amp;quot;2&amp;quot;)&lt;br /&gt;
		:css({&lt;br /&gt;
			[&amp;quot;background&amp;quot;]=&amp;quot;#2C5F9E&amp;quot;,&lt;br /&gt;
			[&amp;quot;color&amp;quot;]=&amp;quot;#FFFFFF&amp;quot;,&lt;br /&gt;
			[&amp;quot;text-align&amp;quot;]=&amp;quot;center&amp;quot;,&lt;br /&gt;
			[&amp;quot;font-size&amp;quot;]=&amp;quot;120%&amp;quot;,&lt;br /&gt;
			padding=&amp;quot;8px&amp;quot;&lt;br /&gt;
		})&lt;br /&gt;
		:wikitext(title)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
	-- IMAGE&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
	addImage(box,args)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
	-- PERSONAL INFO&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
	addHeader(box,&amp;quot;اطلاعات شخصی&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;نام کامل&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;full_name&amp;quot;,&lt;br /&gt;
			&amp;quot;fullname&amp;quot;,&lt;br /&gt;
			&amp;quot;نام کامل&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;زاده&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;birth_date&amp;quot;,&lt;br /&gt;
			&amp;quot;زادروز&amp;quot;,&lt;br /&gt;
			&amp;quot;تاریخ تولد&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;زادگاه&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;birth_place&amp;quot;,&lt;br /&gt;
			&amp;quot;زادگاه&amp;quot;,&lt;br /&gt;
			&amp;quot;محل تولد&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;درگذشته&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;death_date&amp;quot;,&lt;br /&gt;
			&amp;quot;تاریخ درگذشت&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;ملیت&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;nationality&amp;quot;,&lt;br /&gt;
			&amp;quot;ملیت&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
	-- SPORT INFO (temporary)&lt;br /&gt;
	---------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
	addHeader(box,&amp;quot;اطلاعات ورزشی&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;ورزش&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;sport&amp;quot;,&lt;br /&gt;
			&amp;quot;ورزش&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;باشگاه&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;club&amp;quot;,&lt;br /&gt;
			&amp;quot;باشگاه&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	addRow(&lt;br /&gt;
		box,&lt;br /&gt;
		&amp;quot;تیم&amp;quot;,&lt;br /&gt;
		getArg(args,&lt;br /&gt;
			&amp;quot;team&amp;quot;,&lt;br /&gt;
			&amp;quot;تیم&amp;quot;&lt;br /&gt;
		)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	return tostring(box)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
-- EXPORT&lt;br /&gt;
-------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
&lt;br /&gt;
	return render(&lt;br /&gt;
		getArgs(frame)&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Modir</name></author>
	</entry>
</feed>