Dota 2 Вики
(Новая страница: «local cargo = mw.ext.cargo local color = require( 'Module:Color' )._main local getArgs = require( 'Module:Arguments' ).main local p = {} function p.main( frame )…»)
 
мНет описания правки
Строка 1: Строка 1:
 
local cargo = mw.ext.cargo
 
local cargo = mw.ext.cargo
local color = require( 'Module:Color' )._main
+
local color = require('Module:Color')._main
local getArgs = require( 'Module:Arguments' ).main
+
local getArgs = require('Module:Arguments').main
 
local p = {}
 
local p = {}
   
function p.main( frame )
+
function p.main()
local args = getArgs()
+
local args = getArgs()
return p._main( args )
+
return p._main(args)
 
end
 
end
   
function p._main( args )
+
function p._main(args)
  +
assert(args[1], 'Не введен косметический предмет')
if args[1] then
 
local size = args['userparam'] or args[2] or '100px'
 
local border = 'cos_common'
 
local icon = 'File:Cosmetic icon ' .. args[1] .. '.png'
 
 
-- Try getting data from the cargo table.
 
local cargo_output = cargo.query( 'cosmetic_items', 'image, rarity', { where='_pageName="' .. args[1] .. '"', groupBy='_pageID' } )[1]
 
if cargo_output then
 
border = 'cos_' .. string.lower(cargo_output['rarity'])
 
icon = cargo_output['image']
 
end
 
   
 
local icon = 'File:Cosmetic icon ' .. args[1] .. '.png'
return mw.html.create( 'div' )
 
 
local border = 'cos_common'
:attr( 'class', 'cosmetic-label' )
 
 
local size = args['userparam'] or args[2] or '100px'
:css( 'margin-left', '6px' )
 
  +
local link = args['link'] or args[1]
:css( 'margin-right', '6px' )
 
  +
local name = args['text'] or args[1]
:css( 'width', size )
 
  +
:wikitext( '<div style="box-shadow:0px 0px 2px 4px ' .. color({ border }) .. '>[[' .. icon .. '|' .. size .. '|link=' .. args[1] .. '|' .. args[1] .. ']]</div>[[' .. args[1] .. ']]' )
 
 
-- Try getting data from the cargo table.
else
 
 
local cargo_output = cargo.query('cosmetic_items', 'image, rarity', { where='_pageName="' .. args[1] .. '"', groupBy='_pageID' })[1]
return error( 'Проверьте ввод', 0 )
 
 
if cargo_output then
end
 
 
border = 'cos_' .. string.lower(cargo_output['rarity'])
 
icon = cargo_output['image']
 
end
  +
 
return mw.html.create('div')
 
:attr('class', 'cosmetic-label')
 
:css('margin-left', '6px')
 
:css('margin-right', '6px')
 
:css('width', size)
 
:wikitext('<div style="box-shadow:0px 0px 2px 4px ' .. color({ border }) .. '>[[' .. icon .. '|' .. size .. '|link=' ..link .. '|' .. name .. ']]</div>[[' .. link .. '|' .. name .. ']]')
 
end
 
end
   

Версия от 12:24, 26 марта 2018

Документация для Модуль:Cosmetic Перейти к коду ↴ [ править | очистить ]

Reality Rift icon
▶️ Planeshift.
Документацию для этого шаблона или модуля можно найти в Template:Cosmetic.
Вы можете быть перенаправлены на другой язык вики, если перевод недоступен.


local cargo = mw.ext.cargo
local color = require('Module:Color')._main
local getArgs = require('Module:Arguments').main
local p = {}

function p.main()
  local args = getArgs()
  return p._main(args)
end

function p._main(args)
  assert(args[1], 'Не введен косметический предмет')

  local icon = 'File:Cosmetic icon ' .. args[1] .. '.png'
  local border = 'cos_common'
  local size = args['userparam'] or args[2] or '100px'
  local link = args['link'] or args[1]
  local name = args['text'] or args[1]

  -- Try getting data from the cargo table.
  local cargo_output = cargo.query('cosmetic_items', 'image, rarity', { where='_pageName="' .. args[1] .. '"', groupBy='_pageID' })[1]
  if cargo_output then
    border = 'cos_' .. string.lower(cargo_output['rarity'])
    icon = cargo_output['image']
  end

  return mw.html.create('div')
    :attr('class', 'cosmetic-label')
    :css('margin-left', '6px')
    :css('margin-right', '6px')
    :css('width', size)
    :wikitext('<div style="box-shadow:0px 0px 2px 4px ' .. color({ border }) .. '>[[' .. icon .. '|' .. size .. '|link=' ..link .. '|' .. name .. ']]</div>[[' .. link .. '|' .. name .. ']]')
end

return p