add schedule subcommand
This commit is contained in:
parent
16b7f42695
commit
422e666d9f
34
cmd/root.go
34
cmd/root.go
|
@ -27,40 +27,6 @@ import (
|
||||||
"scm.dairydemon.net/filifa/mlblive/cmd/internal/statsapi"
|
"scm.dairydemon.net/filifa/mlblive/cmd/internal/statsapi"
|
||||||
)
|
)
|
||||||
|
|
||||||
var team teamFlag
|
|
||||||
var teamIDs = map[string]statsapi.TeamID{
|
|
||||||
"laa": statsapi.LAA,
|
|
||||||
"az": statsapi.AZ,
|
|
||||||
"bal": statsapi.BAL,
|
|
||||||
"bos": statsapi.BOS,
|
|
||||||
"chc": statsapi.CHC,
|
|
||||||
"cin": statsapi.CIN,
|
|
||||||
"cle": statsapi.CLE,
|
|
||||||
"col": statsapi.COL,
|
|
||||||
"det": statsapi.DET,
|
|
||||||
"hou": statsapi.HOU,
|
|
||||||
"kc": statsapi.KC,
|
|
||||||
"lad": statsapi.LAD,
|
|
||||||
"wsh": statsapi.WSH,
|
|
||||||
"nym": statsapi.NYM,
|
|
||||||
"oak": statsapi.OAK,
|
|
||||||
"pit": statsapi.PIT,
|
|
||||||
"sd": statsapi.SD,
|
|
||||||
"sea": statsapi.SEA,
|
|
||||||
"sf": statsapi.SF,
|
|
||||||
"stl": statsapi.STL,
|
|
||||||
"tb": statsapi.TB,
|
|
||||||
"tex": statsapi.TEX,
|
|
||||||
"tor": statsapi.TOR,
|
|
||||||
"min": statsapi.MIN,
|
|
||||||
"phi": statsapi.PHI,
|
|
||||||
"atl": statsapi.ATL,
|
|
||||||
"cws": statsapi.CWS,
|
|
||||||
"mia": statsapi.MIA,
|
|
||||||
"nyy": statsapi.NYY,
|
|
||||||
"mil": statsapi.MIL,
|
|
||||||
}
|
|
||||||
|
|
||||||
func getGamePk() (string, error) {
|
func getGamePk() (string, error) {
|
||||||
id := teamIDs[string(team)]
|
id := teamIDs[string(team)]
|
||||||
sched, err := statsapi.RequestSchedule("1", strconv.Itoa(int(id)))
|
sched, err := statsapi.RequestSchedule("1", strconv.Itoa(int(id)))
|
||||||
|
|
|
@ -0,0 +1,98 @@
|
||||||
|
/*
|
||||||
|
Copyright © 2024 filifa
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
package cmd
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"log"
|
||||||
|
"strconv"
|
||||||
|
|
||||||
|
"github.com/spf13/cobra"
|
||||||
|
"scm.dairydemon.net/filifa/mlblive/cmd/internal/statsapi"
|
||||||
|
)
|
||||||
|
|
||||||
|
var team teamFlag
|
||||||
|
var teamIDs = map[string]statsapi.TeamID{
|
||||||
|
"laa": statsapi.LAA,
|
||||||
|
"az": statsapi.AZ,
|
||||||
|
"bal": statsapi.BAL,
|
||||||
|
"bos": statsapi.BOS,
|
||||||
|
"chc": statsapi.CHC,
|
||||||
|
"cin": statsapi.CIN,
|
||||||
|
"cle": statsapi.CLE,
|
||||||
|
"col": statsapi.COL,
|
||||||
|
"det": statsapi.DET,
|
||||||
|
"hou": statsapi.HOU,
|
||||||
|
"kc": statsapi.KC,
|
||||||
|
"lad": statsapi.LAD,
|
||||||
|
"wsh": statsapi.WSH,
|
||||||
|
"nym": statsapi.NYM,
|
||||||
|
"oak": statsapi.OAK,
|
||||||
|
"pit": statsapi.PIT,
|
||||||
|
"sd": statsapi.SD,
|
||||||
|
"sea": statsapi.SEA,
|
||||||
|
"sf": statsapi.SF,
|
||||||
|
"stl": statsapi.STL,
|
||||||
|
"tb": statsapi.TB,
|
||||||
|
"tex": statsapi.TEX,
|
||||||
|
"tor": statsapi.TOR,
|
||||||
|
"min": statsapi.MIN,
|
||||||
|
"phi": statsapi.PHI,
|
||||||
|
"atl": statsapi.ATL,
|
||||||
|
"cws": statsapi.CWS,
|
||||||
|
"mia": statsapi.MIA,
|
||||||
|
"nyy": statsapi.NYY,
|
||||||
|
"mil": statsapi.MIL,
|
||||||
|
}
|
||||||
|
|
||||||
|
func schedule(cmd *cobra.Command, args []string) {
|
||||||
|
id := teamIDs[string(team)]
|
||||||
|
sched, err := statsapi.RequestSchedule("1", strconv.Itoa(int(id)))
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Println(string(sched))
|
||||||
|
}
|
||||||
|
|
||||||
|
// scheduleCmd represents the schedule command
|
||||||
|
var scheduleCmd = &cobra.Command{
|
||||||
|
Use: "schedule",
|
||||||
|
Short: "A brief description of your command",
|
||||||
|
Long: `A longer description that spans multiple lines and likely contains examples
|
||||||
|
and usage of using your command. For example:
|
||||||
|
|
||||||
|
Cobra is a CLI library for Go that empowers applications.
|
||||||
|
This application is a tool to generate the needed files
|
||||||
|
to quickly create a Cobra application.`,
|
||||||
|
Run: schedule,
|
||||||
|
}
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
rootCmd.AddCommand(scheduleCmd)
|
||||||
|
|
||||||
|
// Here you will define your flags and configuration settings.
|
||||||
|
|
||||||
|
// Cobra supports Persistent Flags which will work for this command
|
||||||
|
// and all subcommands, e.g.:
|
||||||
|
// scheduleCmd.PersistentFlags().String("foo", "", "A help for foo")
|
||||||
|
|
||||||
|
// Cobra supports local flags which will only run when this command
|
||||||
|
// is called directly, e.g.:
|
||||||
|
scheduleCmd.Flags().VarP(&team, "team", "t", "team to get updates for (atl, az, bal, bos, chc, cin, cle, col, cws, det, hou, kc, laa, lad, mia, mil, min, nym, nyy, oak, phi, pit, sd, sea, sf, stl, tb, tex, tor, wsh)")
|
||||||
|
scheduleCmd.MarkFlagRequired("team")
|
||||||
|
}
|
Loading…
Reference in New Issue