وحدة:بطاقة/قالب/عتاد الحاسوب
هذه الصفحة شرح لوحدة من وحدات البطاقات المبنية اعتمادا على وحدة:بطاقة. وتستعمل في {{بطاقة عتاد الحاسوب}}.
local generic = require( 'وحدة:بطاقة/أدوات' )
function getViaId(localdata,conn,via,viaId)
if (type(localdata[conn..viaId]) ~= 'string') then return '' end
local via_Id = {}
local i = 1
local outp =''
while type(localdata[via..viaId.."_" .. i]) == 'string' do
mw.log(via..viaId.."_" .. i ..mw.dumpObject(localdata[via..viaId.."_" .. i]))
via_Id[i] = localdata[via..viaId.."_" .. i]
i = i + 1
end
outp = "\n'''" .. localdata[conn..viaId] .."'''"
if(#via_Id > 0) then
outp = outp .. " عبر <span>:</span>\n* " .. mw.text.listToText(via_Id, "\n* ", "\n* ")
end
return outp;
end
function getItems(localdata,Id)
local items = {}
local i = 1
local outp =''
while type(localdata[Id .. i]) == 'string' do
items[i] = localdata[Id .. i]
i = i + 1
end
if( #items > 0) then
return mw.text.listToText(items, "<br />", "<br />")
end
return nil
end
return {
maincolor = '#CEDEFF' -- اللون المستعمل لعنوان البطاقة
--,wikimod = 'Wikidata.Ca'
,parts = { -- محتويات البطاقة
generic.title(),
generic.logo(),
generic.mainimage(),
{type = 'table' , title ='معلومات عامة' ,rows = {
{type = 'row'
, label = 'تاريخ الاختراع'
, value = {'تاريخ الاختراع','invent-date',}
, wikidata = {property='P575'}
},
{type = 'row'
, label = 'المخترع'
, value = {'مخترع','invent-name','inventor'}
, wikidata = {property = "P61"}
},
{type = 'row'
, label = 'موصل ومرتبط بـ'
, value = function (localdata)
local data = getViaId(localdata,'conn','via',"1") .. getViaId(localdata,'وصل','عبر',"1")
.. getViaId(localdata,'conn','via',"2") .. getViaId(localdata,'وصل','عبر',"2")
.. getViaId(localdata,'conn','via',"3") .. getViaId(localdata,'وصل','عبر',"3")
.. getViaId(localdata,'conn','via',"4") .. getViaId(localdata,'وصل','عبر',"4")
if(data =='') then return nil end
return data
end
--, wikidata = {property='P'}
},
{type = 'row'
, label = {'class-name','اسم تقسيم'}, defaultlabel = 'تقسيم الاستعمال'
, value = function (localdata) return getItems(localdata,'class') or getItems(localdata,'قسم') end
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'أهم المصنّعين'
, value = function (localdata) return getItems(localdata,'manuf') or getItems(localdata,'صنع') end
, wikidata = {property='P176'}
},
{type = 'row'
, label = 'المصمم'
, value = {'مصمم','designfirm','designer'}
, wikidata = {property='P287'}
},
{type = 'row'
, label = 'المصنّع'
, value = {'manufacturer','مصنع'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'بداية الإنتاج'
, value = {'introduced','بداية'}
, wikidata = {property='P571'}
},
{type = 'row'
, label = 'توقف الإنتاج'
, value = {'discontinued','توقف'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'السعر'
, value = {'سعر','cost','price'}
--, wikidata = {property='P2284'}
},
{type = 'row'
, label = 'النوع'
, value = {'type','نوع'}
, wikidata = {property='P279'}
},
{type = 'row'
, label = 'الوظيفة'
, value = {'وظيفة','usage'}
, wikidata = {property='P366'}
},
{type = 'row'
, label = 'جزء من'
, value = {'جزء من','part of'}
, wikidata = {property='P361'}
},
{type = 'row'
, label = 'الأجزاء'
, value = {'أجزاء','parts'}
, wikidata = {property='P527'}
},
{type = 'row'
, label = 'المعالج'
, value = {'معالج','processor'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'السرعة'
, value = {'سرعة','frequency'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'الذاكرة'
, value = {'ذاكرة','memory'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'المعالج المساعد'
, value = {'coprocessor','مساعد'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'الاتصالات'
, value = {'connection','اتصالات'}
, wikidata = {property='2789'}
},
{type = 'row'
, label = 'المداخل'
, value = {'ports','مداخل'}
--, wikidata = {property='P2935'}
},
{type = 'row'
, label = 'الطاقة المستهلكة'
, value = {'power','طاقة'}
--, wikidata = {property='P'}
},
{type = 'row'
, label = 'الوزن'
, value = {'وزن','weight'}
, wikidata={ property = "P2067", formatting='unitcode'}
},
generic.dimensions(),
generic.website(),
}}
}
}