Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 17 additions & 5 deletions app/src/main/java/com/freshkeeper/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ import android.os.Bundle
import android.widget.Toast
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.runtime.LaunchedEffect
import androidx.core.view.WindowCompat
import androidx.fragment.app.FragmentActivity
import androidx.navigation.NavHostController
import androidx.navigation.compose.rememberNavController
import com.freshkeeper.model.Screen
import com.freshkeeper.service.AssetFileManager
import com.freshkeeper.service.DeepLinkHandler
import com.freshkeeper.service.NetworkManager
Expand All @@ -31,7 +33,6 @@ class MainActivity : FragmentActivity() {
private lateinit var sharedPreferences: SharedPreferences
private var navController: NavHostController? = null
private lateinit var updateManager: UpdateManager
private val currentUserId = Firebase.auth.currentUser?.uid

override fun onCreate(savedInstanceState: Bundle?) {
enableEdgeToEdge()
Expand All @@ -54,10 +55,14 @@ class MainActivity : FragmentActivity() {

val notificationManager = NotificationManager(this)
notificationManager.setupNotificationChannel()
notificationManager.scheduleReminderIfEnabled(
currentUserId,
FirebaseFirestore.getInstance(),
)

val currentUserId = Firebase.auth.currentUser?.uid
if (currentUserId != null) {
notificationManager.scheduleReminderIfEnabled(
currentUserId,
FirebaseFirestore.getInstance(),
)
}

val networkManager = NetworkManager(this)

Expand All @@ -80,6 +85,13 @@ class MainActivity : FragmentActivity() {
saveLanguageToPreferences(languageCode)
updateLocale(languageCode)
}

LaunchedEffect(Unit) {
if (currentUserId == null && navController?.currentDestination?.route != Screen.SignIn.route) {
navController?.navigate(Screen.SignIn.route)
}
}

if (!networkManager.isNetworkAvailable()) {
Toast.makeText(this, "Please connect to the internet", Toast.LENGTH_LONG).show()
}
Expand Down