 modulename = 'fw'
 blacklistfile = modulename + ".json"
 displayfmt = '%-4s %-50s %-15s %s'
+timefmt = 'YYYY-MM-DD HH:mm:ss ZZ'
 svcQueueIntervalMs = 300 * 1000
 
 robotRef = false
 fwdata =
   notify: []
   blacklist: []
+  whitelist: []
 
 isAuthorized = (msg) ->
   console.error 'bad robotRef' unless robotRef

#   xxxxxxxxxxx [required] - API KEY
#
# Commands:
#   hubot fw - fw commands
#
# Notes:
#   requires hubot-auth be present


    return

  robot.respond /(?:firewall|fw) show (whitelist|wl|w|blacklist|bl|b)(?: (cidr|url)(?: ([^ ]+)|)|)$/i, (msg) ->
    return showList robot, msg

  robot.respond /(?:firewall|fw) add (whitelist|wl|w|blacklist|bl|b) (url|cidr) ([^ ]+)(?: ([^ ]+)|)$/i, (msg) ->
    return unless isAuthorized msg
    return unless is2fa msg

    return addListEntry robot, msg

  robot.respond /(?:firewall|fw) (?:delete|del|d) (whitelist|wl|w|blacklist|bl|b) (url|cidr) ([^ ]+)$/i, (msg) ->
    return unless isAuthorized msg
    return unless is2fa msg

    return deleteListEntry robot, msg

  robot.respond /(?:firewall|fw) (?:subscribe|sub)(?: ([^ ]+))$/i, (msg) ->
    return subscribe robot, msg

  robot.respond /(?:firewall|fw) show (?:subscribers|s)$/i, (msg) ->
    return showSubscribers robot, msg

  robot.respond /(?:firewall|fw) (?:unsubscribe|unsub)(?: ([^ ]+))$/i, (msg) ->
    return unsubscribe robot, msg

