Added kmb schedules

This commit is contained in:
2022-09-25 18:48:22 +08:00
parent b251e35be4
commit 41be1db381
8 changed files with 283 additions and 40 deletions

View File

@@ -18,17 +18,17 @@ type QueryResult struct {
func writeShortRoute( lang *string, sb *strings.Builder, b *BusStop ) {
if b.PrevStop() != nil {
utils.WriteMDv2Text( sb, (*b.PrevStop().Name)[ *lang ] )
utils.WriteMDv2Text( sb, (*b.PrevStop().Name)[ *lang ] )
sb.WriteString( " \\> " )
}
sb.WriteString( "*" )
utils.WriteMDv2Text( sb, (*b.Name)[ *lang ] )
utils.WriteMDv2Text( sb, (*b.Name)[ *lang ] )
sb.WriteString( "*" )
if b.NextStop() != nil {
sb.WriteString( " \\> " )
utils.WriteMDv2Text( sb, (*b.NextStop().Name)[ *lang ] )
utils.WriteMDv2Text( sb, (*b.NextStop().Name)[ *lang ] )
}
sb.WriteString( "\n" )
@@ -49,7 +49,7 @@ func ( this QueryResult ) Message() ( string, error ) {
sort.Sort( query.ByKey( *q.Results ) )
for _, entry := range *q.Results {
busStop := any( entry ).( *BusStop )
utils.WriteMDv2Text( &sb, busStop.RouteId )
utils.WriteMDv2Text( &sb, busStop.RouteId )
sb.WriteString( " " )
writeShortRoute( &this.Lang, &sb, busStop )
}
@@ -79,12 +79,18 @@ func ( this QueryResult ) Message() ( string, error ) {
for _, d := range keys {
b := st[ d ]
sb.WriteString( q.Key )
sb.WriteString( "\\-" )
utils.WriteMDv2Text( &sb, d )
if d == "O" {
sb.WriteString( "↑" )
} else if d == "I" {
sb.WriteString( "↓" )
} else {
sb.WriteString( "\\?" )
}
sb.WriteString( "\n " )
for {
utils.WriteMDv2Text( &sb, (*b.Name)[ this.Lang ] )
utils.WriteMDv2Text( &sb, (*b.Name)[ this.Lang ] )
b = b.NextStop()
if b == nil {
break
@@ -111,16 +117,16 @@ func ( this QueryResult ) Message() ( string, error ) {
for _, bus := range buses.Buses {
sb.WriteString( " \\* " )
if bus.ETAText == "" {
utils.WriteMDv2Text( &sb, bus.ETDText )
utils.WriteMDv2Text( &sb, bus.ETDText )
} else {
utils.WriteMDv2Text( &sb, bus.ETAText )
utils.WriteMDv2Text( &sb, bus.ETAText )
}
sb.WriteString( "\n" )
}
sb.WriteString( "\n" )
}
} else {
utils.WriteMDv2Text( &sb, "Schedules are empty...perhaps Out of Service Time?" )
utils.WriteMDv2Text( &sb, "Schedules are empty...perhaps Out of Service Time?" )
}
}