()
 




 









 








 






























 










 
 




   



稿

 

















:Side box






Аԥсшәа
Afrikaans
Pangcah
Ænglisc
العربية
الدارجة
مصرى
Авар
Kotava
Azərbaycanca
تۆرکجه
Basa Bali
Bikol Central



Brezhoneg
Bosanski
Català
 / Mìng-dĕ̤ng-nḡ
Cebuano
Chamoru
کوردی
Corsu
Dansk
English
Español
Eesti
فارسی
Suomi
Føroyskt
Gaeilge
Galego
گیلکی
  / Gõychi Konknni

Hausa
/Hak-kâ-ngî
Hawaiʻi
Hrvatski
Հայերեն
Արեւմտահայերէն
Bahasa Indonesia
Ilokano
Íslenska
Jawa

Qaraqalpaqsha
Taqbaylit


Kurdî
Ladin
Lietuvių
Latviešu
Madhurâ
Māori
Македонски


Bahasa Melayu

مازِرونی

Norsk nynorsk
Norsk bokmål
ି

Pangasinan
ि
پنجابی
پښتو
Português
Ikirundi
Русский
Scots
سنڌي
Srpskohrvatski / српскохрватски
 

Simple English
Slovenščina
Anarâškielâ
Soomaaliga
Shqip
Српски / srpski
Svenska
Sakizaya

Тоҷикӣ


Türkmençe
Tagalog
Türkçe
اردو
Oʻzbekcha / ўзбекча
Tiếng Vit
Volapük
Winaray



 / Bân-lâm-gú

 


 











 




















 









   


 






 




 









URL
QR

 




/  



PDF

 




 












 

















半永久的に保護されているモジュール




モジュールの解説[表示] [編集] [履歴] [キャッシュを破棄]

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')
 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
 end

 -- Copy over data that does not need adjusting
 local argsToCopy = {
  -- aria qualities
  'role',
  'labelledby',
  
  -- Classes
  'textclass',
  

  -- 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 then
  root:cssText(data.style)
 end

 -- The "above" row
 if data.above then
  local above = root:newline():tag('div')
  above:addClass('side-box-abovebelow')
   :newline()
   :wikitext(data.above)
  if data.textstyle then
   above:cssText(data.textstyle)
  end
  if data.abovestyle then
   above:cssText(data.abovestyle)
  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 then
  body:tag('div')
   :addClass('side-box-image')
   :wikitext(data.image)
 end
 local text = body:newline():tag('div')
 text:addClass('side-box-text')
  :addClass(data.textclass or 'plainlist')
 if data.textstyle then
  text:cssText(data.textstyle)
 end
 text:wikitext(data.text)
 if data.imageright then
  body:newline():tag('div')
   :addClass('side-box-imageright')
   :wikitext(data.imageright)
 end

 -- The below row
 if data.below then
  local below = root:newline():tag('div')
  below
   :addClass('side-box-abovebelow')
   :wikitext(data.below)
  if data.textstyle then
   below:cssText(data.textstyle)
  end
 end

 root:newline()
 local frame = mw.getCurrentFrame()
 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

https://ja.wikipedia.org/w/index.php?title=モジュール:Side_box&oldid=94202590

: 

 



 202338 () 13:23 UTC

 -















Cookie





Wikimedia Foundation
Powered by MediaWiki