local dkjson = require("lain.util").dkjson local math = require("math") local lain = require("lain") local beautiful = require("beautiful") local widgets = {} local function parse_ecb_rates(output, symbol, prec) local xc, pos, err = dkjson.decode(output, 1, nil) if not prec then prec = 2 end print (xc["rates"]["NZD"]) val = (xc and xc["rates"][symbol]) or 0 print (val) val = math.floor(val*10^prec+0.5)/10^prec return (not err and val) or "n/a" end widgets.ecb_widget = lain.widget.watch({ cmd = "curl -m5 -s 'https://api.exchangeratesapi.io/latest?base=EUR'", timeout = 600, settings = function() widget:set_text(parse_ecb_rates(output, 'NZD') .. " NZD = " .. parse_ecb_rates(output, 'CHF') .. " CHF") end, }) return widgets