وحدة:Wikidata/تتبع
يمكن إنشاء صفحة توثيق الوحدة في وحدة: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 = {
['7'] = 'أخ'
,['9'] = 'أخت'
,['18'] = 'صور'
,['19'] = 'مكان ميلاد'
,['20'] = 'مكان وفاة'
,['22'] = 'والد'
,['25'] = 'والدة'
,['27'] = 'مواطنة شخص'
,['37'] = 'لغة رسمية'
,['38'] = 'عملة'
,['39'] = 'منصب'
,['41'] = 'علم'
,['50'] = 'مؤلف'
,['53'] = 'عائلة'
,['54'] = 'فرق لاعب'
,['57'] = 'مخرج'
,['58'] = 'سيناريو'
,['61'] = 'مكتشف'
,['66'] = 'مسقط رأس شخص'
,['69'] = 'مدرسة أم'
,['84'] = 'مهندس معماري'
,['86'] = 'موسيقي'
,['94'] = 'شعار نبالة'
,['98'] = 'محرر'
,['101'] = 'مجال عمل'
,['106'] = 'مهنة'
,['112'] = 'مؤسس'
,['115'] = 'ملعب'
,['119'] = 'مكان دفن شخص'
,['123'] = 'ناشر'
,['127'] = 'مالك'
,['136'] = 'نوع فني'
,['137'] = 'مشغل'
,['138'] = 'سبب تسمية'
,['140'] = 'ديانة'
,['141'] = 'حالة حفظ'
,['144'] = 'عمل أصلي'
,['154'] = 'شعار'
,['155'] = 'سبقه'
,['156'] = 'تبعه'
,['159'] = 'مقر رئيسي'
,['162'] = 'منتج'
,['166'] = 'جوائز'
,['169'] = 'مدير تنفيذي لشركة'
,['170'] = 'مخترع'
,['172'] = 'عرقية شخص'
,['178'] = 'مطور'
,['179'] = 'سلسلة'
,['184'] = 'مشرف الدكتوراة'
,['185'] = 'طلاب دكتوراة'
,['218'] = 'رمز أيزو 639-1'
,['219'] = 'رمز أيزو 3166-2'
,['219'] = 'رمز أيزو 639-2'
,['220'] = 'رمز أيزو 639-3'
,['221'] = 'رمز أيزو 639-6'
,['225'] = 'تسمية علمية'
,['241'] = 'فرع عسكري'
,['243'] = 'معرف Oclc'
,['249'] = 'رمز شركة بالبورصة'
,['263'] = 'مقر رسمي'
,['264'] = 'شركة تسجيلات'
,['274'] = 'صيغة جزيئية'
,['277'] = 'لغة برمجة'
,['279'] = 'نوع فرعي'
,['286'] = 'مدرب'
,['287'] = 'مصمم'
,['297'] = 'رمز أيزو 3166-1'
,['300'] = 'رمز أيزو 3166-2'
,['306'] = 'نظام تشغيل'
,['344'] = 'مصور سينمائي'
,['355'] = 'شركات فرعية'
,['364'] = 'لغة'
,['373'] = 'قالب تصنيف كومنز بوصلة'
,['404'] = 'نمط لعبة'
,['405'] = 'واضع تسمية علمية'
,['408'] = 'محرك'
,['412'] = 'طبقة صوتية'
,['413'] = 'مركز لاعب'
,['425'] = 'مجال مهنة'
,['428'] = 'اختصار عالم نبات'
,['434'] = 'معرف ميوزك برينز للفنانين'
,['449'] = 'شبكة البث'
,['452'] = 'صناعة شركة'
,['463'] = 'عضو في'
--,['480'] = 'معرف فيلمافينيتي'
,['493'] = 'كود ICD9'
,['494'] = 'كود ICD10'
,['498'] = 'رمز أيزو 4217'
,['509'] = 'سبب وفاة'
,['598'] = 'قيادات شخص'
,['1035'] = 'لاحقة شرفية'
,['512'] = 'شهادة جامعية'
,['527'] = 'مكونات'
,['555'] = 'سجل الفوز زوجي'
,['563'] = 'كود ICDO'
,['564'] = 'سجل الفوز فردي'
,['569'] = 'تاريخ ميلاد'
,['570'] = 'تاريخ وفاة'
,['574'] = 'تاريخ وضع تسمية علمية'
,['607'] = 'معارك'
,['625'] = 'احداثيات'
,['634'] = 'كابتن'
,['646'] = 'قالب فريبيس يستخدم بيانات'
,['648'] = 'معرف المكتبة المفتوحة'
--,['746'] = 'تاريخ الاختفاء'
,['748'] = 'معين'
,['749'] = 'شركة أم'
,['750'] = 'موزع فيلم'
,['757'] = 'معرف موقع تراث'
,['802'] = 'طلاب'
,['812'] = 'تخصص أكاديمي'
,['835'] = 'اختصار عالم حيوان'
--,['856'] = 'موقع رسمي بوصلة'
,['915'] = 'موقع تصوير'
,['921'] = 'موضوع رئيسي'
,['935'] = 'وصلة كومنز'
,['957'] = 'معرف ISBN'
,['1006'] = 'معرف القاموس الوطني لأسماء المؤلفين'
,['1036'] = 'معرف Dewey'
,['1040'] = 'مونتاج'
,['1050'] = 'مشكلة صحية'
,['1056'] = 'منتجات شركة'
,['1098'] = 'عدد المتحدثين'
,['1104'] = 'عدد الصفحات'
,['1120'] = 'وفيات'
,['1128'] = 'عدد موظفي شركة'
,['1132'] = 'عدد المشاركين'
,['1146'] = 'قالب اتحاد ألعاب القوى يستخدم بيانات'
--,['1220'] = 'معرف شخص في قاعدة بيانات برودواي على الانترنت'
,['1233'] = 'قالب اسفدب يستخدم بيانات'
--,['1237'] = 'معرف فيلم بوكس أوفيس موجو'
--,['1258'] = 'معرف موقع الطماطم الفاسدة'
--,['1263'] = 'معرف شخص في ان ان دي بي'
--,['1265'] = 'معرف ألو سيني'
--,['1266'] = 'معرف شخص في ألو سيني'
,['1284'] = 'أرشيف مونزينجر'
,['1303'] = 'آلات فنان'
,['1308'] = 'شاغل منصب'
,['1346'] = 'فائز'
,['1365'] = 'سبقه'
,['1366'] = 'تبعه'
,['1389'] = 'شهادة المنتج'
-- ,['1409'] = 'قالب أرشيف ركوب الدراجات يستخدم بيانات'
,['1412'] = 'لغة كاتب'
,['1417'] = 'معرف موسوعة بريتانيكا على الانترنت'
,['1431'] = 'منتج تنفيذي'
,['1442'] = 'صورة القبر' --not yet
,['1446'] = 'مفقودين'
,['1447'] = 'قالب سبورتس رفرنس يستخدم بيانات'
,['1451'] = 'شعار نصي'
,['1476'] = 'عنوان'
,['1546'] = 'شعار وطني'
--,['1562'] = 'عنوان أول موفي'
,['1581'] = 'مدونة'
,['1590'] = 'خسائر'
--,['1663'] = 'قالب برو سايكلنج يستخدم بيانات'
,['1712'] = 'معرف ميتاكريتيك'
,['1741'] = 'معرف المكنز العام للأرشيف السمعي البصري'
,['1798'] = 'رمز أيزو 639-5'
,['1819'] = 'معرف شخص في جينالوجيكش.كوم'
,['1971'] = 'عدد الابناء'
--,['1972'] = 'معرف أوبن هب يستخدم بيانات'
,['2019'] = 'قالب اسم أول موفي يستخدم بيانات'
,['2043'] = 'طول'
,['2046'] = 'مساحة'
,['2047'] = 'مدة'
,['2049'] = 'عرض'
,['2067'] = 'وزن'
,['2073'] = 'مدى'
,['2090'] = 'قالب باور اوف تن يستخدم بيانات'
,['2097'] = 'مدة ولاية'
,['2096'] = 'وصف صورة'
,['2101'] = 'نقطة الانصهار'
,['2130'] = 'ميزانية'
,['2250'] = 'متوسط العمر'
,['2284'] = 'سعر الصرف'
--,['2334'] = 'معرف قاعدة بيانات الأفلام السويدية'
,['2386'] = 'قطر'
,['2522'] = 'فوز شخص'
,['2534'] = 'صيغة'
,['2638'] = 'معرف تي في دوت كوم'
,['2656'] = 'تصنيف الفيفا'
,['2716'] = 'صورة مجمعة'--not yet
,['2910'] = 'ايقونة'--not yet
,['3017'] = 'معرف فنان في رولينغ ستون'
--,['3065'] = 'معرف شخص في تيرنر كلاسيك موفيز'
,['3069'] = 'رمز وثيقة الأمم المتحدة'
--,['3136'] = 'معرف السينما.كوم للأشخاص'
--,['3143'] = 'معرف فيلم في موقع الفيلم'
--,['3144'] = 'معرف شخص في موقع الفيلم'
,['3383'] = 'ملصق فيلم'
-- ,[' '] = ' '
-- ,[' '] = ' '
-- ,[' '] = ' '
}
function list(s)
local I = trim(s)
return xt(s)
--local key = categorieskey[I]
--if key and key ~= "" then
--mw.log("Module:Wikidata/تتبع: key: " .. key)
--return wd(key)
--else
-- return xt(s)
-- end
end
function p.pageId(frame)
return mw.wikibase.getEntityIdForCurrentPage()
end
function p.makecategory1(options) --Main function
prop = options['property']
prop2 = options['justthisqual']
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.
if prop2 and prop2 ~= "" then
cate = cate .. category( mw.ustring.gsub(prop2:upper(), " ", "") , q , nocate)
end
last = cate ..''.. icon
page_title_object = mw.title.getCurrentTitle();
title = page_title_object.text;
--mw.log("Module:Wikidata/تتبع:" .. title)
if title == "ويكي بيانات/ملعب ويكي بيانات" then
last = icon
end
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