3675
правок
Mansur700 (обсуждение | вклад) (Керла агӀо: «-- -- This module implements {{Sidebar}} -- require('Module:No globals') local p = {} local getArgs = require('Module:Arguments').getArgs local navbar = require('Module...») |
Mansur700 (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
-- | -- | ||
-- | -- Этот модуль обеспечивает работу шаблона {{Sidebar}} | ||
-- | -- | ||
require(' | require('Модуль:No globals') | ||
local p = {} | local p = {} | ||
local getArgs = require(' | local getArgs = require('Модуль:Arguments').getArgs | ||
local navbar = require(' | local navbar = require('Модуль:Navbar')._navbar | ||
local function trimAndAddAutomaticNewline(s) | local function trimAndAddAutomaticNewline(s) | ||
Строка 35: | Строка 35: | ||
:addClass(args.wraplinks ~= 'true' and 'nowraplinks' or nil) | :addClass(args.wraplinks ~= 'true' and 'nowraplinks' or nil) | ||
:addClass(args.bodyclass or args.class) | :addClass(args.bodyclass or args.class) | ||
:css('float', args.float or ' | :css('float', args.float or 'right') | ||
:css('clear', (args.float == 'none' and 'both') or args.float or ' | :css('clear', (args.float == 'none' and 'both') or args.float or 'right') | ||
:css('width', args.width or '22.0em') | :css('width', args.width or '22.0em') | ||
:css('margin', args.float == ' | :css('margin', args.float == 'left' and '0 1.0em 1.0em 0' or '0 0 1.0em 1.0em') | ||
:css('background', '#f9f9f9') | :css('background', '#f9f9f9') | ||
:css('border', '1px solid #aaa') | :css('border', '1px solid #aaa') | ||
Строка 203: | Строка 203: | ||
if not child then | if not child then | ||
local navbarArg = args.navbar or args.tnavbar | local navbarArg = args.navbar or args.tnavbar | ||
if navbarArg ~= 'none' and navbarArg ~= 'off' and (args.name or frame:getParent():getTitle():gsub('/ | if navbarArg ~= 'none' and navbarArg ~= 'off' and (args.name or frame:getParent():getTitle():gsub('/sandbox$', '') ~= 'Шаблон:Sidebar') then | ||
root | root | ||
:tag('tr') | :tag('tr') | ||
:tag('td') | :tag('td') | ||
:css('text-align', ' | :css('text-align', 'right') | ||
:css('font-size', '115%') | :css('font-size', '115%') | ||
:cssText(args.navbarstyle or args.tnavbarstyle) | :cssText(args.navbarstyle or args.tnavbarstyle) | ||
Строка 227: | Строка 227: | ||
args.belowstyle = 'border-top: 1px solid #aaa; border-bottom: 1px solid #aaa;' .. (args.belowstyle or '') | args.belowstyle = 'border-top: 1px solid #aaa; border-bottom: 1px solid #aaa;' .. (args.belowstyle or '') | ||
args.navbarstyle = 'padding-top: 0.6em;' .. (args.navbarstyle or args.tnavbarstyle or '') | args.navbarstyle = 'padding-top: 0.6em;' .. (args.navbarstyle or args.tnavbarstyle or '') | ||
if not args.name and frame:getParent():getTitle():gsub('/ | if not args.name and frame:getParent():getTitle():gsub('/sandbox$', '') == 'Шаблон:Sidebar with collapsible lists' then | ||
args.navbar = 'none' | args.navbar = 'none' | ||
end | end | ||
Строка 251: | Строка 251: | ||
:css('font-size', '105%') | :css('font-size', '105%') | ||
:css('background', 'transparent') | :css('background', 'transparent') | ||
:css('text-align', ' | :css('text-align', 'left') | ||
:cssText(args.basestyle) | :cssText(args.basestyle) | ||
:cssText(args.listtitlestyle) | :cssText(args.listtitlestyle) | ||
:cssText(args['list' .. num .. 'titlestyle']) | :cssText(args['list' .. num .. 'titlestyle']) | ||
:wikitext(trimAndAddAutomaticNewline(args['list' .. num .. 'title'] or ' | :wikitext(trimAndAddAutomaticNewline(args['list' .. num .. 'title'] or 'List')) | ||
:done() | :done() | ||
:tag('div') | :tag('div') |