विभाग:Category handler/shared
हा विभाग (मॉड्यूल) पान सुरक्षेच्या अधीन असलेला आहे. तो खूप पानांवर वापरल्या जाणारा उच्च-दृश्यतेचा विभाग आहे किंवा, त्याचे substitution वारंवार होते. त्यामधील उत्पात किंवा चुका या अनेक पानांवर परिणाम करु शकतात. किरकोळ किंवा क्षुद्र संपादनही विदागारावर प्रचंड ताण उत्पन्न करु शकते. म्हणून, त्यास संपादनांपासून सुरक्षित केले आहे. |
हा विभाग प्रणाली संदेशांमध्ये वापरला जात आहे. त्यावरील केल्या गेलेले बदल, हे विकिपीडिया सदस्य आंतरपृष्ठावर तातडीने दिसतील.मोठ्या प्रमाणावर होणाऱ्या फेरफारास टाळण्यासाठी, त्यावर करावयाचे बदल हे आधी त्याच्या, विभाग /धूळपाटी किंवा /चाचणी उपपानांवर, किंवा स्वतःच्या सदस्यपानावर करुन बघावेत. हे तपासलेले/ चाचणी केलेले बदल मग एकाच संपादनात, विभाग नामविश्वात जोडल्या जाऊ शकतात. यावरील बदल लागू करण्याआधी, याच्या चर्चापानावर, त्याबद्दलची योग्य ठिकाणी व विस्तृत चर्चा करा. |
Usage
{{#invoke:Category handler|function_name}}
-- This module contains shared functions used by [[Module:Category handler]]
-- and its submodules.
local p = {}
function p.matchesBlacklist(page, blacklist)
for i, pattern in ipairs(blacklist) do
local match = mw.ustring.match(page, pattern)
if match then
return true
end
end
return false
end
function p.getParamMappings(useLoadData)
local dataPage = 'Module:Namespace detect/data'
if useLoadData then
return mw.loadData(dataPage).mappings
else
return require(dataPage).mappings
end
end
function p.getNamespaceParameters(titleObj, mappings)
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
local mappingsKey
if titleObj.isTalkPage then
mappingsKey = 'talk'
else
mappingsKey = mw.site.namespaces[titleObj.namespace].name
end
mappingsKey = mw.ustring.lower(mappingsKey)
return mappings[mappingsKey] or {}
end
return p