경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.스팸 방지 검사입니다. 이것을 입력하지 마세요!local yesno = require('Module:Yesno') local p = {} local function makeData(args) local data = {} -- Main table classes data.classes = {} if yesno(args.metadata) ~= false then table.insert(data.classes, 'metadata') end if args.position and args.position:lower() == 'left' then table.insert(data.classes, 'side-box-left') elseif args['위치'] and args['위치']:lower() == 'left' then table.insert(data.classes, 'side-box-left') else table.insert(data.classes, 'side-box-right') end if args.collapsible then table.insert(data.classes, 'mw-collapsible') if args.collapsible == "collapsed" then table.insert(data.classes, 'mw-collapsed') end data.collapsible = true end table.insert(data.classes, args.class) -- Image if args.image and args.image ~= 'none' then data.image = args.image elseif args['그림'] and args['그림'] ~= 'none' then data.image = args['그림'] end -- we have to check to see if a downstream use has plainlist like -- Template:Sister_project. also it's the default. wikitext is :( if args.textclass == 'plainlist' or not args.textclass then data.textclass = 'plainlist' data.plainlist_templatestyles = 'Plainlist/styles.css' else data.textclass = args.textclass end -- Copy over data that does not need adjusting local argsToCopy = { -- aria qualities 'role', 'labelledby', -- Styles 'style', 'textstyle', '양식', '내용양식', 'templatestyles', -- Above row 'above', 'abovestyle', '윗글', '윗글양식', -- Body row 'text', 'imageright', '내용', '오른쪽그림', -- Below row 'below', '아랫글', } for i, key in ipairs(argsToCopy) do data[key] = args[key] end return data end local function renderSidebox(data) -- Renders the sidebox HTML. -- Table root local root = mw.html.create('div') root:attr('role', data.role) :attr('aria-labelledby', data.labelledby) :addClass('side-box') for i, class in ipairs(data.classes or {}) do root:addClass(class) end if (data.style or data['양식']) then root:cssText(data.style or data['양식']) end local frame = mw.getCurrentFrame() if data.plainlist_templatestyles then root:wikitext(frame:extensionTag{ name = 'templatestyles', args = { src = data.plainlist_templatestyles } }) end -- The "above" row if (data.above or data['윗글']) then local above = root:newline():tag('div') above:addClass('side-box-abovebelow') :newline() :wikitext(data.above or data['윗글']) if (data.textstyle or data['내용양식']) then above:cssText(data.textstyle or data['내용양식']) end if (data.abovestyle or data['윗글양식']) then above:cssText(data.abovestyle or data['윗글양식']) end end -- The body row local body = root:newline():tag('div') body:addClass('side-box-flex') :addClass(data.collapsible and 'mw-collapsible-content') :newline() if (data.image or data['그림']) then body:tag('div') :addClass('side-box-image') :wikitext(data.image or data['그림']) end local text = body:newline():tag('div') text:addClass('side-box-text') :addClass(data.textclass) if (data.textstyle or data['내용양식']) then text:cssText(data.textstyle or data['내용양식']) end text:wikitext(data.text or data['내용']) if (data.imageright or data['오른쪽그림']) then body:newline():tag('div') :addClass('side-box-imageright') :wikitext(data.imageright or data['오른쪽그림']) end -- The below row if (data.below or data['아랫글']) then local below = root:newline():tag('div') below :addClass('side-box-abovebelow') :wikitext(data.below or data['아랫글']) if (data.textstyle or data['내용양식']) then below:cssText(data.textstyle or data['내용양식']) end end root:newline() local templatestyles = '' if data.templatestyles then templatestyles = frame:extensionTag{ name = 'templatestyles', args = { src = data.templatestyles } } end return frame:extensionTag{ name = 'templatestyles', args = { src = 'Module:Side box/styles.css' } } .. templatestyles .. tostring(root) end function p._main(args) local data = makeData(args) return renderSidebox(data) end function p.main(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = v:match('%s*(.-)%s*$') if v ~= '' then args[k] = v end end return p._main(args) end return p 요약: 이음위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-동일조건변경허락 4.0 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는 이음위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요. 또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다. 저작권이 있는 내용을 허가 없이 저장하지 마세요! 취소 편집 도움말 (새 창에서 열림) 이 문서에서 사용한 틀: 모듈:Side box/설명문서 (편집)