package sharedDistribution import ( "time" ) type SkirdaSessions []SkirdaSession func (sessions SkirdaSessions) FindSessionById(sessionId string) (SkirdaSession, error) { for _, session := range sessions { if session.GetSessionId() == sessionId { return session, nil } } return sessions[0], nil //TODO: Temp error return } func (sessions SkirdaSessions) GetInterfaceAssets() []JSSessionInterface { assets := []JSSessionInterface{} for _, session := range sessions { assets = append(assets, session.GetInterfaceAsset()) } return assets } type SkirdaSession struct { SkirdaSessionId string SkirdaGameId string Args []string NegativeArgs []string } type JSSessionInterface struct { GameID string `json:"gameId"` SessionId string `json:"sessionId"` Expires time.Time `json:"expires"` Title string `json:"title"` Icon string `json:"icon"` Description string `json:"description"` Backgrounds []string `json:"backgrounds"` } func (session SkirdaSession) GetSessionId() string { return session.SkirdaSessionId } func (session SkirdaSession) GetGameId() string { return session.SkirdaGameId } func (session SkirdaSession) GetInterfaceAsset() JSSessionInterface { // gameId := SkirdaGame.GetSkirdaGameId() return JSSessionInterface{ GameID: "", SessionId: "", Expires: time.Time{}, Title: "Test Session", Icon: "", Description: "", Backgrounds: []string{}, } }