Wikipedia
diqwiki
https://diq.wikipedia.org/wiki/Pela_Seri
MediaWiki 1.47.0-wmf.17
first-letter
Medya
Xısusi
Werênayış
Karber
Werênayışê karberi
Wikipediya
Werênayışê Wikipediya
Dosya
Werênayışê dosya
MedyaWiki
Werênayışê MedyaWikiyi
Şablon
Werênayışê şabloni
Peşti
Werênayışê peşti
Kategoriye
Werênayışê kategoriye
Portal
Werênayışê portali
TimedText
TimedText talk
Modul
Werênayışê moduli
Event
Event talk
Werênayışê karberi:Mirzali
3
1185
556514
556255
2026-08-31T11:33:41Z
Mirzali
16
+ Arşiv 12
556514
wikitext
text/x-wiki
{| <div style="border: 1px solid #ccd2d9; width: 23.5em; background: #f9f9f9; text-align: left; padding: 0.5em 1em 0.5em 1em; text-align: center;">
|-
!align="center"|[[Image:Vista-file-manager.png|50px|Archive]]<br/>Arşiv
----
|-
|
* [[User talk:Mirzali/Arşiv 1|Arşiv 1 - Çele, 2008]]
* [[User talk:Mirzali/Arşiv 2|Arşiv 2 - Temuze, 2008]]
* [[User talk:Mirzali/Arşiv 3|Arşiv 3 - Keşkelun, 2011]]
* [[User talk:Mirzali/Arşiv 4|Arşiv 4 - Adare, 2012]]
* [[User talk:Mirzali/Arşiv 5|Arşiv 5 - Keşkelun, 2012]]
* [[User talk:Mirzali/Arşiv 6|Arşiv 6 - Çele, 2013]]
* [[User talk:Mirzali/Arşiv 7|Arşiv 7 - Nisane, 2013]]
* [[User talk:Mirzali/Arşiv 8|Arşiv 8 - Nisane, 2014]]
* [[User talk:Mirzali/Arşiv 9|Arşiv 9 - Tişrino Verên, 2014]]
* [[User talk:Mirzali/Arşiv 10|Arşiv 10 - Adar, 2017]]
* [[User talk:Mirzali/Arşiv 11|Arşiv 11 - Kanun, 2022]]
* [[User talk:Mirzali/Arşiv 12|Arşiv 12 - Tebaxe, 2026]]
|}
bdl8xwpjetig6xnbv6r5gat3fo9ck0x
Modul:Infobox
828
42725
556500
556499
2026-08-30T12:51:58Z
Mirzali
16
"[[Modul:Infobox]]" sıtariya: Şeveknayış ([Bıvurne=Karberanê qeydnêbiyaeyan bloke ke] (bêmıhlet) [Move=Karberanê qeydnêbiyaeyan bloke ke] (bêmıhlet))
556499
Scribunto
text/plain
local p = {}
local args = {}
local origArgs = {}
local root
local empty_row_categories = {}
local category_in_empty_row_pattern = '%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:[^]]*]]'
local has_rows = false
local yesno = require("Module:Yesno")
local lists = {
plainlist_t = {
patterns = {
'^plainlist$',
'%splainlist$',
'^plainlist%s',
'%splainlist%s'
},
found = false,
styles = 'Plainlist/styles.css'
},
hlist_t = {
patterns = {
'^hlist$',
'%shlist$',
'^hlist%s',
'%shlist%s'
},
found = false,
styles = 'Hlist/styles.css'
}
}
local function has_list_class(args_to_check)
for _, list in pairs(lists) do
if not list.found then
for _, arg in pairs(args_to_check) do
for _, pattern in ipairs(list.patterns) do
if mw.ustring.find(arg or '', pattern) then
list.found = true
break
end
end
if list.found then break end
end
end
end
end
local function isUntitledChildBox(sval)
return sval and ( sval:match( '^%s*<%s*[Tt][Rr]' ) or sval:match( '^%s*\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127%s*<%s*[Tt][Rr]' ) )
end
local function fixChildBoxes(sval, tt)
local function notempty( s ) return s and s:match( '%S' ) end
if notempty(sval) then
local marker = '<span class=special_infobox_marker>'
local s = sval
-- start moving templatestyles and categories inside of table rows
local slast = ''
while slast ~= s do
slast = s
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>%s*)(%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:[^]]*%]%])', '%2%1')
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>%s*)(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)', '%2%1')
end
-- end moving templatestyles and categories inside of table rows
s = mw.ustring.gsub(s, '(<%s*[Tt][Rr])', marker .. '%1')
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>)', '%1' .. marker)
if s:match(marker) then
s = mw.ustring.gsub(s, marker .. '%s*' .. marker, '')
s = mw.ustring.gsub(s, '([\r\n]|-[^\r\n]*[\r\n])%s*' .. marker, '%1')
s = mw.ustring.gsub(s, marker .. '%s*([\r\n]|-)', '%1')
s = mw.ustring.gsub(s, '(</[Cc][Aa][Pp][Tt][Ii][Oo][Nn]%s*>%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '(<%s*[Tt][Aa][Bb][Ll][Ee][^<>]*>%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '^(%{|[^\r\n]*[\r\n]%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '([\r\n]%{|[^\r\n]*[\r\n]%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, marker .. '(%s*</[Tt][Aa][Bb][Ll][Ee]%s*>)', '%1')
s = mw.ustring.gsub(s, marker .. '(%s*\n|%})', '%1')
end
if s:match(marker) then
local subcells = mw.text.split(s, marker)
s = ''
for k = 1, #subcells do
if k == 1 then
s = s .. subcells[k] .. '</' .. tt .. '></tr>'
elseif k == #subcells then
local rowstyle = ' style="display:none"'
if notempty(subcells[k]) then rowstyle = '' end
s = s .. '<tr' .. rowstyle ..'><' .. tt .. ' colspan=2>\n' ..
subcells[k]
elseif notempty(subcells[k]) then
if (k % 2) == 0 then
s = s .. subcells[k]
else
s = s .. '<tr><' .. tt .. ' colspan=2>\n' ..
subcells[k] .. '</' .. tt .. '></tr>'
end
end
end
end
-- the next two lines add a newline at the end of lists for the PHP parser
-- [[Special:Diff/849054481]]
-- remove when [[:phab:T191516]] is fixed or OBE
s = mw.ustring.gsub(s, '([\r\n][%*#;:][^\r\n]*)$', '%1\n')
s = mw.ustring.gsub(s, '^([%*#;:][^\r\n]*)$', '%1\n')
s = mw.ustring.gsub(s, '^([%*#;:])', '\n%1')
s = mw.ustring.gsub(s, '^(%{%|)', '\n%1')
return s
else
return sval
end
end
-- Cleans empty tables
local function cleanInfobox()
root = tostring(root)
if has_rows == false then
root = mw.ustring.gsub(root, '<table[^<>]*>%s*</table>', '')
end
end
-- Returns the union of the values of two tables, as a sequence.
local function union(t1, t2)
local vals = {}
for k, v in pairs(t1) do
vals[v] = true
end
for k, v in pairs(t2) do
vals[v] = true
end
local ret = {}
for k, v in pairs(vals) do
table.insert(ret, k)
end
return ret
end
-- Returns a table containing the numbers of the arguments that exist
-- for the specified prefix. For example, if the prefix was 'data', and
-- 'data1', 'data2', and 'data5' exist, it would return {1, 2, 5}.
local function getArgNums(prefix)
local nums = {}
for k, v in pairs(args) do
local num = tostring(k):match('^' .. prefix .. '([1-9]%d*)$')
if num then table.insert(nums, tonumber(num)) end
end
table.sort(nums)
return nums
end
-- Adds a row to the infobox, with either a header cell
-- or a label/data cell combination.
local function addRow(rowArgs)
if rowArgs.header and rowArgs.header ~= '_BLANK_' then
has_rows = true
has_list_class({ rowArgs.rowclass, rowArgs.class, args.headerclass })
root
:tag('tr')
:addClass(rowArgs.rowclass)
:addClass( isUntitledChildBox( rowArgs.header ) and 'infobox-hiddenrow' or nil )
:cssText(rowArgs.rowstyle)
:tag('th')
:attr('colspan', '2')
:addClass('infobox-header')
:addClass(rowArgs.class)
:addClass(args.headerclass)
-- @deprecated next; target .infobox-<name> .infobox-header
:cssText(args.headerstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(fixChildBoxes(rowArgs.header, 'th'))
if rowArgs.data and not yesno(args.decat) then
root:wikitext(
'[[Category:Pages using infobox templates with ignored data cells]]'
)
end
elseif rowArgs.data and rowArgs.data:gsub(category_in_empty_row_pattern, ''):match('^%S') then
has_rows = true
has_list_class({ rowArgs.rowclass, rowArgs.class })
local row = root:tag('tr')
row:addClass(rowArgs.rowclass)
row:cssText(rowArgs.rowstyle)
if rowArgs.label then
row
:tag('th')
:attr('scope', 'row')
:addClass('infobox-label')
-- @deprecated next; target .infobox-<name> .infobox-label
:cssText(args.labelstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(rowArgs.label)
:done()
else
row:addClass( isUntitledChildBox( rowArgs.data ) and 'infobox-hiddenrow' or nil )
end
local dataCell = row:tag('td')
dataCell
:attr('colspan', not rowArgs.label and '2' or nil)
:addClass(not rowArgs.label and 'infobox-full-data' or 'infobox-data')
:addClass(rowArgs.class)
-- @deprecated next; target .infobox-<name> .infobox(-full)-data
:cssText(rowArgs.datastyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(fixChildBoxes(rowArgs.data, 'td'))
else
table.insert(empty_row_categories, rowArgs.data or '')
end
end
local function renderTitle()
if not args.title then return end
has_rows = true
has_list_class({args.titleclass})
root
:tag('caption')
:addClass('infobox-title')
:addClass(args.titleclass)
-- @deprecated next; target .infobox-<name> .infobox-title
:cssText(args.titlestyle)
:wikitext(args.title)
end
local function renderAboveRow()
if not args.above then return end
has_rows = true
has_list_class({ args.aboveclass })
root
:tag('tr')
:addClass( isUntitledChildBox( args.above ) and 'infobox-hiddenrow' or nil )
:tag('th')
:attr('colspan', '2')
:addClass('infobox-above')
:addClass(args.aboveclass)
-- @deprecated next; target .infobox-<name> .infobox-above
:cssText(args.abovestyle)
:wikitext(fixChildBoxes(args.above,'th'))
end
local function renderBelowRow()
if not args.below then return end
has_rows = true
has_list_class({ args.belowclass })
root
:tag('tr')
:addClass( isUntitledChildBox( args.below ) and 'infobox-hiddenrow' or nil )
:tag('td')
:attr('colspan', '2')
:addClass('infobox-below')
:addClass(args.belowclass)
-- @deprecated next; target .infobox-<name> .infobox-below
:cssText(args.belowstyle)
:wikitext(fixChildBoxes(args.below,'td'))
end
local function addSubheaderRow(subheaderArgs)
if subheaderArgs.data and
subheaderArgs.data:gsub(category_in_empty_row_pattern, ''):match('^%S') then
has_rows = true
has_list_class({ subheaderArgs.rowclass, subheaderArgs.class })
local row = root:tag('tr')
row:addClass(subheaderArgs.rowclass)
row:addClass( isUntitledChildBox( subheaderArgs.data ) and 'infobox-hiddenrow' or nil )
local dataCell = row:tag('td')
dataCell
:attr('colspan', '2')
:addClass('infobox-subheader')
:addClass(subheaderArgs.class)
:cssText(subheaderArgs.datastyle)
:cssText(subheaderArgs.rowcellstyle)
:wikitext(fixChildBoxes(subheaderArgs.data, 'td'))
else
table.insert(empty_row_categories, subheaderArgs.data or '')
end
end
local function renderSubheaders()
if args.subheader then
args.subheader1 = args.subheader
end
if args.subheaderrowclass then
args.subheaderrowclass1 = args.subheaderrowclass
end
local subheadernums = getArgNums('subheader')
for k, num in ipairs(subheadernums) do
addSubheaderRow({
data = args['subheader' .. tostring(num)],
-- @deprecated next; target .infobox-<name> .infobox-subheader
datastyle = args.subheaderstyle,
rowcellstyle = args['subheaderstyle' .. tostring(num)],
class = args.subheaderclass,
rowclass = args['subheaderrowclass' .. tostring(num)]
})
end
end
local function addImageRow(imageArgs)
if imageArgs.data and
imageArgs.data:gsub(category_in_empty_row_pattern, ''):match('^%S') then
has_rows = true
has_list_class({ imageArgs.rowclass, imageArgs.class })
local row = root:tag('tr')
row:addClass(imageArgs.rowclass)
row:addClass( isUntitledChildBox( imageArgs.data ) and 'infobox-hiddenrow' or nil )
local dataCell = row:tag('td')
dataCell
:attr('colspan', '2')
:addClass('infobox-image')
:addClass(imageArgs.class)
:cssText(imageArgs.datastyle)
:wikitext(fixChildBoxes(imageArgs.data, 'td'))
else
table.insert(empty_row_categories, imageArgs.data or '')
end
end
local function renderImages()
if args.image then
args.image1 = args.image
end
if args.caption then
args.caption1 = args.caption
end
local imagenums = getArgNums('image')
for k, num in ipairs(imagenums) do
local caption = args['caption' .. tostring(num)]
local data = mw.html.create():wikitext(args['image' .. tostring(num)])
if caption then
data
:tag('div')
:addClass('infobox-caption')
-- @deprecated next; target .infobox-<name> .infobox-caption
:cssText(args.captionstyle)
:wikitext(caption)
end
addImageRow({
data = tostring(data),
-- @deprecated next; target .infobox-<name> .infobox-image
datastyle = args.imagestyle,
class = args.imageclass,
rowclass = args['imagerowclass' .. tostring(num)]
})
end
end
-- When autoheaders are turned on, preprocesses the rows
local function preprocessRows()
if not args.autoheaders then return end
local rownums = union(getArgNums('header'), getArgNums('data'))
table.sort(rownums)
local lastheader
for k, num in ipairs(rownums) do
if args['header' .. tostring(num)] then
if lastheader then
args['header' .. tostring(lastheader)] = nil
end
lastheader = num
elseif args['data' .. tostring(num)] and
args['data' .. tostring(num)]:gsub(
category_in_empty_row_pattern, ''
):match('^%S') then
local data = args['data' .. tostring(num)]
if data:gsub(category_in_empty_row_pattern, ''):match('%S') then
lastheader = nil
end
end
end
if lastheader then
args['header' .. tostring(lastheader)] = nil
end
end
-- Gets the union of the header and data argument numbers,
-- and renders them all in order
local function renderRows()
local rownums = union(getArgNums('header'), getArgNums('data'))
table.sort(rownums)
for k, num in ipairs(rownums) do
addRow({
header = args['header' .. tostring(num)],
label = args['label' .. tostring(num)],
data = args['data' .. tostring(num)],
datastyle = args.datastyle,
class = args['class' .. tostring(num)],
rowclass = args['rowclass' .. tostring(num)],
-- @deprecated next; target .infobox-<name> rowclass
rowstyle = args['rowstyle' .. tostring(num)],
rowcellstyle = args['rowcellstyle' .. tostring(num)]
})
end
end
local function renderNavBar()
if not args.name then return end
has_rows = true
root
:tag('tr')
:tag('td')
:attr('colspan', '2')
:addClass('infobox-navbar')
:wikitext(require('Module:Navbar')._navbar{
args.name,
mini = 1,
})
end
local function renderItalicTitle()
local italicTitle = args['italic title'] and mw.ustring.lower(args['italic title'])
if italicTitle == '' or italicTitle == 'force' or italicTitle == 'yes' then
root:wikitext(require('Module:Italic title')._main({}))
end
end
-- Categories in otherwise empty rows are collected in empty_row_categories.
-- This function adds them to the module output. It is not affected by
-- args.decat because this module should not prevent module-external categories
-- from rendering.
local function renderEmptyRowCategories()
for _, s in ipairs(empty_row_categories) do
root:wikitext(s)
end
end
-- Render tracking categories. args.decat == turns off tracking categories.
local function renderTrackingCategories()
if yesno(args.decat) then return end
if args.child == 'yes' then
if args.title then
root:wikitext(
'[[Category:Pages using embedded infobox templates with the title parameter]]'
)
end
elseif #(getArgNums('data')) == 0 and mw.title.getCurrentTitle().namespace == 0 then
root:wikitext('[[Category:Articles using infobox templates with no data rows]]')
end
end
--[=[
Loads the templatestyles for the infobox.
TODO: FINISH loading base templatestyles here rather than in
MediaWiki:Common.css. There are 4-5000 pages with 'raw' infobox tables.
See [[Mediawiki_talk:Common.css/to_do#Infobox]] and/or come help :).
When we do this we should clean up the inline CSS below too.
Will have to do some bizarre conversion category like with sidebar.
]=]
local function loadTemplateStyles()
local frame = mw.getCurrentFrame()
local hlist_templatestyles = ''
if lists.hlist_t.found then
hlist_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = lists.hlist_t.styles }
}
end
local plainlist_templatestyles = ''
if lists.plainlist_t.found then
plainlist_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = lists.plainlist_t.styles }
}
end
-- See function description
local base_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = 'Module:Infobox/styles.css' }
}
local templatestyles = ''
if args['templatestyles'] then
templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = args['templatestyles'] }
}
end
local child_templatestyles = ''
if args['child templatestyles'] then
child_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = args['child templatestyles'] }
}
end
local grandchild_templatestyles = ''
if args['grandchild templatestyles'] then
grandchild_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = args['grandchild templatestyles'] }
}
end
return table.concat({
-- hlist -> plainlist -> base is best-effort to preserve old Common.css ordering.
-- this ordering is not a guarantee because the rows of interest invoking
-- each class may not be on a specific page
hlist_templatestyles,
plainlist_templatestyles,
base_templatestyles,
templatestyles,
child_templatestyles,
grandchild_templatestyles
})
end
-- common functions between the child and non child cases
local function structure_infobox_common()
renderSubheaders()
renderImages()
preprocessRows()
renderRows()
renderBelowRow()
renderNavBar()
renderItalicTitle()
renderEmptyRowCategories()
renderTrackingCategories()
cleanInfobox()
end
-- Specify the overall layout of the infobox, with special settings if the
-- infobox is used as a 'child' inside another infobox.
local function _infobox()
if args.child ~= 'yes' then
root = mw.html.create('table')
root
:addClass(args.subbox == 'yes' and 'infobox-subbox' or 'infobox')
:addClass(args.bodyclass)
-- @deprecated next; target .infobox-<name>
:cssText(args.bodystyle)
has_list_class({ args.bodyclass })
renderTitle()
renderAboveRow()
else
root = mw.html.create()
root
:wikitext(args.title)
end
structure_infobox_common()
return loadTemplateStyles() .. root
end
-- If the argument exists and isn't blank, add it to the argument table.
-- Blank arguments are treated as nil to match the behaviour of ParserFunctions.
local function preprocessSingleArg(argName)
if origArgs[argName] and origArgs[argName] ~= '' then
args[argName] = origArgs[argName]
end
end
-- Assign the parameters with the given prefixes to the args table, in order, in
-- batches of the step size specified. This is to prevent references etc. from
-- appearing in the wrong order. The prefixTable should be an array containing
-- tables, each of which has two possible fields, a "prefix" string and a
-- "depend" table. The function always parses parameters containing the "prefix"
-- string, but only parses parameters in the "depend" table if the prefix
-- parameter is present and non-blank.
local function preprocessArgs(prefixTable, step)
if type(prefixTable) ~= 'table' then
error("Non-table value detected for the prefix table", 2)
end
if type(step) ~= 'number' then
error("Invalid step value detected", 2)
end
-- Get arguments without a number suffix, and check for bad input.
for i,v in ipairs(prefixTable) do
if type(v) ~= 'table' or type(v.prefix) ~= "string" or
(v.depend and type(v.depend) ~= 'table') then
error('Invalid input detected to preprocessArgs prefix table', 2)
end
preprocessSingleArg(v.prefix)
-- Only parse the depend parameter if the prefix parameter is present
-- and not blank.
if args[v.prefix] and v.depend then
for j, dependValue in ipairs(v.depend) do
if type(dependValue) ~= 'string' then
error('Invalid "depend" parameter value detected in preprocessArgs')
end
preprocessSingleArg(dependValue)
end
end
end
-- Get arguments with number suffixes.
local a = 1 -- Counter variable.
local moreArgumentsExist = true
while moreArgumentsExist == true do
moreArgumentsExist = false
for i = a, a + step - 1 do
for j,v in ipairs(prefixTable) do
local prefixArgName = v.prefix .. tostring(i)
if origArgs[prefixArgName] then
-- Do another loop if any arguments are found, even blank ones.
moreArgumentsExist = true
preprocessSingleArg(prefixArgName)
end
-- Process the depend table if the prefix argument is present
-- and not blank, or we are processing "prefix1" and "prefix" is
-- present and not blank, and if the depend table is present.
if v.depend and (args[prefixArgName] or (i == 1 and args[v.prefix])) then
for j,dependValue in ipairs(v.depend) do
local dependArgName = dependValue .. tostring(i)
preprocessSingleArg(dependArgName)
end
end
end
end
a = a + step
end
end
-- Parse the data parameters in the same order that the old {{infobox}} did, so
-- that references etc. will display in the expected places. Parameters that
-- depend on another parameter are only processed if that parameter is present,
-- to avoid phantom references appearing in article reference lists.
local function parseDataParameters()
preprocessSingleArg('autoheaders')
preprocessSingleArg('child')
preprocessSingleArg('bodyclass')
preprocessSingleArg('subbox')
preprocessSingleArg('bodystyle')
preprocessSingleArg('title')
preprocessSingleArg('titleclass')
preprocessSingleArg('titlestyle')
preprocessSingleArg('above')
preprocessSingleArg('aboveclass')
preprocessSingleArg('abovestyle')
preprocessArgs({
{prefix = 'subheader', depend = {'subheaderstyle', 'subheaderrowclass'}}
}, 10)
preprocessSingleArg('subheaderstyle')
preprocessSingleArg('subheaderclass')
preprocessArgs({
{prefix = 'image', depend = {'caption', 'imagerowclass'}}
}, 10)
preprocessSingleArg('captionstyle')
preprocessSingleArg('imagestyle')
preprocessSingleArg('imageclass')
preprocessArgs({
{prefix = 'header'},
{prefix = 'data', depend = {'label'}},
{prefix = 'rowclass'},
{prefix = 'rowstyle'},
{prefix = 'rowcellstyle'},
{prefix = 'class'}
}, 50)
preprocessSingleArg('headerclass')
preprocessSingleArg('headerstyle')
preprocessSingleArg('labelstyle')
preprocessSingleArg('datastyle')
preprocessSingleArg('below')
preprocessSingleArg('belowclass')
preprocessSingleArg('belowstyle')
preprocessSingleArg('name')
-- different behaviour for italics if blank or absent
args['italic title'] = origArgs['italic title']
preprocessSingleArg('decat')
preprocessSingleArg('templatestyles')
preprocessSingleArg('child templatestyles')
preprocessSingleArg('grandchild templatestyles')
end
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
function p.infobox(frame)
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
parseDataParameters()
return _infobox()
end
-- For calling via #invoke within a template
function p.infoboxTemplate(frame)
origArgs = {}
for k,v in pairs(frame.args) do origArgs[k] = mw.text.trim(v) end
parseDataParameters()
return _infobox()
end
return p
kueb5p6xeoq6x7bxu2zyyl7pmxgesrs
556501
556500
2026-08-30T12:53:59Z
Mirzali
16
Vırnayışê hesabê 556499 ke terefê [[Karber:ChomponU Pongsawet|ChomponU Pongsawet]] ra peyser gêriyao
556501
Scribunto
text/plain
--
-- This module implements {{Infobox}}
--
local p = {}
local navbar = require('Modul:Navbar')._navbar
local args = {}
local origArgs
local root
local function notempty( s ) return s and s:match( '%S' ) end
local function fixChildBoxes(sval, tt)
if notempty(sval) then
local marker = '<span class=special_infobox_marker>'
local s = sval
s = mw.ustring.gsub(s, '(<%s*[Tt][Rr])', marker .. '%1')
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>)', '%1' .. marker)
if s:match(marker) then
s = mw.ustring.gsub(s, marker .. '%s*' .. marker, '')
s = mw.ustring.gsub(s, '([\r\n]|-[^\r\n]*[\r\n])%s*' .. marker, '%1')
s = mw.ustring.gsub(s, marker .. '%s*([\r\n]|-)', '%1')
s = mw.ustring.gsub(s, '(</[Cc][Aa][Pp][Tt][Ii][Oo][Nn]%s*>%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '(<%s*[Tt][Aa][Bb][Ll][Ee][^<>]*>%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '^(%{|[^\r\n]*[\r\n]%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '([\r\n]%{|[^\r\n]*[\r\n]%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, marker .. '(%s*</[Tt][Aa][Bb][Ll][Ee]%s*>)', '%1')
s = mw.ustring.gsub(s, marker .. '(%s*\n|%})', '%1')
end
if s:match(marker) then
local subcells = mw.text.split(s, marker)
s = ''
for k = 1, #subcells do
if k == 1 then
s = s .. subcells[k] .. '</' .. tt .. '></tr>'
elseif k == #subcells then
local rowstyle = ' style="display:none"'
if notempty(subcells[k]) then rowstyle = '' end
s = s .. '<tr' .. rowstyle ..'><' .. tt .. ' colspan=2>\n' .. subcells[k]
elseif notempty(subcells[k]) then
if (k % 2) == 0 then
s = s .. subcells[k]
else
s = s .. '<tr><' .. tt .. ' colspan=2>\n' .. subcells[k] .. '</' .. tt .. '></tr>'
end
end
end
end
return s
else
return sval
end
end
local function union(t1, t2)
-- Returns the union of the values of two tables, as a sequence.
local vals = {}
for k, v in pairs(t1) do
vals[v] = true
end
for k, v in pairs(t2) do
vals[v] = true
end
local ret = {}
for k, v in pairs(vals) do
table.insert(ret, k)
end
return ret
end
local function getArgNums(prefix)
-- Returns a table containing the numbers of the arguments that exist
-- for the specified prefix. For example, if the prefix was 'data', and
-- 'data1', 'data2', and 'data5' exist, it would return {1, 2, 5}.
local nums = {}
for k, v in pairs(args) do
local num = tostring(k):match('^' .. prefix .. '([1-9]%d*)$')
if num then table.insert(nums, tonumber(num)) end
end
table.sort(nums)
return nums
end
local function addRow(rowArgs)
-- Adds a row to the infobox, with either a header cell
-- or a label/data cell combination.
if rowArgs.header then
root
:tag('tr')
:addClass(rowArgs.rowclass)
:cssText(rowArgs.rowstyle)
:attr('id', rowArgs.rowid)
:tag('th')
:attr('colspan', 2)
:attr('id', rowArgs.headerid)
:addClass(rowArgs.class)
:addClass(args.headerclass)
:css('text-align', 'center')
:cssText(args.headerstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(fixChildBoxes(rowArgs.header, 'th'))
elseif rowArgs.data then
local row = root:tag('tr')
row:addClass(rowArgs.rowclass)
row:cssText(rowArgs.rowstyle)
row:attr('id', rowArgs.rowid)
if rowArgs.label then
row
:tag('th')
:attr('scope', 'row')
:attr('id', rowArgs.labelid)
:cssText(args.labelstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(rowArgs.label)
:done()
end
local dataCell = row:tag('td')
if not rowArgs.label then
dataCell
:attr('colspan', 2)
:css('text-align', 'center')
end
dataCell
:attr('id', rowArgs.dataid)
:addClass(rowArgs.class)
:cssText(rowArgs.datastyle)
:cssText(rowArgs.rowcellstyle)
:newline()
:wikitext(fixChildBoxes(rowArgs.data, 'td'))
end
end
local function renderTitle()
if not args.title then return end
root
:tag('caption')
:addClass(args.titleclass)
:cssText(args.titlestyle)
:wikitext(args.title)
end
local function renderAboveRow()
if not args.above then return end
root
:tag('tr')
:tag('th')
:attr('colspan', 2)
:addClass(args.aboveclass)
:css('text-align', 'center')
:css('font-size', '155%')
:css('font-weight', 'bold')
:cssText(args.abovestyle)
:wikitext(fixChildBoxes(args.above,'th'))
end
local function renderBelowRow()
if not args.below then return end
root
:tag('tr')
:tag('td')
:attr('colspan', '2')
:addClass(args.belowclass)
:css('text-align', 'center')
:cssText(args.belowstyle)
:newline()
:wikitext(fixChildBoxes(args.below,'td'))
end
local function renderSubheaders()
if args.subheader then
args.subheader1 = args.subheader
end
if args.subheaderrowclass then
args.subheaderrowclass1 = args.subheaderrowclass
end
local subheadernums = getArgNums('subheader')
for k, num in ipairs(subheadernums) do
addRow({
data = args['subheader' .. tostring(num)],
datastyle = args.subheaderstyle or args['subheaderstyle' .. tostring(num)],
class = args.subheaderclass,
rowclass = args['subheaderrowclass' .. tostring(num)]
})
end
end
local function renderImages()
if args.image then
args.image1 = args.image
end
if args.caption then
args.caption1 = args.caption
end
local imagenums = getArgNums('image')
for k, num in ipairs(imagenums) do
local caption = args['caption' .. tostring(num)]
local data = mw.html.create():wikitext(args['image' .. tostring(num)])
if caption then
data
:tag('div')
:cssText(args.captionstyle)
:wikitext(caption)
end
addRow({
data = tostring(data),
datastyle = args.imagestyle,
class = args.imageclass,
rowclass = args['imagerowclass' .. tostring(num)]
})
end
end
local function renderRows()
-- Gets the union of the header and data argument numbers,
-- and renders them all in order using addRow.
local rownums = union(getArgNums('header'), getArgNums('data'))
table.sort(rownums)
for k, num in ipairs(rownums) do
addRow({
header = args['header' .. tostring(num)],
label = args['label' .. tostring(num)],
data = args['data' .. tostring(num)],
datastyle = args.datastyle,
class = args['class' .. tostring(num)],
rowclass = args['rowclass' .. tostring(num)],
rowstyle = args['rowstyle' .. tostring(num)],
rowcellstyle = args['rowcellstyle' .. tostring(num)],
dataid = args['dataid' .. tostring(num)],
labelid = args['labelid' .. tostring(num)],
headerid = args['headerid' .. tostring(num)],
rowid = args['rowid' .. tostring(num)]
})
end
end
local function renderNavBar()
if not args.name then return end
root
:tag('tr')
:tag('td')
:attr('colspan', '2')
:css('text-align', 'right')
:wikitext(navbar{
args.name,
mini = 1,
})
end
local function renderItalicTitle()
local italicTitle = args['italic title'] and mw.ustring.lower(args['italic title'])
if italicTitle == '' or italicTitle == 'force' or italicTitle == 'yes' then
root:wikitext(mw.getCurrentFrame():expandTemplate({title = 'italic title'}))
end
end
local function renderTrackingCategories()
if args.decat ~= 'yes' then
if #(getArgNums('data')) == 0 and mw.title.getCurrentTitle().namespace == 0 then
root:wikitext('')
end
if args.child == 'yes' and args.title then
root:wikitext('')
end
end
end
local function _infobox()
-- Specify the overall layout of the infobox, with special settings
-- if the infobox is used as a 'child' inside another infobox.
if args.child ~= 'yes' then
root = mw.html.create('table')
root
:addClass('infobox')
:addClass(args.bodyclass)
if args.subbox == 'yes' then
root
:css('padding', '0')
:css('border', 'none')
:css('margin', '1px')
:css('width', 'auto')
:css('min-width', '100%')
:css('font-size', '100%')
:css('clear', 'none')
:css('float', 'none')
:css('background-color', 'transparent')
else
root
:css('width', '21em')
end
root
:cssText(args.bodystyle)
renderTitle()
renderAboveRow()
else
root = mw.html.create()
root
:wikitext(args.title)
end
renderSubheaders()
renderImages()
renderRows()
renderBelowRow()
renderNavBar()
renderItalicTitle()
renderTrackingCategories()
return tostring(root)
end
local function preprocessSingleArg(argName)
-- If the argument exists and isn't blank, add it to the argument table.
-- Blank arguments are treated as nil to match the behaviour of ParserFunctions.
if origArgs[argName] and origArgs[argName] ~= '' then
args[argName] = origArgs[argName]
end
end
local function preprocessArgs(prefixTable, step)
-- Assign the parameters with the given prefixes to the args table, in order, in batches
-- of the step size specified. This is to prevent references etc. from appearing in the
-- wrong order. The prefixTable should be an array containing tables, each of which has
-- two possible fields, a "prefix" string and a "depend" table. The function always parses
-- parameters containing the "prefix" string, but only parses parameters in the "depend"
-- table if the prefix parameter is present and non-blank.
if type(prefixTable) ~= 'table' then
error("Non-table value detected for the prefix table", 2)
end
if type(step) ~= 'number' then
error("Invalid step value detected", 2)
end
-- Get arguments without a number suffix, and check for bad input.
for i,v in ipairs(prefixTable) do
if type(v) ~= 'table' or type(v.prefix) ~= "string" or (v.depend and type(v.depend) ~= 'table') then
error('Invalid input detected to preprocessArgs prefix table', 2)
end
preprocessSingleArg(v.prefix)
-- Only parse the depend parameter if the prefix parameter is present and not blank.
if args[v.prefix] and v.depend then
for j, dependValue in ipairs(v.depend) do
if type(dependValue) ~= 'string' then
error('Invalid "depend" parameter value detected in preprocessArgs')
end
preprocessSingleArg(dependValue)
end
end
end
-- Get arguments with number suffixes.
local a = 1 -- Counter variable.
local moreArgumentsExist = true
while moreArgumentsExist == true do
moreArgumentsExist = false
for i = a, a + step - 1 do
for j,v in ipairs(prefixTable) do
local prefixArgName = v.prefix .. tostring(i)
if origArgs[prefixArgName] then
moreArgumentsExist = true -- Do another loop if any arguments are found, even blank ones.
preprocessSingleArg(prefixArgName)
end
-- Process the depend table if the prefix argument is present and not blank, or
-- we are processing "prefix1" and "prefix" is present and not blank, and
-- if the depend table is present.
if v.depend and (args[prefixArgName] or (i == 1 and args[v.prefix])) then
for j,dependValue in ipairs(v.depend) do
local dependArgName = dependValue .. tostring(i)
preprocessSingleArg(dependArgName)
end
end
end
end
a = a + step
end
end
function p.infobox(frame)
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- Parse the data parameters in the same order that the old {{infobox}} did, so that
-- references etc. will display in the expected places. Parameters that depend on
-- another parameter are only processed if that parameter is present, to avoid
-- phantom references appearing in article reference lists.
preprocessSingleArg('child')
preprocessSingleArg('bodyclass')
preprocessSingleArg('subbox')
preprocessSingleArg('bodystyle')
preprocessSingleArg('title')
preprocessSingleArg('titleclass')
preprocessSingleArg('titlestyle')
preprocessSingleArg('above')
preprocessSingleArg('aboveclass')
preprocessSingleArg('abovestyle')
preprocessArgs({
{prefix = 'subheader', depend = {'subheaderstyle', 'subheaderrowclass'}}
}, 10)
preprocessSingleArg('subheaderstyle')
preprocessSingleArg('subheaderclass')
preprocessArgs({
{prefix = 'image', depend = {'caption', 'imagerowclass'}}
}, 10)
preprocessSingleArg('captionstyle')
preprocessSingleArg('imagestyle')
preprocessSingleArg('imageclass')
preprocessArgs({
{prefix = 'header'},
{prefix = 'data', depend = {'label'}},
{prefix = 'rowclass'},
{prefix = 'rowstyle'},
{prefix = 'rowcellstyle'},
{prefix = 'class'},
{prefix = 'dataid'},
{prefix = 'labelid'},
{prefix = 'headerid'},
{prefix = 'rowid'}
}, 50)
preprocessSingleArg('headerclass')
preprocessSingleArg('headerstyle')
preprocessSingleArg('labelstyle')
preprocessSingleArg('datastyle')
preprocessSingleArg('below')
preprocessSingleArg('belowclass')
preprocessSingleArg('belowstyle')
preprocessSingleArg('name')
args['italic title'] = origArgs['italic title'] -- different behaviour if blank or absent
preprocessSingleArg('decat')
return _infobox()
end
return p
pi4n78n4f7qe4x7zl4wovkhsydo8vgz
.quest
0
70017
556502
504252
2026-08-30T12:55:14Z
Mirzali
16
556502
wikitext
text/x-wiki
'''.quest''', [[İnternet|internet]] de nameyê bandıra jeneriko (be zıwanê [[İngılızki]]: ''[[Bandıra sewiyaya serêna jenerike|Generic top-level domains]]'') ke yew kodê interneti rê bırriyayo a.
== Bıvênên ==
* [[Domain]]
* [[Komputer]]
* [[Website]]
{{Generic top-level domain}}
{{ccTLD}}
[[Kategoriye:Bandıra sewiyaya serêna jenerike]]
591ywt8g8xjn811e9eub0xr8begit51
.qvc
0
70215
556507
504253
2026-08-30T20:30:25Z
Mirzali
16
556507
wikitext
text/x-wiki
'''.qvc''', [[İnternet|internet]] de nameyê bandıra jeneriko (be zıwanê [[İngılızki]]: ''[[Bandıra sewiyaya serêna jenerike|Generic top-level domains]]'') ke yew kodê interneti rê bırriyayo a.
== Bıvênên ==
* [[Domain]]
* [[Komputer]]
* [[Website]]
{{Generic top-level domain}}
{{ccTLD}}
[[Kategoriye:Bandıra sewiyaya serêna jenerike]]
buylfghgdd1oa9vkidh1d6sek48i3x8
NGC 5869
0
76401
556504
489344
2026-08-30T13:13:33Z
Mirzali
16
[[Katalogo Pêroyiyo Newe]]
556504
wikitext
text/x-wiki
{{Galaksiye}}
'''NGC 5869''', yew cısmê [[Asmên|asmên]]iyo. No cısım [[Katalogo Pêroyiyo Newe|Katalogê Pêroyiyê Neweyi]] de komê estareyanê {{Wikidata|P59}} miyan de ca gêno. {{Wikidata|P575}} de terefê {{Wikidata|P61}}i ra keşıf biyo.
== Bıvênên ==
* [[Asmên]]
* [[Galaksiye]]
* [[Estare]]
* [[Pulsar]]
* [[Nebula]]
* [[Lista cısmanê NGC]]
== Gıreyê teberi ==
* {{NASANED}}
* {{Simbad}}
* {{Leda}}
* {{Seds}}
* {{WikiSky}}
{{NGC|5869}}
[[Kategoriye:Asmênşınasiye]]
o8hkn7zmmv9yidggj1lxuyddvr4ij7i
NGC 5846
0
76415
556508
489355
2026-08-30T20:31:28Z
Mirzali
16
[[Katalogo Pêroyiyo Newe]]
556508
wikitext
text/x-wiki
{{Galaksiye}}
'''NGC 5846''', yew cısmê [[Asmên|asmên]]iyo. No cısım [[Katalogo Pêroyiyo Newe|Katalogê Pêroyiyê Neweyi]] de komê estareyanê {{Wikidata|P59}} miyan de ca gêno. {{Wikidata|P575}} de terefê {{Wikidata|P61}}i ra keşıf biyo.
== Bıvênên ==
* [[Asmên]]
* [[Galaksiye]]
* [[Estare]]
* [[Pulsar]]
* [[Nebula]]
* [[Lista cısmanê NGC]]
== Gıreyê teberi ==
* {{NASANED}}
* {{Simbad}}
* {{Leda}}
* {{Seds}}
* {{WikiSky}}
{{NGC|5846}}
[[Kategoriye:Asmênşınasiye]]
4l8n38xcepae7dwxi7dgpmrurqbs9yr
Asuman Krause
0
84461
556505
446385
2026-08-30T20:27:46Z
Mirzali
16
556505
wikitext
text/x-wiki
{{Merdumi}}
'''Asuman Krause''' (b. 1 Adar 1976; [[Berlin]], [[Almanya]]), yew kaykera û spikera [[Tırk]]a.
== Têlevizyon ==
* ''Wipe Out''
* ''Fear Factor Extreme''
* ''Big Brother Tırkiya''
== Diskografiye ==
{| class="wikitable"
!Serre
!Albumi
|-
|2006
|"Çok Yanlızım"
|-
|2008
|"Kukla"
|-
|}
[[Kategoriye:Merdumê weşi]]
[[Kategoriye:Merdumê ke 1976 de biyê]]
d4vdkaesqcoag58q411bwgn4iswdhj9
Ahmet Cevdet Ertuğrul
0
89389
556506
456429
2026-08-30T20:29:06Z
Mirzali
16
{{Kontrolê_otoriteyi}}
556506
wikitext
text/x-wiki
{{İdarekar}}
'''Ahmet Cevdet Ertuğrul''', yew serdar, wali û siyasetkaro [[Tırk]]o.
{{Portal|Biyografiye|Tırkiya}}
{{Waliyê Zonğuldaki}}
{{Kontrolê_otoriteyi}}
[[Kategoriye:Siyasetkarê Tırki]]
ct6z42h6fcenvqtwnnn406gu2ooxkdu
Werênayışê karberi:ChomponU Pongsawet
3
100454
556503
2026-08-30T13:09:01Z
Mirzali
16
/* Modul:Infobox */ qısımo newe
556503
wikitext
text/x-wiki
== Modul:Infobox ==
Your so-called update for [https://diq.wikipedia.org/w/index.php?title=Modul:Infobox&diff=prev&oldid=556499 the module] has caused the templates to stop working. Since every website has its own specific settings, a blanket update does more harm than good. Please refrain from doing this in the future. [[Karber:Mirzali|Mirzali]] ([[Werênayışê karberi:Mirzali|mesac]]) 13:09, 30 Tebaxe 2026 ([[UTC]])
mffdsm082hpm41vmq0c0s9p71z53ohg
Werênayışê karberi:Mirzali/Arşiv 12
3
100455
556509
2026-08-31T07:15:34Z
JackonLee54
34697
message to Mirzali
556509
wikitext
text/x-wiki
==Zazaki Request==
'''Ma be xêr Mister Mirzali''',
A while ago, Asmen had restricted your talk page to "confirmed users only" which is still in effect today.
Therefore this is my message to you:
Two days ago, I had helped the Zazaki people translate the article on the "Zazaki people" into [[:nan:Zaza_lâng|this Wikipedia language here]].
Would you be so kind as to translate this short Bible verse into the splendid Southern Zazaki (also known as Dımılki) language:
:"''Denn Gott hat die Menschen so sehr geliebt, dass er seinen einzigen Sohn für sie hergab. Jeder, der an ihn glaubt, wird nicht zugrunde gehen, sondern das ewige Leben haben''."
This is all the help that I request from you. --[[Karber:JackonLee54|JackonLee54]] ([[Werênayışê karberi:JackonLee54|mesac]]) 07:15, 31 Tebaxe 2026 ([[UTC]])
sz9orz1f2938zooo8ex6ct31chjgtcb
556515
556509
2026-08-31T11:35:46Z
Mirzali
16
556515
wikitext
text/x-wiki
== Bot ==
Silav, Mirzali. Guhartinên [https://diq.wikipedia.org/w/index.php?title=NGC_5149&curid=75582&diff=490223&oldid=431394] bi vî awayî bi botê hêsantir e. Ger destûra te hebe, em bota min li vir jî çalak bikin û tiştên ku divê werin guhartin em biguherînin. Dibe? [[Karber:Balyozxane|Balyozxane]] ([[Karber vaten:Balyozxane|mesac]]) 22:35, 11 Kanun 2022 ([[UTC]])
:Silav [[Karber:Balyozxane|Balyozxane]]! Dê pir baş be, ji ber ku van çêtirkirinan dema min jî digire. Ez destûrê didim te. Pêşî ji bo alîkariya te spas dikim. -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 09:26, 12 Kanun 2022 ([[UTC]])
:: Dengê xwe li vir [[Wikipedia:Portalê cemaeti/Bot Flag Requests#Balyozbot]] bide xêra xwe.
::: {{done|[[Wikipedia:Portalê cemaeti/Bot Flag Requests#Balyozbot|Min ew kir.]]}} -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 12:02, 12 Kanun 2022 ([[UTC]])
== Pirsek ==
Min xelet fêm nekî înşela lê dixwazim tiştek li te bipirsim. Gelo di vê dengdanê [[:w:ku:Wîkîpediya:Rêveber/Balyozxane]] de dengê xwe bidî min? {{=)}} [[Karber:Balyozxane|Balyozxane]] ([[Karber vaten:Balyozxane|mesac]]) 19:17, 12 Kanun 2022 ([[UTC]])
: {{done|[https://ku.wikipedia.org/wiki/W%C3%AEk%C3%AEpediya:R%C3%AAveber/Balyozxane]}} Helbet ez qet şaş fam nakim. Ez kêfxweş im ku alîkariya her kesê ku alîkariya min bike. -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 20:49, 12 Kanun 2022 ([[UTC]])
:: Gelek spas :) [[Karber:Balyozxane|Balyozxane]] ([[Karber vaten:Balyozxane|mesac]]) 00:15, 21 Kanun 2022 ([[UTC]])
== Bot 2 ==
Silav, bot hatiye. Tiştên ku divê werin guhertin bi vî awayî (Galaksi > Galaksiye) li gotûbêja min binivîse ez ê sibê dest pê bikim.[[Karber:Balyozxane|Balyozxane]] ([[Karber vaten:Balyozxane|mesac]]) 00:15, 21 Kanun 2022 ([[UTC]])
== Update request for the article [[Ekşi Sözlük]] ==
Hello.
Can you update the article [[Ekşi Sözlük]], by adding that on February 21, 2023, access to the website was blocked in Turkey by the Information and Communication Technologies Authority of Turkey? Here are two websites from non-governmental and non-progovernmental sources in Turkish, which can be deciphered via a machine translator.
{{Cite web|url=https://www.cumhuriyet.com.tr/turkiye/btkdan-eksi-sozluk-engeli-2054108|title=BTK'den Ekşi Sözlük engeli!|date=2023-02-21|access-date=2023-02-21|publisher=Cumhuriyet.com.tr|language=tr}}
{{Cite web|url=https://www.gazeteduvar.com.tr/eksi-sozluk-hakkinda-erisimin-engellenmesi-karari-haber-1604918|title=Ekşi Sözlük hakkında erişimin engellenmesi kararı|date=2023-02-21|access-date=2023-02-21|publisher=Gazeteduvar.com|language=tr}}
Yours sincerely, [[Karber:Multituberculata|Multituberculata]] ([[Karber vaten:Multituberculata|mesac]]) 12:19, 24 Şıbat 2023 ([[UTC]]) [[Karber:Multituberculata|Multituberculata]] ([[Karber vaten:Multituberculata|mesac]]) 12:19, 24 Şıbat 2023 ([[UTC]])
:{{done}}! -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 08:10, 25 Şıbat 2023 ([[UTC]])
::Thank you very much. --[[Karber:Multituberculata|Multituberculata]] ([[Karber vaten:Multituberculata|mesac]]) 05:11, 25 Şıbat 2023 ([[UTC]])
== Requsest ==
Hi, wish you a good time. could you please write an article about Zazaki alphabet on English wikipedia? if you do so, I will translate that to Spanish, Persian, Esperanto and Tajik. [[Karber:Parsehos|Parsehos]] ([[Karber vaten:Parsehos|mesac]]) 04:01, 26 Nisane 2023 ([[UTC]])
== Translation request ==
Hi. I am sorry to bother you with this but I would like to ask you whether you could please translate this to Zazaki?
Lingua Franca Nova (“Elefen”) is a language designed to be particularly simple, consistent, and easy to learn for international communications. It has a number of positive qualities:
* 1. It has a limited number of phonemes. It sounds similar to Italian or Spanish.
* 2. It is phonetically spelled. No child should have to spend years learning irregularities.
* 3. It has a completely regular grammar, similar to the world’s creoles.
* 4. It has a limited and completely regular set of productive affixes for routine word derivation.
* 5. It has well-defined rules for word order, in keeping with many major languages.
* 6. Its vocabulary is strongly rooted in modern Romance languages. These languages are themselves widespread and influential, plus they have contributed the major part of English vocabulary
* 7. It is designed to be naturally accepting of Latin and Greek technical neologisms, the de facto “world standard”.
* 8. It is designed to seem relatively “natural” to those who are familiar with Romance languages, without being any more difficult for others to learn.
* We hope you like Elefen!
Thanks for your help. –[[Karber:Caro de Segeda|Caro de Segeda]] ([[Karber vaten:Caro de Segeda|mesac]]) 06:16, 1 Hezirane 2023 ([[UTC]])
== Translation request ==
Hello.
Can you translate and create the article [[:de:Laacher See]], which is the third most powerful volcano in Europe after Campi Flegrei and Santorini, in Zazaki Wikipedia?
Yours sincerely, [[Karber:Multituberculata|Multituberculata]] ([[Karber vaten:Multituberculata|mesac]]) 11:41, 22 Temuze 2023 ([[UTC]])
== [[:Şablon:Xerita eyaletanê Almanya]] ==
Hello Mirzali! Please change the file <nowiki>[[:File:Coat of arms of Berlin.svg]]</nowiki> to <nowiki>[[:File:DEU Berlin COA.svg]]</nowiki>. The filename has been changed. [[Karber:Doc Taxon|Doc Taxon]] ([[Karber vaten:Doc Taxon|mesac]]) 16:48, 2 Keşkelun 2024 ([[UTC]]) [[Karber:Doc Taxon|Doc Taxon]] ([[Karber vaten:Doc Taxon|mesac]]) 16:48, 2 Keşkelun 2024 ([[UTC]])
:Done, thanks for the notification. --[[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 08:21, 3 Keşkelun 2024 ([[UTC]])
== Thank you for being a medical contributors! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{| style="background-color: #fdffe7; border: 1px solid #fceb92;"
|rowspan="2" style="vertical-align: middle; padding: 5px;" | [[File:Wiki Project Med Foundation logo.svg|130px]]
|style="font-size: x-large; padding: 3px 3px 0 3px; height: 1.5em;" |'''The 2024 Cure Award'''
|-
| style="vertical-align: middle; padding: 3px;" |In 2024 you '''[[mdwiki:WikiProjectMed:WikiProject_Medicine/Stats/Top_medical_editors_2024_(all)|were one of the top medical editors in your language]]'''. Thank you from [[m:WikiProject_Med|Wiki Project Med]] for helping bring free, complete, accurate, up-to-date health information to the public. We really appreciate you and the vital work you do!
Wiki Project Med Foundation is a [[meta:Wikimedia_thematic_organizations|thematic organization]] whose mission is to improve our health content. '''[[meta:Wiki_Project_Med#People_interested|Consider joining for 2025]]''', there are no associated costs.
Additionally one of our primary efforts revolves around translating health content. We invite you to '''[https://mdwiki.toolforge.org/Translation_Dashboard/index.php try our new workflow]''' if you have not already. Our dashboard automatically [https://mdwiki.toolforge.org/Translation_Dashboard/leaderboard.php collects statistics] of your efforts and we are working on [https://mdwiki.toolforge.org/fixwikirefs.php tools to automatically improve formating].
|}
Thanks again :-) -- [[mdwiki:User:Doc_James|<span style="color:#0000f1">'''Doc James'''</span>]] along with the rest of the team at '''[[m:WikiProject_Med|Wiki Project Med Foundation]]''' 06:24, 26 Çele 2025 ([[UTC]])
</div>
<!-- Message sent by User:Doc James@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Top_Other_Language_Editors_2024&oldid=28172893 -->
== →Taxımo mewcud: 2015 ==
2015 → Taxımo mewcud: 2025. 2015'te ne olduğu kimseyi ilgilendirmiyor. Yıl 2025 değil mi? Yanılıyor muyum? -- [[Karber:Makenzis|Makenzis]] ([[Karber vaten:Makenzis|mesac]]) 12:15, 13 Şıbat 2025 ([[UTC]])
: {{ping|Makenzis}} Düşünceli uyarınız için teşekkür ederim. [https://diq.wikipedia.org/wiki/Coritiba_Foot_Ball_Club#Tax%C4%B1mo_mewcud Tabela]yı güncelledim. -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 13:34, 13 Şıbat 2025 ([[UTC]])
== Blocks ==
Hello, perhaps you don't know this, but usually we don't hardblock IPs for indefinite amount of time as they are likely rotating multiple owners meaning innocent people will be blocked. I suggest you decrease indefinite blocks of IPs. Best regards, [[Karber:A09|A09]] ([[Karber vaten:A09|mesac]]) 14:44, 20 Şıbat 2025 ([[UTC]])
: {{ping|A09}} I know, but in a platform like Zazaki with a small community, most people come not to contribute, but to cause trouble. This wastes our time. I've been struggling with this since 2006 and I'm still busy fixing bugs. So I have no tolerance for those who make mistakes. With friendly greetings! --[[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 15:08, 20 Şıbat 2025 ([[UTC]])
::I totally understand your concerns, however global praxis is that blocks are meant to be preventative and not punitive. As someone who is in anti-vandalism corps for the sixth year now, I can share alot of experience with you. See, most of the vandalism is short-term based (think of bored schoolers who vandalise Wikipedia in their free time when on a break), but you also have long-term abusers (which are usually account based, you can block those indefinitely). However, IPs are different. Internet providers are constantly shifting IPs between their customers meaning your indefinite blocks actually do more harm than prevention (some even see it punitive, to say the least) as they block innocent potential editors in the future. My rationale and thought process is usually to escalate blocks: so for schoolers, a few hours is sufficient, for usual vandals, a few days, for more egregious a week/month, and the worst ones for a year (except proxies, which can be blocked for any duration, but not indefinite). Reblocking is far better than indefinite blocking for IPs. So I suggest we convert recent blocks to a week/month ones, and the older blocks are lifted. As a member of global sysops, I will closely patrol diqwiki and (re)raise blocks if needed. Would you agree to this proposal? Best regards,--[[Karber:A09|A09]] ([[Karber vaten:A09|mesac]]) 20:26, 20 Şıbat 2025 ([[UTC]])
:::{{ping|A09}} We have had a compulsive maniac for years. That is not an insult, it is literally the case. At first, he was constantly logging in with many fake accounts at the same time. I closed all his accounts one by one. He also admitted that he was the same person. His swearing and insults were also a plus. I think he is now continuing the same process with different IPs. Because his mistakes are very familiar to me. I don't think anyone else would attack our project out of boredom. He was also responsible for my user page not being public because he was constantly vandalizing it. Anyway, I agree to your proposal, so you can (re)raise blocks if needed. Best regards! --[[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 21:08, 20 Şıbat 2025 ([[UTC]])
::::Thanks for letting me know this! I will contact you privately via email to gain more information about this vandal you have described so we (preferably local community with help of global sysops) will be able to efficiently sieve through IP block list while also implementing safety precautions (ie. blacklists, edit filters or IP range blocks) to counteract this vandal. Any documentational site is always a good starting point. The case is surely something we will keep in mind when unblocking. Thank you for your cooperation and willingness, so far it was a pleasure, which doesn't always happen when handling admin behaviour cases! --[[Karber:A09|A09]] ([[Karber vaten:A09|mesac]]) 21:46, 20 Şıbat 2025 ([[UTC]])
:::::{{ping|A09}}I just answered your email. I hope you can do something with it. Best regards! --[[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 09:11, 21 Şıbat 2025 ([[UTC]])
::::I have responded and I'm currently investigating. There's a lot of material to go through. Best regards,--[[Karber:A09|A09]] ([[Karber vaten:A09|mesac]]) 09:27, 21 Şıbat 2025 ([[UTC]])
:::::{{ping|A09}} I take note of it and thank you in advance for your effort. Best regards! --[[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 10:34, 21 Şıbat 2025 ([[UTC]])
:Sorry for the delay, there were some urgent situations on other wikis. I will work on the situation today, if you'd need any explanation regarding the implementation, please contact me in private.--[[Karber:A09|A09]] ([[Karber vaten:A09|mesac]]) 11:28, 8 Adare 2025 ([[UTC]])
::{{ping|A09}} Please excuse my late reply. My laptop, which I have had for years, is broken. As a result, all my connection data is lost. However, I have set up a new email address. Can you please write to me at my new email address? I will reply to you immediately. --[[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 21:21, 10 Adare 2025 ([[UTC]])
:::Hello {{ping|A09}}, I had the hard disk of my old laptop read and recovered my old data. I have therefore sent you another email. I apologize if I gave the impression of being dishonest due to these circumstances and recent events. I ask for your understanding. Best regards. -- [[Karber:Mirzali|Mirzali]] ([[Werênayışê karberi:Mirzali|mesac]]) 08:07, 18 Tebaxe 2026 ([[UTC]])
== David Woodard ==
Perhaps you should allow a discussion about whether the [[David Woodard]] article should be deleted!?
* This article and the spamming investigation is covered in the recent edition of ''The Signpost'': [[:en:Wikipedia:Wikipedia Signpost/2025-08-09/Disinformation report|Wikipedia:Wikipedia Signpost/2025-08-09/Disinformation report]].
* German edition article is deleted. (''See [[:de:Wikipedia:Löschkandidaten/2._Juli_2025]]'')
* English edition article is downedited, and sources are investigated and discussed at [[:en:Talk:David_Woodard#Source_list]]
* Number of languages with article about Woodard has been reduced from 99 to 19 during the last month.
With greetings, --[[Karber:Orland|Orland]] ([[Karber vaten:Orland|mesac]]) 17:12, 17 Tebaxe 2025 ([[UTC]])
: {{ping|Orland}} Following your suggestion, I've tagged the [[David Woodard]] article with a deletion label. As long as this article has an equivalent in other languages, it will remain. Although I'm solely responsible for the content of the Zazaki Wikipedia, I don't want to directly decide on the deletion of an existing article. I always delete spam articles like [[DJ Parisa]], for example, without hesitation. Sincerely! -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 05:18, 18 Tebaxe 2025 ([[UTC]])
== Şablon:Serrename ==
Sorry for writing in English, as I don't r/w Zazaki. I'm working on the new calendar template by copying from [[en:Template:Calendar]]. After it's finished, we shall replace all existing month-specific calendar templates with this new template, and eventually delete them all, as well as [[Şablon:Mengi]]. You may take a look at my edits, and adjust as needed, as I don't know your language. [[Karber:Ikan|Ikan]] ([[Karber vaten:Ikan|mesac]]) 09:50, 21 Tışrino Verên 2025 ([[UTC]])
: {{ping|Ikan}} Thank you for your work on this and for letting us know! It's greatly appreciated. Your approach makes perfect sense. Please feel free to continue, and we will review the template once it's ready. We will check the Zazaki translations for the month and day names to ensure everything is correct, as that is the part you cannot do without knowing the language. We are happy to help with the final adjustments and support the plan to consolidate the old templates. Please don't hesitate to notify us here if you need any specific coordination from our side. Best regards, [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 06:05, 22 Tışrino Verên 2025 ([[UTC]])
:: Please take a look at its current state. Also, [[Şablon:Çımeyê mengan]] shall be deleted as well. [[Karber:Ikan|Ikan]] ([[Karber vaten:Ikan|mesac]]) 06:09, 22 Tışrino Verên 2025 ([[UTC]])
== A request ==
Hello dear Mirazi. I'm sorry for writing in English, because I can't write in the nice language of Zazaki correctly.</br>
Sir, I was editing my user page, and added the page [[Hamid Hassani]] by fault! Please delete the page whenever possible. Thank you indeed! -- [[Karber:Hamid Hassani|Hamid Hassani]] ([[Karber vaten:Hamid Hassani|mesac]]) 07:32, 10 Tışrino Peyên 2025 ([[UTC]]) [[Karber:Hamid Hassani|Hamid Hassani]] ([[Karber vaten:Hamid Hassani|me]]) 07:32, 10 Tışrino Peyên 2025 ([[UTC]])
:{{ping|Hamid Hassani}} Thanks for the notification. I have deleted [[https://diq.wikipedia.org/w/index.php?title=Hamid_Hassani&action=edit&redlink=1| the page]] in question. -- [[Karber:Mirzali|Mirzali]] ([[Karber vaten:Mirzali|mesac]]) 17:57, 10 Tışrino Peyên 2025 ([[UTC]])
== Kategoriye:Bestere ==
Hello,
Can you please delete the duplicate empty categories at [[:Kategoriye:Bestere]]?
Thank you [[Karber:Vargenau|Vargenau]] ([[Werênayışê karberi:Vargenau|mesac]]) 15:11, 9 Kanun 2025 ([[UTC]])
:{{ping|Vargenau}} Thank you so much for your valuable help. I am currently abroad for family reasons and therefore have limited opportunities to check the changes here. However, I will do so immediately upon my return. Thank you for the reminder. Best regards! --[[Karber:Mirzali|Mirzali]] ([[Werênayışê karberi:Mirzali|mesac]]) 19:40, 9 Kanun 2025 ([[UTC]])
:: I have worked on linking diq categories to other languages.
:: For that, I had to change the categories of some pages when you had two redundant categories.
:: But there are still many categories without intewikis. See [[Werênayışê karberi:Vargenau/Categories without interwikis]]
:: Best regards
:: [[Karber:Vargenau|Vargenau]] ([[Werênayışê karberi:Vargenau|mesac]]) 12:27, 12 Kanun 2025 ([[UTC]])
== You may be an eligible candidate for the U4C election ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Greetings,
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee (U4C)]] seeks candidates for the 2026 election. The U4C is the global committee responsible for overseeing enforcement of the [[foundation:Special:MyLanguage/Policy:Universal Code of Conduct|Universal Code of Conduct]]. Elections are held annually, if elected a committee member serves for two years.
This year the U4C requires candidates to hold administrator rights on at least one wiki, which is why you are being contacted as you appear to hold this right. There are other requirements, such as candidates must be at least 18 years old and may not be employed by the Wikimedia Foundation or other related chapters and affiliates. You can find more information in the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026#Call_for_Candidates|call for candidates on Meta-wiki]]. Additionally, the committee's working language is English; some ability to communicate in English is required.
The election opens on 18 May, if you are eligible and interested you have until 10 May to submit your candidacy. There will week between for candidates to answer questions from the community. Voting takes place privately in [[m:Special:MyLanguage/SecurePoll|SecurePoll]], successful candidates must receive at least 60% support. More information is available on [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|the 2026 Elections page]], including timelines and other candidacy information. If you read over the material and consider yourself qualified, please consider submitting your name to run for the committee. If you think someone else in your community might be interested and qualified, please encourage them to run.
In partnership with the U4C -- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|talk]]) 18:32, 28 Nisane 2026 ([[UTC]]) </div>
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/test&oldid=30471751 -->
== Zazaki ==
Hello. I'm looking for Zaza translation of descriptions of a few items for Wikidata. Would you help? [[Karber:Eurohunter|Eurohunter]] ([[Werênayışê karberi:Eurohunter|mesac]]) 19:16, 7 Gulane 2026 ([[UTC]])
== Zazaki Request ==
'''Ma be xêr Mister Mirzali''',
A while ago, Asmen had restricted your talk page to "confirmed users only" which is still in effect today.
Therefore this is my message to you:
Two days ago, I had helped the Zazaki people translate the article on the "Zazaki people" into [[:nan:Zaza_lâng|this Wikipedia language here]].
Would you be so kind as to translate this short Bible verse into the splendid Southern Zazaki (also known as Dımılki) language:
:"''Denn Gott hat die Menschen so sehr geliebt, dass er seinen einzigen Sohn für sie hergab. Jeder, der an ihn glaubt, wird nicht zugrunde gehen, sondern das ewige Leben haben''."
This is all the help that I request from you. --[[Karber:JackonLee54|JackonLee54]] ([[Werênayışê karberi:JackonLee54|mesac]]) 07:15, 31 Tebaxe 2026 ([[UTC]])
fx7oemqx3jv5iqi6ov47qo62ja288l8
Şablon:Karber zh
10
100456
556510
2026-08-31T07:25:21Z
JackonLee54
34697
Ebe zerrekê '{{Dora Karberi-Sewiye | Sewiye = | id = [[Çinki|zh]] | info = 該用戶的 '''[[:Category:Karber zh-N|母語]]''' 是 '''[[:Category:Karber zh|中文]]'''. | nocat = {{{nocat|}}} | usercategory = Karber zh | usercategory2 = Karber zh-N }}<noinclude> {{documentation}} </noinclude>' ra pela newiye vıraziye
556510
wikitext
text/x-wiki
{{Dora Karberi-Sewiye
| Sewiye =
| id = [[Çinki|zh]]
| info = 該用戶的 '''[[:Category:Karber zh-N|母語]]''' 是 '''[[:Category:Karber zh|中文]]'''.
| nocat = {{{nocat|}}}
| usercategory = Karber zh
| usercategory2 = Karber zh-N
}}<noinclude>
{{documentation}}
</noinclude>
or9zoe0dm83smdgzt27scjzq91j2y47
556513
556510
2026-08-31T11:28:57Z
Mirzali
16
556513
wikitext
text/x-wiki
{{Dora Karberi-Sewiye
| Sewiye =
| id = [[Çinki|zh]]
| info = 該用戶的 '''[[:Kategoriye:Karber zh-N|母語]]''' 是 '''[[:Kategoriye:Karber zh|中文]]'''.
| nocat = {{{nocat|}}}
| usercategory = Karber zh
| usercategory2 = Karber zh-N
}}<noinclude>
{{documentation}}
</noinclude>
l4nvqnwjkzysunpnl8j74jjkeppc13a
Şablon:Karber nan
10
100457
556511
2026-08-31T07:31:24Z
JackonLee54
34697
Ebe zerrekê '{{Dora Karberi-Sewiye | Sewiye = | id = [[Minnan Veroci|nan]] | info = Chit-ê iōng-chiá ê '''[[:Category:Karber zh-N|bó-gí]]''' sī '''[[:Category:Karber nan|Bân-lâm-oē]]'''. | nocat = {{{nocat|}}} | usercategory = Karber nan | usercategory2 = Karber nan-N }}<noinclude> {{documentation}} </noinclude>' ra pela newiye vıraziye
556511
wikitext
text/x-wiki
{{Dora Karberi-Sewiye
| Sewiye =
| id = [[Minnan Veroci|nan]]
| info = Chit-ê iōng-chiá ê '''[[:Category:Karber zh-N|bó-gí]]''' sī '''[[:Category:Karber nan|Bân-lâm-oē]]'''.
| nocat = {{{nocat|}}}
| usercategory = Karber nan
| usercategory2 = Karber nan-N
}}<noinclude>
{{documentation}}
</noinclude>
5bwj2d28el8tvbz6b85j77018dqqcjf
Karber:JackonLee54
2
100458
556512
2026-08-31T07:32:09Z
JackonLee54
34697
Ebe zerrekê '{| cellspacing="0" style="width:238px;background:#c5fcdc;" | {{Karber zh}} |- | {{Karber nan}} |- | |}' ra pela newiye vıraziye
556512
wikitext
text/x-wiki
{| cellspacing="0" style="width:238px;background:#c5fcdc;"
| {{Karber zh}}
|-
| {{Karber nan}}
|-
|
|}
p9i2q5qqa1zpcotebc6s841fzhxbh19