1
0
mirror of https://github.com/taigrr/wtf synced 2025-01-18 04:03:14 -08:00

clean up cryptolive

This commit is contained in:
Hossein Mehrabi 2018-06-02 11:38:29 +04:30 committed by Chris Cummer
parent 6a35f122a3
commit adbb8eab52
2 changed files with 34 additions and 19 deletions

View File

@ -42,3 +42,13 @@ type cResponse struct {
USD float32 `json:"USD"` USD float32 `json:"USD"`
EUR float32 `json:"EUR"` EUR float32 `json:"EUR"`
} }
/* -------------------- Unexported Functions -------------------- */
func (l *list) addItem(name string, displayName string, to []*toCurrency) {
l.items = append(l.items, &fromCurrency{
name: name,
displayName: displayName,
to: to,
})
}

View File

@ -33,32 +33,22 @@ func NewWidget() *Widget {
updateInterval: Config.UInt("wtf.mods.cryptolive.updateInterval", 10), updateInterval: Config.UInt("wtf.mods.cryptolive.updateInterval", 10),
} }
widget.setList()
return &widget
}
func (widget *Widget) setList() {
currenciesMap, _ := Config.Map("wtf.mods.cryptolive.currencies") currenciesMap, _ := Config.Map("wtf.mods.cryptolive.currencies")
var currencies []*fromCurrency widget.list = &list{}
for currency := range currenciesMap { for currency := range currenciesMap {
displayName, _ := Config.String("wtf.mods.cryptolive.currencies." + currency + ".displayName") displayName, _ := Config.String("wtf.mods.cryptolive.currencies." + currency + ".displayName")
toCList, _ := Config.List("wtf.mods.cryptolive.currencies." + currency + ".to") toList := getToList(currency)
var toList []*toCurrency widget.list.addItem(currency, displayName, toList)
for _, v := range toCList {
toList = append(toList, &toCurrency{
name: v.(string),
price: -1,
})
}
currencies = append(currencies, &fromCurrency{
name: currency,
displayName: displayName,
to: toList,
})
} }
widget.list = &list{
items: currencies,
}
return &widget
} }
/* -------------------- Exported Functions -------------------- */ /* -------------------- Exported Functions -------------------- */
@ -130,3 +120,18 @@ func (widget *Widget) updateCurrencies() {
} }
} }
func getToList(fromName string) []*toCurrency {
toNames, _ := Config.List("wtf.mods.cryptolive.currencies." + fromName + ".to")
var toList []*toCurrency
for _, to := range toNames {
toList = append(toList, &toCurrency{
name: to.(string),
price: -1,
})
}
return toList
}