From WikiChip
Difference between revisions of "Module:chip"

Line 15: Line 15:
 
         :attr('class', 'chip-infobox')
 
         :attr('class', 'chip-infobox')
  
        -- header
+
    -- header
 +
    if frame.args.title then
 +
      infobox
 
         :tag('tr')
 
         :tag('tr')
 
           :tag('td')
 
           :tag('td')
Line 21: Line 23:
 
             :attr('colspan', '2')
 
             :attr('colspan', '2')
 
             :wikitext('[[name::' .. frame.args.title .. ']]')
 
             :wikitext('[[name::' .. frame.args.title .. ']]')
 +
    else
 +
      infobox
 +
        :tag('tr')
 +
          :tag('td')
 +
          :attr('style', 'font-weight: bold; font-size 1.2em; font-color: red;')
 +
          :wikitext('ERROR: MISSING TITLE!')
 +
    end
  
        -- image
+
    -- image
 +
    if frame.args.image then
 +
      local image = p.add_file_prefix(frame.args.image)
 +
      infobox
 
         :tag('tr')
 
         :tag('tr')
 
           :tag('td')
 
           :tag('td')
 
             :attr('class', 'chip-infobox-pic')
 
             :attr('class', 'chip-infobox-pic')
 
             :attr('colspan', '2')
 
             :attr('colspan', '2')
             :wikitext(p.add_file_prefix(frame.args.image))
+
             :wikitext('[[image::' .. image .. '| ]][[' .. image .. ']]')
 +
    end
  
 
     return infobox
 
     return infobox

Revision as of 16:34, 3 January 2017

To add this template, simple add
{{chip}}
to the page and save. The chip infobox will have a small [Edit Values] button at the top-right corner which can be used to add values using a form.
local p = {}

function p.add_file_prefix(str)
  if string.match(string.lower(str), '^file:') then
    return str
  else
    return 'File:' .. str
  end
end

function p.chip(frame)
    local infobox = mw.html.create('table')

    infobox
        :attr('class', 'chip-infobox')

    -- header
    if frame.args.title then
      infobox
        :tag('tr')
          :tag('td')
            :attr('class', 'chip-infobox-header')
            :attr('colspan', '2')
            :wikitext('[[name::' .. frame.args.title .. ']]')
    else
      infobox
        :tag('tr')
          :tag('td')
          :attr('style', 'font-weight: bold; font-size 1.2em; font-color: red;')
          :wikitext('ERROR: MISSING TITLE!')
    end

    -- image
    if frame.args.image then
      local image = p.add_file_prefix(frame.args.image)
      infobox
        :tag('tr')
          :tag('td')
            :attr('class', 'chip-infobox-pic')
            :attr('colspan', '2')
            :wikitext('[[image::' .. image .. '| ]][[' .. image .. ']]')
    end

    return infobox
end

return p