وحدة:ب.ص.م/بطاقة/برمجية/ملعب

من ويكيبيديا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث

هذه الصفحة شرح لوحدة من وحدات البطاقات المبنية اعتمادا على وحدة:ب.ص.م. وتستعمل في {{بطاقة برمجية/ملعب}}.

يمكن إنشاء توثيق الوحدة في صفحة الشرح
local general = require( 'وحدة:ب.ص.م/أدوات' )
local localdata = require( 'وحدة:ب.ص.م/بيانات' )


--local wikidata2 = require 'وحدة:Wikidata2'
--mw.log(">>"..mw.dumpObject(wikidata2.formatStatementsFromLua{entity = id, property = 'P1324', qual1='P2700' , raw = true}))

mw.log(">>namespace :"..mw.dumpObject(mw.title.getCurrentTitle().namespace))

return {
 maincolor = '#F0B020',
 parts = {
	general.title('software'),
	general.logo(),
	--general.mainimage(),
	{type = 'images', imageparameters =  {'لقطة شاشة','screenshot','لقطة'}, captionparameter ={'caption','تعليق'},defaultcaption='لقطة شاشة',wikidata = {property = 'P18'}, },

	{type='table', title = 'معلومات عامة',rows = {
		{type = 'mixed', label = '[[قائمة تصانيف البرمجيات|نوع]]', value = {'نوع','genre','النوعية'},
			wikidata={property = 'P31',excludevalues='Q166142,Q341,Q7397,Q218616,Q506883,Q1130645,Q17828'}},

		{type = 'mixed', label = '[[نظام التشغيل]]', value = {'{نظام_التشغيل','operating system'},property = 'P306'},
		{type = 'mixed', label = '[[منصة حاسوب|المنصة]]', value = {'منصة','المنصة','platform'}, property = 'P400'},
		{type = 'mixed', label = '[[حجم ملف|الحجم]]', value = {'حجم','size'}},
		{type = 'mixed', label = 'متوفر بلغات', value = {'لغات','language'}, property = 'P407'},		
		
		general.website('موقع_المطور'),
	}},

	{type='table', title = 'معلومات تقنية',rows = {		
		{type = 'mixed', label = '[[تصميم البرمجيات|المطور الأصلي]]', value = {'author','المؤلف'}, property = 'P170'},
		{type = 'mixed', label = 'المصمم', value = {'مصمم'},property = 'P287'},
		{type = 'mixed', label = '[[مطور برمجيات|المطورون]]', value = {'مطور','المطور','developer'}, wikidata={conjtype = '*',property = 'P178', showdate=true}},
		{type = 'mixed', label = 'المبرمج', value = {'programmer','مبرمج'},property = 'P943'},
		
		{type = 'mixed', label = '[[لغة برمجة|لغة البرمجة]]', value = {'لغة','لغة البرمجة','programming language'},property = 'P277'},
		
		--{type = 'mixed', label = 'أول إصدار', value = {'أول إصدار','released'},property = 'P577'},
		{type = 'mixed', label = 'الإصدار الأول', value = {'إصدار','released','الإصدار','release'}, 
			wikidata={property = 'P571', showqualifiers='P291,P400' }
		},
		{type = 'mixed', label = 'حالة التطوير', value = {'حالة','status','الحالة'}},
		{type = 'mixed', label = '[[مراحل إصدار البرمجيات|الإصدار الحالي]]', 
				value = {'latest release version','إصدار أخير','آخر إصدار'}, 
				wikidata={conjtype = 'new line', property = 'P348', rank='best', 
					showqualifiers='P1476,P400,P577,P306,P548',excludequalifiervalue='Q3295609,Q2122918,Q1072356'}
		},
		{type = 'mixed', label = '[[مراحل إصدار البرمجيات|إصدار تجريبي]]', 
			value = {'latest_preview_version','latest preview version','آخر إصدار تجريبي'},
			wikidata={conjtype = 'new line', property = 'P348', qualifier='P548',
				qualifiervalue='Q3295609,Q2122918,Q1072356',showqualifiers='P1476,P400,P306,P577'}
		}, 
		{type = 'mixed', label = '[[مستودع برمجيات|المستودع]]', value = {'مستودع','repository'}, 
			wikidata  = function(item)
				if(type(item) ~= 'table') then item = mw.wikibase.getEntity(nil) end
				if (not item.claims) or (not item.claims.P1324) then
					return nil
				end
				local r =''
				for i, j in pairs(item.claims.P1324) do
					j = j.mainsnak.datavalue
					r = r .. "\n* ["..j.value .." " .. (string.match(j.value, '//([^/]*)/') or '').. "]"
				end
				return r
			end
		},

		{type = 'mixed', label = '[[رخصة البرمجيات|الرخصة]]', value = {'رخصة','license','الترخيص'}, wikidata={conjtype = '*',property = 'P275'}},
		{type = 'mixed', label = '[[معيار|المعايير]]', value = {'standard'}},
	}},		
	{type='table', title = 'تسلسل', rows = {
		{type = 'mixed', label = 'مأخوذ عن', value = {'أصل','based_on'}, property = 'P144'},
		{type = 'mixed', label = 'اشتقاقات', value = {'اشتقاقات','derivative_work'}, property = 'P4969'},
		{type = 'succession', previousparameter = "سبقه", previousproperty = "P155", nextparameter = "تبعه",	nextproperty = "P156"},
	}},		
 }
}