| Line 1: |
Line 1: |
| | -- This module implements [[Template:Icon]]. | | -- This module implements [[Template:Icon]]. |
| | | | |
| − | require("Module:No globals") | + | require("strict") |
| | local yesNo = require("Module:Yesno") | | local yesNo = require("Module:Yesno") |
| | local getArgs = require("Module:Arguments").getArgs | | local getArgs = require("Module:Arguments").getArgs |
| Line 7: |
Line 7: |
| | | | |
| | local p = {} | | local p = {} |
| | + | |
| | + | -- Determine whether we're being called from a sandbox |
| | + | local sandbox = mw.getCurrentFrame():getTitle():find('sandbox', 1, true) and '/sandbox' or '' |
| | | | |
| | -- Implements [[Template:Icon]] | | -- Implements [[Template:Icon]] |
| | -- Returns the icon image corresponding to a string (like 'B') | | -- Returns the icon image corresponding to a string (like 'B') |
| | function p._main(args, data) | | function p._main(args, data) |
| − | local inSandbox = yesNo(args.sandbox)
| + | local data_module = 'Module:Icon/data'..sandbox |
| − | local data_module = 'Module:Icon/data'..(inSandbox and '/sandbox' or '') | |
| | data = data or mw.loadData(data_module) | | data = data or mw.loadData(data_module) |
| | local code = args.class or args[1] | | local code = args.class or args[1] |