Skip to content

Commit

Permalink
Merge pull request #21 from TartejBrothers/changes
Browse files Browse the repository at this point in the history
Final Build
  • Loading branch information
TartejBrothers authored Jan 28, 2024
2 parents fbf24b6 + 968c436 commit c9537aa
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 2 deletions.
21 changes: 20 additions & 1 deletion Dose Deck/ContentView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,16 @@ struct ContentView: View {
@State private var password = ""
@Binding var userIsLogged: Bool
@StateObject private var datamanager = DataManager()

let userIdKey = "UserId"

init(userIsLogged: Binding<Bool>) {
_userIsLogged = userIsLogged
}

var body: some View {
if userIsLogged {
ListView(userIsLogged: $userIsLogged)
ListView(userIsLogged: $userIsLogged, userId: userIdKey)
.environmentObject(datamanager)
} else {
ZStack {
Expand Down Expand Up @@ -101,6 +103,7 @@ struct ContentView: View {
}
.onAppear {
requestNotificationPermission()
loadUserIdFromUserDefaults()

Auth.auth().addStateDidChangeListener { auth, user in
if user != nil {
Expand Down Expand Up @@ -130,6 +133,7 @@ struct ContentView: View {
datamanager.showAlert(title: "Error", message: "Invalid email or password.")
} else {
if let userId = Auth.auth().currentUser?.uid {
saveUserIdToUserDefaults(userId)
datamanager.setUserId(userId)
}
userIsLogged = true
Expand All @@ -144,12 +148,27 @@ struct ContentView: View {
datamanager.showAlert(title: "Error", message: "Unable to create an account. Please try again.")
} else {
if let userId = Auth.auth().currentUser?.uid {
saveUserIdToUserDefaults(userId)
datamanager.setUserId(userId)
}
userIsLogged = true
}
}
}

func saveUserIdToUserDefaults(_ userId: String) {
UserDefaults.standard.set(userId, forKey: userIdKey)
}

func getUserId() -> String? {
return UserDefaults.standard.string(forKey: userIdKey)
}

func loadUserIdFromUserDefaults() {
if let userId = getUserId() {
datamanager.setUserId(userId)
}
}
}

struct ContentView_Previews: PreviewProvider {
Expand Down
6 changes: 5 additions & 1 deletion Dose Deck/ListView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import UserNotifications
struct ListView: View {
@EnvironmentObject var datamanager: DataManager
@Binding var userIsLogged: Bool
let userId: String
@State private var showPopup = false
@State private var dataLoaded = false

Expand Down Expand Up @@ -129,8 +130,11 @@ struct ListView: View {

struct ListView_Previews: PreviewProvider {
static var previews: some View {
ListView(userIsLogged: .constant(true))
let userIdForPreview = "UserID"

return ListView(userIsLogged: .constant(true), userId: userIdForPreview)
.preferredColorScheme(.dark)
.environmentObject(DataManager())
}
}

0 comments on commit c9537aa

Please sign in to comment.