Commit 5abd4337 authored by Simon Esposito's avatar Simon Esposito
Browse files

Fix js runtime leaderboard fields

Resolves #684
parent 083a9f8e
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -4808,7 +4808,7 @@ func leaderboardRecordsListToJs(r *goja.Runtime, records []*api.LeaderboardRecor
}

func leaderboardRecordToJsMap(r *goja.Runtime, record *api.LeaderboardRecord) map[string]interface{} {
	recordMap := make(map[string]interface{}, 11)
	recordMap := make(map[string]interface{}, 12)
	recordMap["leaderboardId"] = record.LeaderboardId
	recordMap["ownerId"] = record.OwnerId
	if record.Username != nil {
@@ -4819,15 +4819,16 @@ func leaderboardRecordToJsMap(r *goja.Runtime, record *api.LeaderboardRecord) ma
	recordMap["score"] = record.Score
	recordMap["subscore"] = record.Subscore
	recordMap["numScore"] = record.NumScore
	recordMap["maxNumScore"] = record.MaxNumScore
	metadataMap := make(map[string]interface{})
	err := json.Unmarshal([]byte(record.Metadata), &metadataMap)
	if err != nil {
		panic(r.NewGoError(fmt.Errorf("failed to convert metadata to json: %s", err.Error())))
	}
	pointerizeSlices(metadataMap)
	metadataMap["metadata"] = metadataMap
	metadataMap["createTime"] = record.CreateTime.Seconds
	metadataMap["updateTime"] = record.UpdateTime.Seconds
	recordMap["metadata"] = metadataMap
	recordMap["createTime"] = record.CreateTime.Seconds
	recordMap["updateTime"] = record.UpdateTime.Seconds
	if record.ExpiryTime != nil {
		recordMap["expiryTime"] = record.ExpiryTime.Seconds
	} else {
+2 −1
Original line number Diff line number Diff line
@@ -6349,7 +6349,7 @@ func leaderboardRecordsToLua(l *lua.LState, records []*api.LeaderboardRecord, ow
}

func recordToLuaTable(l *lua.LState, record *api.LeaderboardRecord) (*lua.LTable, error) {
	recordTable := l.CreateTable(0, 11)
	recordTable := l.CreateTable(0, 12)
	recordTable.RawSetString("leaderboard_id", lua.LString(record.LeaderboardId))
	recordTable.RawSetString("owner_id", lua.LString(record.OwnerId))
	if record.Username != nil {
@@ -6360,6 +6360,7 @@ func recordToLuaTable(l *lua.LState, record *api.LeaderboardRecord) (*lua.LTable
	recordTable.RawSetString("score", lua.LNumber(record.Score))
	recordTable.RawSetString("subscore", lua.LNumber(record.Subscore))
	recordTable.RawSetString("num_score", lua.LNumber(record.NumScore))
	recordTable.RawSetString("max_num_score", lua.LNumber(record.MaxNumScore))

	metadataMap := make(map[string]interface{})
	err := json.Unmarshal([]byte(record.Metadata), &metadataMap)