test
This commit is contained in:
51
app/src/main/java/com/example/scanwich/FirebaseUtils.kt
Normal file
51
app/src/main/java/com/example/scanwich/FirebaseUtils.kt
Normal 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}") }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user