Changes
Jump to navigation
Jump to search
mLine 13:
Line 13:
+
+
+
+
+
+
+
+
Line 119:
Line 127:
− +
− category_in_empty_row_pattern, ''+
Line 375:
Line 383:
− +
− +
Line 386:
Line 394:
− +
− We aren't doing it here yet because there are 4-5000 pages with 'raw' infobox+
− +
− +
− +
− -- local base_templatestyles = frame:extensionTag{+
− -- name = 'templatestyles', args = { src = cfg.i18n.templatestyles }+
− -- }+
− +
Line 420:
Line 428:
− -- base_templatestyles, -- see function description+
− +
− +
+
+
+
+
+
+
+
+
+
+
+
+
+
Line 448:
Line 469:
− +
− renderSubheaders()+
− renderImages()
− preprocessRows()
− renderRows()
− renderBelowRow()
− renderNavBar()
− renderItalicTitle()
− renderEmptyRowCategories()
− renderTrackingCategories()
− cleanInfobox()
−
spacing
local marker = '<span class=special_infobox_marker>'
local marker = '<span class=special_infobox_marker>'
local s = sval
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, '(<%s*[Tt][Rr])', marker .. '%1')
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>)', '%1' .. marker)
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>)', '%1' .. marker)
if rowArgs.data then
if rowArgs.data then
root:wikitext(
root:wikitext(
'[[Category:Pages which use infobox templates with ignored data cells]]'
'[[Category:Pages using infobox templates with ignored data cells]]'
)
)
end
end
elseif rowArgs.data and rowArgs.data:gsub(
elseif rowArgs.data and rowArgs.data:gsub(
category_in_empty_row_pattern, ''
):match('^%S') then
):match('^%S') then
has_rows = true
has_rows = true
if args.title then
if args.title then
root:wikitext(
root:wikitext(
'[[Category:Pages which use embedded infobox templates with the title parameter]]'
'[[Category:Pages using embedded infobox templates with the title parameter]]'
)
)
end
end
elseif #(getArgNums('data')) == 0 and mw.title.getCurrentTitle().namespace == 0 then
elseif #(getArgNums('data')) == 0 and mw.title.getCurrentTitle().namespace == 0 then
root:wikitext('[[Category:Articles which use infobox templates with no data rows]]')
root:wikitext('[[Category:Articles using infobox templates with no data rows]]')
end
end
end
end
Loads the templatestyles for the infobox.
Loads the templatestyles for the infobox.
TODO: load base templatestyles here rather than in MediaWiki:Common.css
TODO: FINISH loading base templatestyles here rather than in
MediaWiki:Common.css. There are 4-5000 pages with 'raw' infobox tables.
tables. See [[Mediawiki_talk:Common.css/to_do#Infobox]] and/or come help :).
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.
When we do this we should clean up the inline CSS below too.
Will have to do some bizarre conversion category like with sidebar.
Will have to do some bizarre conversion category like with sidebar.
]=]
]=]
local function loadTemplateStyles()
local function loadTemplateStyles()
local frame = mw.getCurrentFrame()
local frame = mw.getCurrentFrame()
-- See function description
-- See function description
local base_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = 'Module:Infobox/styles.css' }
}
local templatestyles = ''
local templatestyles = ''
if args['templatestyles'] then templatestyles = frame:extensionTag{
if args['templatestyles'] then templatestyles = frame:extensionTag{
return table.concat({
return table.concat({
base_templatestyles, -- see function description
templatestyles,
templatestyles,
child_templatestyles,
child_templatestyles,
grandchild_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
end
:wikitext(args.title)
:wikitext(args.title)
end
end
structure_infobox_common()
return loadTemplateStyles() .. root
return loadTemplateStyles() .. root
end
end