وحدة:بطاقة/أدوات/شخص
المظهر
< وحدة:بطاقة | أدوات

-- Credits:
-- Original from fr:Module:Infobox/Fonctions/Personne
-- forked by وهراني @arwiki (ar:وحدة:بطاقة/أدوات/شخص)
-- Version: 20240430
-- أدوات مشتركة لبناء قوالب بطاقات الأشخاص
local person = {}
local localdata = require 'وحدة:بطاقة/بيانات'
local item = localdata.item
local wikidata = require 'Module:Wikidata/fr'
local generic = require 'وحدة:بطاقة/أدوات'
local datemodule = require 'Module:Date'
local function nbr_in_arabic(nb,sing,dbl,plur)
if tonumber(nb) then
if(tonumber(nb) == 0) then return 'لا '.. plur
elseif(tonumber(nb) == 1) then return sing..' واحدة'
elseif(tonumber(nb) == 2) then return dbl
elseif(tonumber(nb)>2 and tonumber(nb)<10) then return nb..' '..plur
else return nb..' '..sing
end
else
return nb
end
end
-- === التواريخ
local unknowndatelabel = 'تاريخ غير معروف'
local birthdate = localdata['ميلاد'] or
localdata['تاريخ_الميلاد'] or
wikidata.formatAndCat{
entity = item,
property = 'P569',
unknownlabel = unknowndatelabel,
minprecision = 9,
conjtype = 'or',
sorttype = 'chronological'
}
local dead = wikidata.getClaims{entity = item, property = 'P570'} --utilisé comme booléen qui dit si une personne est morte pour modifier certaines élément d'affichage
local deathdate = localdata['وفاة'] or localdata['تاريخ_الوفاة']
local wddeathdate = wikidata.formatAndCat{
entity = item,
property = 'P570',
unknownlabel = unknowndatelabel,
minprecision = 9,
conjtype = 'or',
sorttype = 'chronological',
}
local function dateandplace(thedate, theplace)
if thedate and theplace
and mw.ustring.find(thedate, 'غير معروف') and mw.ustring.find(theplace, 'غير معروف')
then
theplace = nil
thedate = mw.ustring.gsub(thedate,
mw.language.getContentLanguage():ucfirst(unknowndatelabel),
'التاريخ والمكان غير معروفين')
end
if(#{thedate,theplace} == 0) then return nil end
if(type(thedate) == 'string' and type(theplace) == 'string')
then return thedate .. '<br />' .. theplace end
if(type(theplace) == 'string') then return theplace end
return thedate
end
-- الأسماء
function person.birthname(params)
if(type(params) ~= "table") then params = {} end
return {
type = params.type or 'row',
label = params.label or 'الاسم في اللغة الأم',
value = params.value or 'اسم في اللغة الأم',
wikidata = {property = 'P1559', showlang=true},
metadata = {
description = "يستخدم فقط إذا كان مختلفا عن الاسم.",
option = "",
type = "",
}
}
end
function person.othernames()
return
{type = 'multi', rows = {
{type = 'row', label = 'اسم عند الولادة',
value = {'اسم عند الولادة', 'birth name'},
wikidata = {
wikimod='Wikidata.Ca', showsomevalue = false,
formatting = 'table', rowformat='{{$0}}$R0$1',
property = 'P1477',
qualifier = 'P1721', rowsubformat1=' ($1)',
colformat0='Text with Language icon|Text=$text|Lang=$language|NoCat=y',
conjunction = '<br />'
},
metadata = {
description = "يستخدم فقط إذا كان مختلفا عن الاسم.",
option = "",
type = "",
}
},
{type = 'row', label = 'الاسم الرسمي',
value = {'اسم رسمي', 'official name'},
wikidata = {
wikimod='Wikidata.Ca',
formatting = 'table', rowformat='$0$R0$1',
property = 'P1448',
qualifier = 'P1721',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'اللقب',
value = {'لقب', 'nickname'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1449',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = " ألقاب الشخص.",
option = "",
type = "",
}
},
{type = 'row', label = 'الاسم المستعار',
value = {'اسم مستعار','pseudonym'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P742',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'اسم المجاملة',
value = {'اسم المجاملة', 'courtesy name'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1782',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1', rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'الاسم بعد الوفاة',
value = {'اسم بعد الوفاة' , 'posthumous name'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1786',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'اسم المعبد' ,
value = {'اسم المعبد' , 'temple name'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1785',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'الاسم الفني' ,
value = {'اسم فني' , 'art_name'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1787',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'الاسم المختصر',
value = {'اسم مختصر', 'short name'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1813',
qualifier = 'P1721', formatting = 'table', rowformat='$0$R0$1',
rowsubformat1=' ($1)',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{type = 'row', label = 'أسماء أخرى',
value = {'أسماء أخرى','other_name'},
metadata = {
description = "أسماء آخر مشهور بها غير تلك المذكورة في اسم واسم ولادة.",
option = "",
type = "",
}
},
}
}
end
-- الميلاد والوفاة
function person.birth() -- تاريخ الميلاد في السطر الأول ومكانه في السطر الثاني
return {
type = 'row',
label = 'الميلاد',
metadata = {
description = "تاريخ ومكان الميلاد: يفضل استخدام قالب {{تاريخ الميلاد والعمر}} للحي وقالب {{تاريخ الميلاد}} للميت. يضاف مكان الميلاد.",
option = "",
type = "",
},
value =
function()
local thedate = datemodule.dateInfobox{args = {[1] = 'naissance', [2] = birthdate or '', [3] = deathdate or wddeathdate or ''}}
local theplace = localdata['مكان_الولادة'] or localdata['مكان_الميلاد'] or
wikidata.formatAndCat({entity =item, -- affichage du nom du lieu de naissance en vigueur à la date de naissance
property= 'P19',
rank = 'best',
labelformat = function(val)
return wikidata.formatStatements{entity = val, property = "P1448", atdate = wikidata.formatStatements{entity = item, property = 'P569', displayformat = 'raw'} or 'today', numval = 1, isinlang = 'ar'} or wikidata.getLabel(val) end,
conjtype= ' أو ',
unknownlabel = "مكان غير معروف"
})
return dateandplace(thedate, theplace)
end
}
end
function person.death()
return
{type = 'multi', rows = {
{ -- الاختفاء
type = 'row',
label = 'الاختفاء',
value = {'اختفاء'},
wikidata = {property = "P746"},
metadata = {
description = "تاريخ ومكان الاختفاء",
option = "",
type = "",
}
},
{ -- الوفاة
type = 'row',
label = 'الوفاة',
value = {'وفاة','تاريخ الوفاة'},
wikidata = { wikimod='Wikidata.Ca', sep="\n",
wikidata = {property= 'P570', listrank = 'bestrank', conjunction=' أو '},
wikidata2 = {
func='yearsOld',
formatting='unit' ,
before='<span style="white-space:nowrap;">(',
after=')</span>'
},
wikidata3 = {property= 'P20', listrank = 'bestrank', conjunction=' أو ', formatting='table', qualifier1='P131 OR P17', rowformat="$0$R0$1", rowsubformat1="<small><br />($2 $3)</small>", qualifier2="P17", qualifier3="P131"}},
metadata = {
description = "تاريخ ومكان الوفاة: يفضل استخدام قالب {{تاريخ الوفاة والعمر}} ويضاف مكان الوفاة.",
option = "",
type = "",
}
}
}}
end
function person.mannerOfDeath()
return
{type = 'multi', rows = {
{
type = 'row',
label = 'ظروف الوفاة',
value = {'ظروف الوفاة','manner of death'},
wikidata = {property = 'P1196'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'سبب الوفاة', plurallabel = 'أسباب الوفاة',
value = {'سبب الوفاة','cause of death'},
wikidata = {property = 'P509'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'قاتل الشخصية',
value = {'قاتل','killer'},
wikidata = {property = 'P157', conjunction='<br />'},
metadata = {
description = "قاتل الشخصية",
option = "",
type = "",
}
},
}}
end
function person.floruit()
return {
type = 'row',
label = "فترة النشاط",
value = "فترة النشاط",
wikidata = {
wikimod='Wikidata.Ca',
property='P2031',qualifier='/P2032',qualifier2='P276',
formatting='table', rowformat= '$2 بداية من $0$1' ,
rowsubformat1= ' حتى $1'
},
wikidata2 = { property='P1317' },
metadata = {
description = "نطاق سنوات العمل أو الأعمال الرئيسية التي يمارسها / مارسها أو أي أعمال ملحوظة أخرى (استخدم هذا الشكل 1950-2000 أو 1970-الآن).",
option = "",
type = "",
}
}
end
function person.placeofburial()
return
{
type = 'row',
label = 'مكان الدفن',
value = {'مدفن', 'burial_place'},
wikidata = {
wikimod = "Wikidata.Ca",
property = "P119", listrank = "bestrank",
formatting = "table",
qualifier = "P965", qualifier2 = "P625",
rowformat = "$0$R0$1$2",
colformat1 = ", $1",
colformat2 = "<br /><small>[[ملف:GNOME Maps.svg|20x20px|link=]] {{Map draw| class = no-icon| type=maplink|$lat,$lon|zoom=6|text=على الخريطة}}</small>"
},
metadata = {
description = "من المفضل ذكر المدينة والمنطقة أو الولاية والدولة (يجب ذكر المعلومات حسب الوضع الحالي وليس وقت الدفن).",
option = "",
type = "",
}
}
end
function person.nationality()
return {
type = 'row',
label = 'بلد المواطنة',
plurallabel = 'بلدان المواطنة',
value = {'مواطنة','جنسية','الجنسية','nationality','citizenship'},
wikidata = {wikimod ='Wikidata.Ca', property = 'P27',showDate = 'true', listrank="bestrank",conjunction="<br />"},
metadata = {
description = "الجنسية / الجنسيات التي يحملها الشخص.",
option = "",
type = "",
}
}
end
function person.nativelanguage()
return
{
type = 'row',
label = '[[لغة أم|اللغة الأم]]',
value = {'اللغة الأم','اللغة_الأم','first language','langue maternelle'},
wikidata = {property = 'P103'},
metadata = {
description = "",
option = "",
type = "",
}
}
end
-- Domiciles
function person.places()
return
{type = 'multi', rows = {
{
wikimod = "Wikidata.Ca",
type = 'row',
label = 'الإقامة',
--plurallabel = 'الإقامة',
value = {'إقامة','الإقامة','residence','domicile'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P263 OR P551',
showDate = 'true',
sorttype= 'chronological'},
metadata = {
description = "المكان الذي يقيم / أقام به الشخص، من المفضل ذكر المدينة والمنطقة أو الولاية والدولة والتاريخ.",
option = "",
type = "",
}
},
}}
end
-- الحياة المهنية
function person.education()
return {
type = 'row',
label = '[[مدرسة أم|المدرسة الأم]]',
value = {'المدرسة الأم','alma_mater','éducation', 'formation'},
wikidata = {
wikimod='Wikidata.Ca',
property = 'P69', qualifier = 'P812 OR P512',
sorttype= 'chronological', showDate = 'true',
formatting='table', rowformat='* $0$R0 $1',
rowsubformat1='<small><br />$1</small>'
},
metadata = {
description = "يذكر آخر مؤسسة تعليم عالي انتسب لها هذا الشخص.",
option = "",
type = "",
}
}
end
function person.occupation()
local speciallabels = {
f = {
['Q33999'] = '[[ممثلة]]',
['Q10798782'] = '[[ممثلة]]',
['Q10800557'] = '[[ممثلة]]',
['Q2405480'] = '[[ممثلة]]',
['Q2259451'] = '[[ممثلة]]',
['Q948329'] = '[[ممثلة]]'
},
m = {
['Q33999'] = '[[ممثل]]',
['Q10798782'] = '[[ممثل]]',
['Q10800557'] = '[[ممثل]]',
['Q10798782'] = '[[ممثل]]',
['Q2405480'] = '[[ممثل]]',
['Q2259451'] = '[[ممثل]]',
['Q948329'] = '[[ممثل]]'
}
}
return {
type = 'row',
label = 'المهنة', plurallabel = 'المهن',
value = {'مهنة', 'مهن','occupation'},
wikidata = {
wikimod = 'Wikidata.Ca', conjunction='<br />',
property = 'P106', -- OR P425
showDate = 'true', sorttype= 'chronological', case='gender'
},
metadata = {
description = " العمل أو الأعمال التي يمارسها / مارسها الشخص.",
option = "",
type = "",
}
}
end
function person.employer()
return {
type = 'row',
label = 'عمل عند',
value = {'عمل عند','employer'},
wikidata = {
wikimod = 'Wikidata.Ca', conjunction='<br />',
property = 'P108',
showDate = 'true', sorttype= 'chronological'
},
metadata = {
description = "الشركة / الشركات التي عمل بها كموظف.",
option = "",
type = "",
}
}
end
function person.victories()
return {
type = 'row',
label = 'الانتصارات',
value = {'انتصار','victoire'},
wikidata = {
wikimod = 'Wikidata.Ca',
property = 'P2522',
sorttype= 'chronological', showDate = 'true',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
}
end
function person.officialposition()
return {type = 'table', title= 'المناصب', rows = {
{
type = 'row1col',
value = { 'المناصب'},
wikidata = {
wikimod = 'Wikidata.Ca',
formatting="table", listrank = 'bestrank',
property="P39",
case0="gender",
colformat0="ucfirst",
qualifier = "P580",
rowsubformat1 = "$1 – ",
qualifier2= "P582",
qualifier3= "P1365",
rowsubformat3="<br />→ $3",
qualifier4= "P1366",
rowsubformat4="– $4 ←",
qualifier5= "P1545",
rowsubformat5="($5)",
case5 = "ordinal",
qualifier6= "P748 OR P1027",
rowsubformat6 ='<br /><div style="float: right;font-size:smaller;">معين من قبل: $6</div>',
qualifier7 ="P642 OR P108 OR P2389",
qualifier8="P748",
qualifier9="P158 OR P94 OR P642/P158 OR P642/P94 OR P39/P158 OR P39/P94",
rowsubformat9="[[ملف:$9|25x30px|link=]]",
qualifier10="P708",
rowsubformat10='<br /><div style="float: right;font-size:smaller;">الأبرشية: $10</div> ',
qualifier11="P5054",
rowsubformat11='<br /><div style="float: right;font-size:smaller;">مجلس الوزراء: $11</div>',
qualifier12="P1534",
rowsubformat12=' <span style="font-size:85%;">($12)</span>',
qualifier13="P2868",
rowsubformat13='دورة: $13<br /> ',
qualifier14="P2937",
rowsubformat14='<br /><div style="float: right;font-size:smaller;">الفترة البرلمانية: $14</div>',
rowformat='<div style="display: table;width:100%;text-align:center;background-color:#F0F0F0;">$9 $0 $7 $5</div> <div style="text-align:center;">$13 $1 $2$12 $3 $4 $14 $11 $10 $6</div>',
tablesort="1",
sorting="-1"
},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
function person.nobilitytitle()
return {
type = 'row',
label = 'لقب نبيل',
value = {'لقب نبيل','nobility_title'},
wikidata = {
wikimod = 'Wikidata.Ca',
property = 'P97',
sorttype= 'chronological', showDate = 'true',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
}
end
function person.honorifictitle()
return {type = 'multi', rows = {
{
type = 'row',
label = 'لقب شرفي',
value = {'لقب شرفي','honorific_title'},
wikidata = {
wikimod = 'Wikidata.Ca',
property = 'P511',
sorttype= 'chronological', showDate = 'true',
conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
function person.grave()
return {
type = 'images',
imageparameters = {'قبر','grave','tombe'},
defaultimages = nil,
defaultupright = 1,
uprightparameter = 'upright grave',
captionparameter = 'تعليق القبر',
defaultcaption = 'صورة للقبر',
wikidata = { property = 'P1442',},
metadata = {
description = "",
option = "",
type = "",
}
}
end
person.tombe = person.grave
function person.plaque()
return {
type = 'images',
imageparameters = {'لوحة تذكارية','plaque'},
defaultimages = nil,
defaultupright = 1,
uprightparameter = 'upright plaque',
captionparameter = 'تعليق لوحة تذكارية',
defaultcaption = 'لوحة تذكارية',
property = 'P1801',
numval = 1,
metadata = {
description = "",
option = "",
type = "",
}
}
end
function person.monogram()
return {
type = 'images',
imageparameters = {'مونغرام','monogram'},
defaultimages = nil,
defaultsize = '100px',
captionparameter = 'تعليق المونغرام',
defaultcaption = 'المونغرام',
property = 'P1543',
numval = 1,
metadata = {
description = "",
option = "",
type = "",
}
}
end
function person.politicalparty()
return {
type = 'row',
value = {'الحزب','الحزب السياسي','party','parti politique'},
label = '[[حزب سياسي|الحزب السياسي]]',
plurallabel = '[[حزب سياسي|الأحزاب السياسية]]',
wikidata = {
wikimod = 'Wikidata.Ca', property = 'P102', sorttype= 'chronological',
showDate = 'true', conjunction = '<br />'
},
metadata = {
description = "",
option = "",
type = "",
}
}
end
person.memberof = generic.memberof
-- Influences
function person.influencedby()
return {
type = 'row',
label = 'تأثر بـ',
value = {'تأثر','influences','تأثر بـ','influenced_by'},
wikidata = {property = 'P737'},
metadata = {
description = "الأشخاص أو المجموعات أو الأفكار التي تأثر بها الشخص، الأمثلة الواضحة والملحوظة فقط (تجنب التخمين).",
option = "",
type = "",
}
}
end
function person.influenced()
return {
type = 'row',
label = 'أثر في',
value = {'تأثير','influenced','أثر في','a influencé', 'influence de'},
metadata = {
description = "الأشخاص أو المجموعات أو الأفكار التي أثر بها الشخص، الأمثلة الواضحة والملحوظة فقط (تجنب التخمين).",
option = "",
type = "",
}
}
end
-- الانتماءات
function person.movement()
return
{
type = 'row',
label = 'الحركة',
value = {'حركة','تيار','movement'},
wikidata = {wikimod='Wikidata.Ca', property = 'P135', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "الحركات التي انتسب إليها.",
option = "",
type = "",
}
}
end
-- الديانة
function person.religion()
return {type = 'multi', rows = {
{
type = 'row',
label = '[[دين (معتقد)|الديانة]]',
plurallabel = '[[دين (معتقد)|الديانات]]',
value = {'ديانة','الديانة','الدين','دين','religion'},
wikidata = {wikimod = 'Wikidata.Ca',
property = 'P140', sorttype= 'chronological', showDate = 'true',
formatting='table', rowformat='$0$R0', blacklist0 = 'Q7066'},
metadata = {
description = "الديانة التي يعتنقها، يستخدم فقط عند الاستشهاد بمصادر موثوقة.",
option = "",
type = "",
}
},
{
type = 'row',
label = 'تاريخ المعمودية',
value = 'تاريخ المعمودية',
property = 'P1636',
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'العراب',
plurallabel = 'العرابون',
value = 'عراب',
property = 'P1290',
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الاسم الديني',
plurallabel = 'الأسماء الدينية',
value = 'اسم ديني',
wikidata={property = 'P1635',wikimod='Wikidata.Ca',},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'النظام الديني',
plurallabel = 'الأنظمة الدينية',
value = 'نظام ديني',
wikidata={wikimod='Wikidata.Ca',property = 'P611',},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'المُقدِّس',
plurallabel = 'المُقدِّسون',
value = 'مقدس',
property = 'P1598',
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'يعظمه',
value = {'يعظمه','worshipped by'},
wikidata = {
property = 'P1049',
},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'رتبة التقديس',
value = {'رتبة التقديس','sainthood status'},
wikidata = {
property = 'P411',
},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- التاريخ العسكري
function person.military()
return {type = 'multi', rows = {
{
type = 'row',
label = 'الفرع العسكري',
plurallabel = 'الفروع العسكرية',
value = {'فرع عسكري','military branch'},
wikidata = {wikimod='Wikidata.Ca', property = 'P241', showDate = 'true', sorttype= 'chronological'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الرتبة العسكرية',
plurallabel = 'الرتب العسكرية',
value = {'رتبة عسكرية','military_rank'},
wikidata = {wikimod='Wikidata.Ca', property = 'P410', showDate = 'true', sorttype= 'chronological', conjunction ='<br />'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'النزاعات العسكرية',
value = {'نزاع','conflict'},
wikidata = {wikimod='Wikidata.Ca', property = 'P607', conjtype = 'new line', showDate = 'true', sorttype= 'chronological'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- الرياضة
function person.sport()
return {type = 'multi', rows = {
{
type = 'row',
label = 'الجنسية الرياضية',
plurallabel = 'التخصصات',
value = {'جنسية رياضية','country_sport'},
wikidata = {wikimod = 'Wikidata.Ca', property = 'P1532', showDate='true'},
metadata = {
description = "جنسية البلد الذي يمثله رياضيا.",
option = "",
type = "",
}
},
{
type = 'row',
label = 'مركز اللاعب',
value = {'مركز اللاعب','player position'},
wikidata = {property = 'P413'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'التخصص الرياضي',
value = {'تخصص رياضي','sports discipline'},
wikidata = {property = 'P2416'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'أفضل أداء رياضي',
value = {'أفضل أداء','personal record'},
wikidata = {wikimod = 'Wikidata.Ca',
listrank = 'bestrank',
formatting = 'table',
tablesort = 1,
sorting = -1,
property = 'P2415',
colformat0 = 'unitcode',
qualifier = 'P585',
rowsubformat1 = '($1)',
colformat1 = 'Y',
qualifier2 = 'P276',
rowsubformat2 = ' ← $2',
qualifier3 = 'P2416 OR P641 OR /P2416 OR /P641',
qualifier4 = 'P1013/P2910',
rowsubformat4 = '$4',
colformat4 = '[[ملف:$1|18px]]',
rowformat = '<div style="background: #eeeeee;"><small>$3</small></div><div>$0 $4$2 $1</div>',
separator = '<hr>',
conjunction = '<hr>'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'يد اللعب',
value = 'يد اللعب',
wikidata = {property = 'P741'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'يقذف بـ',
value = 'يقذف',
wikidata = {property = 'P423'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'أول فريق',
value = 'أول فريق',
wikidata = {
wikimod = 'Wikidata.Ca',
property = 'P647',
qualifier='P585', qualifier2='P1836',
formatting = 'table', rowformat = '$0$R0<small>$2 $1</small>',
rowsubformat1='($1)', rowsubformat2=', $2' ,
case2='ordinal' , tablesort=1
},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الفريق',
plurallabel = 'الفرق',
value = 'فريق',
wikidata = { wikimod='Wikidata/fr',
property = 'P54',
sorttype= 'chronological',
conjtype = '*',
statementformat = function(statement)
local str = wikidata.formatStatement(statement, {showDate = true})
local compets = wikidata.getFormattedQualifiers(statement, {'P1350'})
compets = nbr_in_arabic(compets,'مباراة','مباراتان','مباريات')
local points = wikidata.getFormattedQualifiers(statement, {'P1351'})
if points and tonumber(points)> 0 then
points =nbr_in_arabic(points,'نقطة مسجلة','نقطتان مسجلتان',"نقاط مسجلة")
else points = nil
end
local qualifiers = table.concat({compets, points},'<br />')
if qualifiers then
str= str .. ' <small><br />' .. qualifiers .. '</small>'
end
return str
end
},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'مباريات المنتخب الوطني',
value = 'مباريات المنتخب',
wikidata = {property = 'P1129', numval = 1},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'ألقاب في الشطرنج',
--plurallabel = 'Titres aux échecs',
value = {'ألقاب في الشطرنج','chess title'},
wikidata = {wikimod='Wikidata.Ca', property = 'P2962', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'تصنيف إيلو',
value = {'تصنيف إيلو','elo rating'},
wikidata = {wikimod='Wikidata.Ca', property = 'P1087', numval = '3', sorttype = 'inverted', conjunction = '<br />', showDate = 'true', precision = 'month', removedupes = true},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الأرقام المحطمة',
--plurallabel = 'Records détenus',
value = {'أرقام محطمة','record held'},
wikidata = {wikimod='Wikidata.Ca', property = 'P1000', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'المدرب',
plurallabel = 'المدربون',
value = {'مدرب','coach'},
wikidata = {wikimod='Wikidata.Ca', property = 'P286', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'السائق المساعد',
--plurallabel = 'Copilotes',
value = {'سائق مساعد','copilot'},
wikidata = {wikimod='Wikidata.Ca', property = 'P2095', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = '[[رعاية تجارية|الراعي]]',
--plurallabel = 'Sponsors',
value = {'راعي','sponsor'},
wikidata = {wikimod='Wikidata.Ca', property = 'P859', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- التواجد في الفضاء
function person.space()
return {type = 'multi', rows = {
{
type = 'row',
label = 'الرحلات الفضائية',
value = {'رحلات_فضاء','space_mission'},
wikidata = {wikimod = 'Wikidata.Ca',
property='P450',
qualifier='P450/P154 or P450/P94',
qualifier2='P450',
formatting='table',
separator=', ',
rowformat ='$1$0$R0',
rowsubformat1 ='[[ملف:$1|18px|link=$2]]'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'المكوث في الفضاء',
value = {'مكوث_في_الفضاء','time_in_space'},
wikidata = {wikimod='Wikidata.Ca', property = 'P2873', formatting='durationh:m:s'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'خروج فضائي',
value = {'خروج_فضائي','spacewalk'},
wikidata = {wikimod='Wikidata.Ca',
formatting='table',
tablesort='1/2',
sorting='-1',
property='P793',
whitelist0='Q182020', -- extravehicular activity
qualifier='P585', -- date
qualifier2='P580', -- start date
qualifier3='P582', -- end date
qualifier4='P518', -- apply to
qualifier5='P1114', -- quantity
qualifier6='P2047', -- durada
rowsubformat1='$1 ',
rowsubformat2='$2-$3 ',
rowsubformat4='$4:',
rowsubformat6=' ($6)',
colformat6='duration',
rowformat='$1$2$4$5$6',
},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- أشخاص على علاقة
function person.contacts()
return {type = 'multi', rows = {
{
type = 'row',
label = localdata['درس_عند'] or 'درس عند',
--plurallabel = 'Maîtres',
value = {'مدرس', 'مدرسون'},
wikidata = {wikimod='Wikidata.Ca', property = 'P1066', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'تلميذه/طالبه',
plurallabel = 'تلاميذه/طلابه',
value = {'طلاب', 'تلاميذ'},
wikidata = {wikimod='Wikidata.Ca',property = 'P802', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'المشرف على الرسالة',
--plurallabel = 'Directeurs de thèse',
value = 'مشرف على الرسالة',
wikidata = {wikimod='Wikidata.Ca',property = 'P184', sorttype= 'chronological', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label ="الموكل",
value = 'موكل',
wikidata = {property = 'P1875'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الشريك',
plurallabel = 'الشركاء',
value = 'شريك',
wikidata = {property = 'P1327'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'شخص هام',
--plurallabel = 'Personnes liées',
value = 'شخص هام',
wikidata = {property = 'P3342', qualifier1 = 'P794'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- موسيقى
function person.music()
return {type = 'multi', rows = {
{
type = 'row',
label = '[[طبقة صوتية|الطبقة الصوتية]]',
value = 'طبقة صوتية',
property = 'P412',
metadata = {
description = "درجات تردد الصوت البشري عند الكلام والغناء",
option = "",
type = "",
example = "تينور"
}
},
{
type = 'row',
label = 'التخصص الصوتي',
value = 'تخصص صوتي',
property = 'P1731',
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'عازف على',
--plurallabel = 'آلات',
value = {'آلة موسيقية','musical instrument'},
wikidata = {property = 'P1303'},
metadata = {
description = "الآلات التي يستعملها العازف",
option = "",
type = "",
example = "بيانو",
}
},
{
type = 'row',
label = 'شركة التسجيلات',
plurallabel = 'شركات التسجيلات',
value = 'شركة التسجيلات',
wikidata = {wikimod='Wikidata.Ca',property = 'P264', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- ضحايا
function person.victims()
return {type = 'multi', rows = {
{
type = 'row',
label = 'الضحايا',
value = {'ضحايا','victims'},
wikidata = {property = 'P1345'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- الأحكام القضائية
function person.penalties()
return {type = 'multi', rows = {
{
type = 'row',
label = 'الإدانة بتهم',
value = {'أدين_بتهمة','convicted_of'},
wikidata = {wikimod='Wikidata.Ca',property = 'P1399', showDate = 'true'},
metadata = {
description = "يستخدم فقط للمجرمين المدانين، التهم المنسوبة له، يستخدم فقط عند الاستشهاد بمصادر موثوقة.",
option = "",
type = "",
}
},
{
type = 'row',
label = 'عقوبة قضائية',
value = {'عقوبة','sentence'},
wikidata = {wikimod='Wikidata.Ca',property = 'P1596', showDate = 'true'},
metadata = {
description = "العقوبة التي يتلقاها / تلقاها، يستخدم فقط عند الاستشهاد بمصادر موثوقة.",
option = "",
type = "",
}
},
{
type = 'row',
label = 'مكان السجن',
plurallabel = 'أمكنة السجن',
value = {'سجن','prison'},
wikidata = {wikimod='Wikidata.Ca',property = 'P2632', showDate = 'true'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- أبعاد جسمانية
function person.appearance()
return {type = 'multi', rows = {
{
type = 'row',
label = 'الطول',
value = {'طول','height'},
wikidata = {wikimod='Wikidata.Ca',property = 'P2048', formatting='unitcode'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الوزن',
value = {'وزن','weight'},
wikidata = {wikimod='Wikidata.Ca',property = 'P2067', formatting='unitcode'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'اليد المستخدمة',
value = {'يد','hand'},
wikidata = {wikimod='Wikidata.Ca',property = 'P552'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الشعر',
value = {'شعر','hair'},
wikidata = {wikimod='Wikidata.Ca',property = 'P1884'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'العيون',
value = {'عيون','eyecolor'},
wikidata = {wikimod='Wikidata.Ca',property = 'P1340'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- العائلة
function person.family()
return
{type = 'multi', rows = {
{ type = 'row',
label = 'العائلة',
value = {'عائلة','family'},
wikidata= { property = 'P53'},
metadata = {
description = "اسم العائلة المشهورة التي ينتمي إليها.",
option = "",
type = "",
}},
{ type = 'row',
label = 'الأب',
value = {'أب','father'},
wikidata = {property = 'P22', conjtype = ' أو '},
metadata = {
description = "اسم الوالد",
option = "",
type = "",
}
},
{ type = 'row',
label = 'الأم',
value = {'أم','mother'},
wikidata = {property = 'P25', conjtype = ' أو '},
metadata = {
description = "اسم الوالدة",
option = "",
type = "",
}
},
{ type = 'row',
label = 'الصهر',
plurallabel = 'الأصهار',
value = {'صهر','stepparent'},
property = 'P3448',
metadata = {
description = "",
option = "",
type = "",
}
},
{ type = 'row',
label = 'الإخوة',
value = {'إخوة','sibling'},
wikidata = {property = 'P3373'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الزوج',
plurallabel = 'الأزواج',
value = {'زوج','زوجة','أزواج','spouse','husband', 'wife'},
wikidata = {
wikimod='Wikidata.Ca',
formatting = 'table' ,
property='P26', qualifier='P1534',
showDate='true',
rowformat = '$0 <small>$1</small>',rowsubformat1=', $1'
},
metadata = {
description = ' اسم الزوج / الزوجة، يذكر بالشكل التالي "الاسم (1950-الآن)" أو "الاسم (1970-1999)".',
option = "",
type = "",
}
},
{
type = 'row',
label = 'الأبناء',
wikidata = {
wikimod='Wikidata.Ca',
property='P40', formatting='table',
qualifier='P1545',
qualifier2='P1039' ,
rowformat='$0$R0$2',
rowsubformat2=' ($2)',
colformat2='lcfirst',
tablesort=1 ,
conjunction ='<br />'
},
metadata = {
description = "عدد الأولاد أو لائحة بأسمائهم (تجنب ذكر أسماء أولاد الشخص إذا كان حيا احتراما للخصوصية إلا إذا كان الولد ملحوظا يشكل مستقل).",
option = "",
type = "",
}
},
{
type = 'row',
label = 'الأقارب',
value = 'أقارب',
wikidata = {
wikimod='Wikidata.Ca',
property = 'P1038',
qualifier='P1039',
formatting = 'table',
rowformat='$0 $1',
rowsubformat1='<small>$1</small>'
},
metadata = {
description = "أسماء الأقارب. وتوضع العلاقة بين قوسين بعد الاسم ( عم، الخ).",
option = "",
type = "",
}
}
}}
end
-- الرق
function person.slavery()
return {type = 'multi', rows = {
{
type = 'row',
label = 'عبد/حر',
value = 'عبد حر',
wikidata = {
wikimod='Wikidata.Ca',
property = 'P3716',
showDate = 'true',
formatting='table' , rowformat='$0', whitelist0='Q12773225/Q841571'
},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = 'المالك',
plurallabels = 'الملاك',
value = 'مالك',
wikidata = {property = 'P127'},
metadata = {
description = "",
option = "",
type = "",
}
},
}}
end
-- الأعمال
function person.works(params)
return
{type = 'multi', rows ={
{
type = 'row',
label = 'أهم الأعمال',
value = {'أهم الأعمال','notable work'},
wikidata = {
wikimod = "Wikidata.Ca",
property='P800',
qualifier= 'P571 OR P577 OR P585 OR P800/P571 OR P800/P577 OR P800/P1191 OR P800/P580',
qualifier2= 'P800/P582',
formatting = 'table' ,
rowformat = '*$1 $0',
rowsubformat1='<small>($1$2)</small>',
rowsubformat2='-$2', tablesort=1 ,
colformat1='Y' ,colformat2='Y' ,conjunction='<br />'
},
metadata = {
description = "عناوين الأعمال البارزة التي قام بها (منشورات، مؤلفات، تماثيل، .إلخ).",
option = "",
type = "",
}
}}
}
end
function person.filmography()
return
{
type = 'row',
label = 'أشهر الأفلام',
value = {'أشهر الأفلام','filmography'},
wikidata = {property = 'P1283'} ,
metadata = {
description = "عناوين الأفلام البارزة التي قام بها",
option = "",
type = "",
}
}
end
function person.discography()
return
{
type = 'row',
label = 'أشهر الأغاني',
value = {'أشهر_الأغاني','discography'},
wikidata = {property = 'P358'},
metadata = {
description = "عناوين الأغاني المشهورة التي أداها",
option = "",
type = "",
}
}
end
-- التوقيع
function person.signature(default)
local name = localdata.name or mw.title.getCurrentTitle().text
local alt = 'توقيع ' .. name
return {
type = 'images',
imageparameters = {'توقيع','signature'},
defaultimage = default,
captionparameter = 'تعليق التوقيع',
defaultcaption = 'التوقيع',
uprightparameter = 'upright signature',
defaultupright = 0.5,
defaultalt = alt,
property = 'P109',
numval = 1,
metadata = {
description = "صورة التوقيع (ضع اسم الملف فقط دون السابقة «ملف:» أو «File:»)",
example = "abc_signature.jpg",
option = "",
type = "wiki-file-name",
}
}
end
-- تسجيل صوتي
function person.voice()
return generic.selectSound({
defaultcaption = 'تسجيل صوتي',
captionparameter = 'تعليق الصوت',
value = {'صوت','voice'},
defaultsize = '280',
property = 'P990',
metadata = {
description = "ملف تسجيل صوتي (ضع اسم الملف فقط دون السابقة «ملف:» أو «File:»)",
example = "abc_voice.ogg",
option = "",
type = "wiki-file-name",
}
})
end
function person.languages()
return {type = 'multi', rows = {
{
type = 'row',
label = "اللغة المستعملة",
value = {'لغة','language'},
wikidata = {property = 'P1412'},
metadata = {
description = "",
option = "",
type = "",
}
},
{
type = 'row',
label = "لغة الكتابة",
value = {'لغة الكتابة','writing language'},
wikidata = {property = 'P6886'},
metadata = {
description = "",
option = "",
type = "",
}
}
}}
end
function person.haswrittenfor()
return {
type = 'row',
label ='محرر لدى',
value = 'محرر لدى',
wikidata = {
wikimod='Wikidata.Ca',property = "P6872",
showdate = true
},
metadata = {
description = "",
option = "",
type = "",
}
}
end
function person.worth()
return {
type = 'row',
label ='الثروة',
value = {'ثروة', 'worth'},
wikidata = {wikimod = 'Wikidata.Ca',
formatting='table', list='firstrank',
property= 'P2218 or P2121', qualifier= 'P585',
rowformat='$0 $1', rowsubformat1='<small>($1)</small>',
colformat0='unitcode', convert0='M'
},
metadata = {
description = "تقدير للثروة مع ذكر سنة التقدير",
option = "",
type = "",
}
}
end
function person.works_in_collection()
return {
type = 'row',
label ='أعمال في مجموعة',
value = {'أعمال في مجموعة', 'works in collection'},
wikidata = {
wikimod='Wikidata.Ca',
property='P6379', formatting='table',
qualifier1='P6241 OR P1436',
qualifier2='P6241',
qualifier3='P1436',
rowformat ='* $0$R0 $1',
conjunction='<br />',
rowsubformat1='<small>$2$3</small>',
rowsubformat2='<br />:: منشئ : $2',
rowsubformat3='<br />:: حجم : $3',
},
metadata = {
description = "",
option = "",
type = "",
}
}
end
function person.archivesat()
return {
type = 'row',
label ='مكان حفظ الأعمال',
value = {'مكان الحفظ', 'archive location'},
wikidata = {
wikimod='Wikidata.Ca',
property='P485', formatting='table',
qualifier='P217',
qualifier2='P6224',
qualifier3='P973',
qualifier4='P518',
rowformat ='* $0$R0$2 $4 $1 $3',
conjunction='<br />',
rowsubformat1=' $1',
rowsubformat2=', $2',
rowsubformat3='[$3]',
rowsubformat4='← $4'
},
metadata = {
description = "مكان حفظ الأعمال",
option = "",
type = "",
}
}
end
function person.significant_events()
return {
type = 'row',
label ='أحداث مهمة',
value = {'أحداث مهمة', 'significant_events'},
wikidata = { wikimod='Wikidata.Ca',
formatting = 'table',
tablesort = '1/2',
sorting = '-1',
property = 'P793',
blacklist0 = 'Q182020', -- extravehicular activity in astronaut block
qualifier = 'P580 or P793/P580 or P585 or P793/P585', -- start date or date
qualifier2 = 'P582 or P793/P582', -- end date
qualifier3 = 'P710 or P1346 or P3279 or P748 or P1598', -- participant, appointed by/ consecrator
qualifier4 = 'P276', -- location
qualifier5 = 'P518', -- apply to
qualifier6 = 'P770', -- cause destruct.
qualifier7 = 'P828', -- has caused
rowsubformat1 = '$1$2',
rowsubformat2 = '-$2',
rowsubformat3 = ', per $3',
rowsubformat4 = ' ($4)',
rowsubformat5 = ': $5',
rowsubformat6 = '<br/>سبب التدمير: $6',
rowsubformat7 = '<br/>السبب: $7',
rowformat = '* <small>$1</small> : $0$5$4$3$6$7',
},
metadata = {
description = "أهم الأحداث التي شهدها",
option = "",
type = "",
}
}
end
person.title= generic.title
-- موقع الويب
person.website = generic.website
person.blog = generic.blog
-- التلفظ
person.prononciation = generic.pronunciation
person.awards = generic.awards
-- الصور
person.mainimage = generic.mainimage
person.blason = generic.coat_of_arms
person.sceau = generic.seal
return person