From 5400ea8d9725024063d423561ef5def044c10825 Mon Sep 17 00:00:00 2001 From: talksik Date: Mon, 20 Dec 2021 16:43:31 -0800 Subject: [PATCH] adding texting ability --- nirvana-ios/Services/AuthSessionStore.swift | 6 ++++++ nirvana-ios/Views/Contacts/FindFriendsView.swift | 14 +++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/nirvana-ios/Services/AuthSessionStore.swift b/nirvana-ios/Services/AuthSessionStore.swift index 0cf764d..33cda4a 100644 --- a/nirvana-ios/Services/AuthSessionStore.swift +++ b/nirvana-ios/Services/AuthSessionStore.swift @@ -143,6 +143,12 @@ final class AuthSessionStore: ObservableObject, SessionStore { } } } + + // TODO: listener for getting user's sent and received messages + + // TODO: listener for getting user's circle members + + } else { // if we don't have a user, set our session to nil self.user = nil diff --git a/nirvana-ios/Views/Contacts/FindFriendsView.swift b/nirvana-ios/Views/Contacts/FindFriendsView.swift index b091afe..4022e3a 100644 --- a/nirvana-ios/Views/Contacts/FindFriendsView.swift +++ b/nirvana-ios/Views/Contacts/FindFriendsView.swift @@ -20,7 +20,7 @@ struct FindFriendsView: View { var body: some View { NavigationView { - // list with search bar + // TODO: add search bar + have secondary sort List { ForEach(contactsVM.contacts.sorted { $0.isExisting && !$1.isExisting }) { contact in ListContactRow(contact: contact) @@ -47,6 +47,8 @@ struct FindFriendsView_Previews: PreviewProvider { } } + + struct ListContactRow: View { var contact: ContactsViewModelContact @@ -56,6 +58,7 @@ struct ListContactRow: View { var body: some View { if contact.isExisting { // add to circle + // TODO: check if this contact is already in user's circle HStack(alignment: .center, spacing: 0) { Image(contact.user?.avatar ?? Avatars.avatarSystemNames[1]) .resizable() @@ -99,6 +102,15 @@ struct ListContactRow: View { Button { print("inviting user now") // text message to him/her + + if contact.cnPhoneNumber != nil { + let sms: String = "sms://\(contact.cnPhoneNumber)&body=Join me on Nirvana! I sent you a message there! https://usenirvana.com" + let strUrl: String = sms.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)! + + UIApplication.shared.open(URL(string: strUrl)!, options: [:], completionHandler: nil) + } else { + print("phone number is nil of contact") + } } label: { Label("Invite", systemImage: "paperplane") .font(.title2)