penguin/golifehk

@golifehk bot in Telegram

datasources/mtr/bus/BusStop.go

raw ยท 1045 bytes

package bus

import (
    i18n "github.com/tgckpg/golifehk/i18n"
)

type BusStop struct {
    RouteId string
    Direction string
    StationSeq int
    StationId string
    Latitude float64
    Longtitude float64
    Name_zh string
    Name_en string

    // RouteStops[ StationSeq ] = BusStop
    RouteStops *map[int] *BusStop

    i18n.Generics
}

func ( this *BusStop ) PrevStop() *BusStop {
    if v, hasKey := (*this.RouteStops)[ this.StationSeq - 1 ]; hasKey {
        return v
    }
    return nil
}

func ( this *BusStop ) NextStop() *BusStop {
    if v, hasKey := (*this.RouteStops)[ this.StationSeq + 1 ]; hasKey {
        return v
    }
    return nil
}

func ( this *BusStop ) Reload() {
    i18n_Name := map[string] string{}
    i18n_Name["en"] = this.Name_en
    i18n_Name["zh-Hant"] = this.Name_zh

    searchData := [] *string{}
    searchData = append( searchData, &this.Name_en )
    searchData = append( searchData, &this.Name_zh )

    this.Name = &i18n_Name
    this.Key = &this.RouteId
    this.SearchData = &searchData
}