diff --git a/app/src/main/java/com/example/hpostesting/firebase/FirebaseManage.kt b/app/src/main/java/com/example/hpostesting/firebase/FirebaseManage.kt index df06a1c..c4b2cb2 100644 --- a/app/src/main/java/com/example/hpostesting/firebase/FirebaseManage.kt +++ b/app/src/main/java/com/example/hpostesting/firebase/FirebaseManage.kt @@ -14,6 +14,7 @@ package com.example.hpostesting.firebase import android.content.Context import android.content.Intent import android.os.Process +import androidx.core.content.edit import com.google.firebase.FirebaseApp import com.google.firebase.FirebaseOptions import com.google.firebase.firestore.FirebaseFirestore @@ -27,8 +28,8 @@ import javax.inject.Inject class FirebaseManager @Inject constructor(private val context: Context) { - private val sharedPreferences = - context.getSharedPreferences("FirebaseConfigPrefs", Context.MODE_PRIVATE) + private val sharedPreferencesServerConfig = context.getSharedPreferences("FirebaseConfigPrefs", Context.MODE_PRIVATE) + private val sharedPreferencesDev = context.getSharedPreferences("DevMode",Context.MODE_PRIVATE) private var currentFirestore: FirebaseFirestore = FirebaseFirestore.getInstance() private var currentStorage: FirebaseStorage = FirebaseStorage.getInstance() @@ -36,7 +37,7 @@ class FirebaseManager @Inject constructor(private val context: Context) { private val defaultServers = listOf( // i have it in different place look down - firebaseConfig1, firebaseConfig2, firebaseConfig3, + firebaseConfigProd, firebaseConfigDev , firebaseConfigQaQc, firebaseConfigPreProd ) init { @@ -44,6 +45,18 @@ class FirebaseManager @Inject constructor(private val context: Context) { switchServer(lastSelectedServer) } + + fun setDevModeOn(state : Boolean){ + sharedPreferencesDev.edit { + putBoolean( "isDevModeOn",state ) + } + } + + fun getDevMode(): Boolean { + return sharedPreferencesDev.getBoolean("isDevModeOn",false) + } + + fun getCurrentFirestore(): FirebaseFirestore = currentFirestore fun getCurrentStorage(): FirebaseStorage = currentStorage @@ -73,7 +86,7 @@ class FirebaseManager @Inject constructor(private val context: Context) { } private fun saveSelectedServer(firebaseConfig: FirebaseConfig) { - with(sharedPreferences.edit()) { + with(sharedPreferencesServerConfig.edit()) { putString("selectedServerName", firebaseConfig.serverName) putString("projectId", firebaseConfig.projectId) putString("appId", firebaseConfig.appId) @@ -93,12 +106,12 @@ class FirebaseManager @Inject constructor(private val context: Context) { fun getLastSelectedServer(): FirebaseConfig { val selectedServerName = - sharedPreferences.getString("selectedServerName", defaultServers.first().serverName) - val projectId = sharedPreferences.getString("projectId", defaultServers.first().projectId) - val appId = sharedPreferences.getString("appId", defaultServers.first().appId) - val apiKey = sharedPreferences.getString("apiKey", defaultServers.first().apiKey) + sharedPreferencesServerConfig.getString("selectedServerName", defaultServers.first().serverName) + val projectId = sharedPreferencesServerConfig.getString("projectId", defaultServers.first().projectId) + val appId = sharedPreferencesServerConfig.getString("appId", defaultServers.first().appId) + val apiKey = sharedPreferencesServerConfig.getString("apiKey", defaultServers.first().apiKey) val storageBucket = - sharedPreferences.getString("storageBucket", defaultServers.first().storageBucket) + sharedPreferencesServerConfig.getString("storageBucket", defaultServers.first().storageBucket) return FirebaseConfig( serverName = selectedServerName ?: defaultServers.first().serverName, @@ -128,7 +141,7 @@ fun delayedRestart(context: Context) { } } -private val firebaseConfig1 = FirebaseConfig( +private val firebaseConfigDev = FirebaseConfig( serverName = "dev", apiKey = "AIzaSyAVdNGCev_AFX0qmuZJF6kxzRzXUTeAW5I", appId = "1:650071678820:android:a53292637abb7c0d6c6471", @@ -136,7 +149,7 @@ private val firebaseConfig1 = FirebaseConfig( storageBucket = "hpos-af3cc.appspot.com" ) -private val firebaseConfig2 = FirebaseConfig( +private val firebaseConfigQaQc = FirebaseConfig( serverName = "qc-qa", apiKey = "AIzaSyC4d4GhWHr_NMJAeBvnztQ_yQ3Qe9MAnLs", appId = "1:1004619739289:android:3dbcefb10ea99654e5c808", @@ -144,10 +157,18 @@ private val firebaseConfig2 = FirebaseConfig( storageBucket = "hpos-qa.appspot.com" ) -private val firebaseConfig3 = FirebaseConfig( +private val firebaseConfigProd = FirebaseConfig( serverName = "prod", + apiKey = "AIzaSyA_O0oZGzy3Kiw9fiLQ3OFPME-xQJP88vs", + appId = "1:1012719870714:android:d8d7c962d96f4097de5f43", + projectId = "hpos-prod", + storageBucket = "hpos-prod.appspot.com" +) + +private val firebaseConfigPreProd = FirebaseConfig( + serverName = " pre prod", apiKey = "AIzaSyDYySi27LioZGNisP1NfnNU5inJX_0FT38", - appId = "1:121176529204:android:a7bc0842f61e5095bbed61", + appId = "1:121176529204:android:e6841fdac57bdc95bbed61", projectId = "hpos-preprod", storageBucket = "hpos-preprod.appspot.com" )