This commit is contained in:
mac
2026-02-24 10:03:35 -05:00
parent e9c586adcd
commit 1bb637ae62
19 changed files with 2112 additions and 1876 deletions

View File

@@ -0,0 +1,51 @@
package com.example.scanwich
import android.util.Log
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.firestore.FirebaseFirestore
import com.google.firebase.firestore.SetOptions
object FirebaseUtils {
private fun getDb(): FirebaseFirestore {
return try {
// Tente d'utiliser la base de données nommée "scan-wich"
FirebaseFirestore.getInstance("scan-wich")
} catch (e: Exception) {
// Repli sur la base par défaut si "scan-wich" n'est pas configurée comme base secondaire
FirebaseFirestore.getInstance()
}
}
fun syncMealToFirestore(meal: Meal) {
val user = FirebaseAuth.getInstance().currentUser
if (user != null) {
getDb().collection("users").document(user.uid).collection("meals")
.document(meal.date.toString())
.set(meal, SetOptions.merge())
.addOnSuccessListener { Log.d("Firestore", "Meal synced") }
.addOnFailureListener { e -> Log.e("Firestore", "Error meal: ${e.message}") }
}
}
fun syncGlycemiaToFirestore(glycemia: Glycemia) {
val user = FirebaseAuth.getInstance().currentUser
if (user != null) {
getDb().collection("users").document(user.uid).collection("glycemia")
.document(glycemia.date.toString())
.set(glycemia, SetOptions.merge())
.addOnSuccessListener { Log.d("Firestore", "Glycemia synced") }
.addOnFailureListener { e -> Log.e("Firestore", "Error glycemia: ${e.message}") }
}
}
fun syncSportToFirestore(sport: SportActivity) {
val user = FirebaseAuth.getInstance().currentUser
if (user != null) {
getDb().collection("users").document(user.uid).collection("sports")
.document(sport.id.toString())
.set(sport, SetOptions.merge())
.addOnSuccessListener { Log.d("Firestore", "Sport synced") }
.addOnFailureListener { e -> Log.e("Firestore", "Error sport: ${e.message}") }
}
}
}