Example #1
0
func GetSmall(db *sql.DB, pk int, nrUsers, offset int, nr int, last int) [][]models.GuessWithPoints {

	rows, err := db.Query(qGetSmall, pk, nr, offset)
	if err != nil {
		log.Fatal(err)
	}
	var G models.GuessWithPoints
	guesses := make([][]models.GuessWithPoints, nrUsers)

	for j := 0; j < nrUsers; j++ {
		guesses[j] = make([]models.GuessWithPoints, nr)

		for i := 0; i < nr; i++ {
			if rows.Next() {
				err := rows.Scan(&G.Result1, &G.Result2, &G.Points, &G.Total, &G.Happened)
				if err == nil {
					G.Last = last == i
					guesses[j][i] = G
				} else {
					log.Println(err)
				}
			}
		}
	}
	rows.Close()
	return guesses
}
Example #2
0
func GetGuesses(db *sql.DB, pk int, subsize int, size int, last int) [][]models.GuessWithPoints {
	//                              ^^ games     ^^ users
	// Returns a slice of models.
	// It will consist of groups of all games for each user.
	rows, err := db.Query(qGetTable, pk)
	if err != nil {
		log.Fatal(err)
	}
	var G models.GuessWithPoints
	guesses := make([][]models.GuessWithPoints, size)

	for j := 0; j < size; j++ {
		guesses[j] = make([]models.GuessWithPoints, subsize)

		for i := 0; i < subsize; i++ {
			if rows.Next() {
				err := rows.Scan(&G.Result1, &G.Result2, &G.Points, &G.Total, &G.Happened)
				if err == nil {
					G.Last = last == i
					guesses[j][i] = G
				} else {
					log.Println(err)
				}
			}
		}
	}
	rows.Close()
	return guesses
}