وحدة:Wikidata/تتبع
توثيق الوحدة [أنشئ] [محو الاختزان][استخدامات] [قوالب]
local p = {}
function trim(s)
--Removes leading zeroes from value
if s:sub(1,1)=="P" then return s:sub(2)
else return s
end
end
local function category(propertyid,q,nocate)
main = '[[تصنيف:صفحات بها بيانات ويكي بيانات|'.. trim(propertyid) ..']]'
if nocate and nocate ~= ''
then -- to hide the category
return ''
elseif q and q ~= ''
then
return q..''..main
end
d = mw.text.trim(propertyid)
s = list(d)
if s then
return '[[تصنيف:'.. s ..']]'..main -- linktext(s)
end
end
local function icons(u,id,noicon,icon2)
if noicon and noicon ~= ''
then -- to hide the icon
return ''
end
local label = mw.wikibase.label(u) --{{#invoke:Wikibase|label| u }}
if label ==nil or not label
then label =''
else
end
local temp = label .. ' ('.. u ..')'
local ico = 'Twemoji_270f.svg|13px'
if icon2 and icon2 ~='' then
ico = 'Wikidata-logo.svg|20px'
size = '20px'
end
local so = 'تعديل قيمة خاصية ' .. temp ..' في ويكي بيانات'
local im =' [[ملف:'.. ico .. '|baseline|link=d:'.. (id or '') .. '#'.. u ..'|'.. so .. ']]'
local noprint= '<span class="noprint">'.. im ..'</span>'
local sup= '<sup>'.. noprint ..'</sup>'
if u then
return noprint
end
end
local function xt(e)
return 'صفحات تستخدم خاصية '.. e
end
local function wd(e)
return e .. ' من ويكي بيانات'
end
local categorieskey = {
['6'] = 'رئيس حكومة'
,['7'] = 'أخ'
,['3373'] = 'أخ أو أخت'
,['9'] = 'أخت'
,['17'] = 'بلد'
,['474'] = 'رمز اتصال بلد'
,['18'] = 'صور'
,['19'] = 'مكان ميلاد'
,['20'] = 'مكان وفاة'
,['22'] = 'والد'
,['25'] = 'والدة'
,['26'] = 'زوج أو زوجة'
,['27'] = 'مواطنة شخص'
,['35'] = 'أعلى منصب'
,['36'] = 'عاصمة'
,['37'] = 'لغة رسمية'
,['38'] = 'عملة'
,['39'] = 'منصب'
,['40'] = 'أبناء'
,['41'] = 'علم'
,['50'] = 'مؤلف'
,['53'] = 'عائلة'
,['54'] = 'فرق لاعب'
,['57'] = 'مخرج'
,['58'] = 'سيناريو'
,['61'] = 'مكتشف'
,['66'] = 'مسقط رأس شخص'
,['69'] = 'مدرسة أم'
,['84'] = 'مهندس معماري'
,['86'] = 'موسيقي'
,['94'] = 'شعار نبالة'
,['98'] = 'محرر'
,['101'] = 'مجال عمل'
,['102'] = 'حزب'
,['106'] = 'مهنة'
,['108'] = 'إدارة شخص'
,['109'] = 'توقيع'
,['112'] = 'مؤسس'
,['115'] = 'ملعب'
,['119'] = 'مكان دفن شخص'
,['123'] = 'ناشر'
,['127'] = 'مالك'
,['131'] = 'تقسيم إداري'
,['135'] = 'تيار'
,['136'] = 'نوع فني'
,['137'] = 'مشغل'
,['138'] = 'سبب تسمية'
,['140'] = 'ديانة'
,['141'] = 'حالة حفظ'
,['144'] = 'عمل أصلي'
,['154'] = 'شعار'
,['155'] = 'سبقه'
,['156'] = 'تبعه'
--,['157'] = 'قتله'
,['158'] = 'ختم'
,['159'] = 'مقر رئيسي'
,['162'] = 'منتج'
,['166'] = 'جوائز'
,['169'] = 'مدير تنفيذي لشركة'
,['170'] = 'مخترع'
,['172'] = 'عرقية شخص'
,['178'] = 'مطور'
,['78'] = 'رمز انترنت'
,['179'] = 'سلسلة'
,['181'] = 'خريطة إنتشار'
,['184'] = 'مشرف الدكتوراة'
,['185'] = 'طلاب دكتوراة'
,['186'] = 'المواد المستخدمة'
,['218'] = 'رمز أيزو 639-1'
,['219'] = 'رمز أيزو 3166-2'
,['219'] = 'رمز أيزو 639-2'
,['220'] = 'رمز أيزو 639-3'
,['221'] = 'رمز أيزو 639-6'
,['225'] = 'تسمية علمية'
,['238'] = 'رمز اياتا'
,['239'] = 'رمز ايكاو'
,['241'] = 'فرع عسكري'
,['242'] = 'خريطة'
,['243'] = 'معرف Oclc'
,['249'] = 'رمز شركة بالبورصة'
,['263'] = 'مقر رسمي'
,['264'] = 'شركة تسجيلات'
,['272'] = 'إستوديو'
,['274'] = 'صيغة جزيئية'
,['275'] = 'رخصة'
,['277'] = 'لغة برمجة'
,['279'] = 'نوع فرعي'
,['281'] = 'رمز بريدي'
,['286'] = 'مدرب'
,['287'] = 'مصمم'
,['297'] = 'رمز أيزو 3166-1'
,['300'] = 'رمز أيزو 3166-2'
,['306'] = 'نظام تشغيل'
,['345'] = 'عنوان imdb'
,['355'] = 'شركات فرعية'
,['364'] = 'لغة'
,['373'] = 'قالب تصنيف كومنز بوصلة'
,['404'] = 'نمط لعبة'
,['405'] = 'واضع تسمية علمية'
,['408'] = 'محرك'
,['421'] = 'توقيت'
,['410'] = 'رتبة عسكرية'
,['412'] = 'طبقة صوتية'
,['413'] = 'مركز لاعب'
,['414'] = 'بورصة'
,['425'] = 'مجال مهنة'
,['428'] = 'اختصار عالم نبات'
,['449'] = 'شبكة البث'
,['452'] = 'صناعة شركة'
,['463'] = 'عضو في'
,['473'] = 'رمز هاتفي'
,['493'] = 'كود ICD9'
,['494'] = 'كود ICD10'
,['495'] = 'بلد منشأ'
,['498'] = 'رمز أيزو 4217'
,['509'] = 'سبب وفاة'
,['598'] = 'قيادات شخص'
,['511'] = 'بادئة شرفية'
--,['516'] = 'محرك'
,['1035'] = 'لاحقة شرفية'
,['512'] = 'شهادة جامعية'
,['527'] = 'مكونات'
,['551'] = 'إقامة شخص'
,['555'] = 'سجل الفوز زوجي'
,['562'] = 'مصرف'
,['563'] = 'كود ICDO'
,['564'] = 'سجل الفوز فردي'
,['569'] = 'تاريخ ميلاد'
,['570'] = 'تاريخ وفاة'
,['571'] = 'تاريخ بداية'
,['574'] = 'تاريخ وضع تسمية علمية'
,['575'] = 'تاريخ تأسيس'
,['576'] = 'تاريخ نهاية'
,['577'] = 'تاريخ صدور'
,['580'] = 'تاريخ البدء'
,['582'] = 'تاريخ الانتهاء'
,['585'] = 'تاريخ'
,['607'] = 'معارك'
,['610'] = 'أعلى قمة'
,['625'] = 'إحداثيات'
,['634'] = 'كابتن'
,['641'] = 'رياضة'
,['646'] = 'قالب فريبيس يستخدم بيانات'
,['737'] = 'تأثر بشخص'
--,['746'] = 'تاريخ الاختفاء'
,['748'] = 'معين'
,['2130'] = 'ميزانية'
,['749'] = 'شركة أم'
,['750'] = 'موزع فيلم'
,['757'] = 'معرف موقع تراث'
,['769'] = 'تداخل دوائي'
,['798'] = 'تسمية عسكرية'
,['800'] = 'أهم الأعمال'
,['802'] = 'طلاب'
,['812'] = 'تخصص أكاديمي'
,['835'] = 'اختصار عالم حيوان'
,['856'] = 'موقع رسمي بوصلة'
,['915'] = 'موقع تصوير'
,['921'] = 'موضوع رئيسي'
,['935'] = 'وصلة كومنز'
,['957'] = 'معرف ISBN'
,['1036'] = 'معرف Dewey'
,['1040'] = 'مونتاج'
,['1050'] = 'مشكلة صحية'
,['1056'] = 'منتجات شركة'
,['1066'] = 'تعلم لدى'
,['1082'] = 'تعداد سكاني'
,['1399'] = 'تهمة'
,['1098'] = 'عدد المتحدثين'
,['1104'] = 'عدد الصفحات'
,['1120'] = 'وفيات'
,['1128'] = 'عدد موظفي شركة'
,['1132'] = 'عدد المشاركين'
,['1146'] = 'قالب اتحاد ألعاب القوى يستخدم بيانات'
,['1233'] = 'قالب اسفدب يستخدم بيانات'
,['1303'] = 'آلات فنان'
,['1308'] = 'شاغل منصب'
,['1308'] = 'شاغل منصب'
,['1339'] = 'إصابات'
,['1346'] = 'فائز'
,['1365'] = 'سبقه'
,['1366'] = 'تبعه'
,['1389'] = 'شهادة المنتج'
-- ,['1409'] = 'قالب أرشيف ركوب الدراجات يستخدم بيانات'
,['1412'] = 'لغة كاتب'
,['1431'] = 'منتج تنفيذي'
,['1442'] = 'صورة القبر' --not yet
,['1446'] = 'مفقودين'
,['1447'] = 'قالب سبورتس رفرنس يستخدم بيانات'
,['1448'] = 'اسم رسمي'
,['1451'] = 'شعار نصي'
,['1476'] = 'عنوان'
,['1477'] = 'اسم الولادة'
,['1532'] = 'بلد الرياضة'
,['1546'] = 'شعار وطني'
,['1559'] = 'اسم أصلي'
,['1562'] = 'عنوان أول موفي'
,['1581'] = 'مدونة'
,['1589'] = 'أخفض نقطة'
,['1590'] = 'خسائر'
,['1618'] = 'رقم لاعب'
,['1663'] = 'قالب برو سايكلنج يستخدم بيانات'
,['1705'] = 'اسم محلي'
,['1798'] = 'رمز أيزو 639-5'
,['1971'] = 'عدد الابناء'
,['1972'] = 'معرف أوبن هب يستخدم بيانات'
,['1902'] = 'معرف فنان في سبوتيفاي'
,['1995'] = 'اختصاص مرض'
,['2002'] = 'اسم المستخدم في تويتر'
,['2003'] = 'اسم المستخدم في إنستغرام'
,['2013'] = 'معرف فيسبوك'
,['2019'] = 'قالب اسم أول موفي يستخدم بيانات'
,['2035'] = 'وصلة ملف شخصي على لينكد إن'
,['2043'] = 'طول'
,['2044'] = 'الارتفاع عن سطح البحر'
,['2046'] = 'مساحة'
,['2047'] = 'مدة'
,['2049'] = 'عرض'
,['2048'] = 'ارتفاع'
,['2067'] = 'وزن'
,['2073'] = 'مدى'
,['2090'] = 'قالب باور اوف تن يستخدم بيانات'
,['2097'] = 'مدة ولاية'
,['2096'] = 'وصف صورة'
,['2101'] = 'نقطة الانصهار'
,['344'] = 'مصور سينمائي'
,['2142'] = 'إيرادات'
,['2218'] = 'ثروة شخص'
,['2250'] = 'متوسط العمر'
,['2284'] = 'سعر الصرف'
,['2386'] = 'قطر'
,['2397'] = 'معرف قناة يوتيوب'
,['2438'] = 'راوي'
,['2522'] = 'فوز شخص'
,['2534'] = 'صيغة'
,['2656'] = 'تصنيف الفيفا'
,['2716'] = 'صورة مجمعة'--not yet
,['2847'] = 'معرف جوجل+'
,['2910'] = 'إيقونة'--not yet
,['2963'] = 'معرف مؤلف على جود ريدز'
,['2969'] = 'معرف كتاب على جود ريدز'
,['3040'] = 'معرف ساوند كلاود'
,['3185'] = 'اسم مستخدم فكونتاكتي'
,['3207'] = 'معرف فاين'
,['3265'] = 'معرف ماي سبيس'
,['3267'] = 'معرف مستخدم فليكر'
,['3383'] = 'ملصق فيلم'
,['3789'] = 'اسم مستخدم على تيليجرام '
,['3836'] = 'اسم مستخدم بنترست'
,['3943'] = 'معرف تمبلر'
-- ,[' '] = ' '
-- ,[' '] = ' '
-- ,[' '] = ' '
-- ,[' '] = ' '
}
function list(s)
local I = trim(s)
local key = categorieskey[I]
if key and key ~= "" then
--mw.log("key: " .. key)
return wd(key)
else
return xt(s)
end
end
function p.pageId(frame)
if not mw.wikibase then
return nil
end
entity = mw.wikibase.getEntityObject()
if not entity
then
return nil
else
return entity.id
end
end
function p.makecategory1(options) --Main function
prop = options['property']
noicon = options['noicon'] -- options to hide the icon.
nocate = options['nocate'] -- options to hide the category.
q = options['category']
iid = options['entityId'] or options['id']
icon2 = options['icon2']
if iid == '' or not iid then
id = p.pageId()
else id = iid
end
if prop == '' or not prop then
return nil -- don't do anything if no options property.
end
propertyid = mw.ustring.gsub(prop:upper(), " ", "")
icon = icons(propertyid,id,noicon,icon2) -- function to display the icon.
cate = category(propertyid,q,nocate) -- function to display the category.
last = cate ..''.. icon
return last
end
function p.makecategory(frame) --Main function
local final = p.makecategory1(frame.args)
return final
end
function p.make1(prop,id) --Main function
if id == '' or not id then
id = p.pageId()
else id = iid
end
if prop == '' or not prop then
return nil -- don't do anything if no args property.
end
propertyid = mw.ustring.gsub(prop:upper(), " ", "")
icon = icons(propertyid,id,noicon) -- function to display the icon.
cate = category(propertyid,q,nocate) -- function to display the category.
last = cate ..''.. icon
return last
end
function p.SS(frame) --testing function
s = mw.ustring.gsub(frame.args['property']:upper(), " ", "")
s = list(s)
s = mw.text.trim(s)
if s == '' or not s then
return nil
end
q = frame.args['category']
if q == '' or not q then
return category(s)
else return q
end
end
return p