Skip to content
Merged
Show file tree
Hide file tree
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
36 changes: 18 additions & 18 deletions iOS-Email-Client.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3231,7 +3231,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -3241,7 +3241,7 @@
INFOPLIST_FILE = "iOS-Email-Client/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
OTHER_LDFLAGS = (
"-ObjC",
"$(inherited)",
Expand Down Expand Up @@ -3271,7 +3271,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -3281,7 +3281,7 @@
INFOPLIST_FILE = "iOS-Email-Client/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
OTHER_LDFLAGS = (
"-ObjC",
"$(inherited)",
Expand Down Expand Up @@ -3416,7 +3416,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
Expand All @@ -3427,7 +3427,7 @@
INFOPLIST_FILE = "iOS-Email-Client/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
OTHER_LDFLAGS = (
"-ObjC",
"$(inherited)",
Expand Down Expand Up @@ -3479,7 +3479,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -3488,7 +3488,7 @@
INFOPLIST_FILE = ShareExtension/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.criptext.mail.ShareExtension;
Expand All @@ -3510,7 +3510,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -3519,7 +3519,7 @@
INFOPLIST_FILE = ShareExtension/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.criptext.mail.ShareExtension;
PRODUCT_NAME = ShareExtension;
Expand All @@ -3540,7 +3540,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
Expand All @@ -3550,7 +3550,7 @@
INFOPLIST_FILE = ShareExtension/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.criptext.mail.support.ShareExtension;
PRODUCT_NAME = ShareExtension;
Expand All @@ -3573,7 +3573,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -3582,7 +3582,7 @@
INFOPLIST_FILE = NotificationExtension/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.criptext.mail.NotificationExtension;
Expand All @@ -3607,7 +3607,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -3616,7 +3616,7 @@
INFOPLIST_FILE = NotificationExtension/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.criptext.mail.NotificationExtension;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand All @@ -3640,7 +3640,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 3;
CURRENT_PROJECT_VERSION = 2;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 65NU4336S4;
FRAMEWORK_SEARCH_PATHS = (
Expand All @@ -3650,7 +3650,7 @@
INFOPLIST_FILE = NotificationExtension/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 11.2;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks";
MARKETING_VERSION = 1.2.2;
MARKETING_VERSION = 1.2.3;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.criptext.mail.support.NotificationExtension;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand Down
2 changes: 2 additions & 0 deletions iOS-Email-Client/AsyncTasks/RestoreDBAsyncTask.swift
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ class RestoreDBAsyncTask {
return
}

DBManager.update(account: account, defaultAddressId: metadata.defaultAddressId ?? 0)

line = streamReader.nextLine()
while line != nil {
guard let row = Utils.convertToDictionary(text: line!) else {
Expand Down
2 changes: 1 addition & 1 deletion iOS-Email-Client/Constants.swift
Original file line number Diff line number Diff line change
Expand Up @@ -286,5 +286,5 @@ struct Constants {
return customerType == 0
}

static let adminUrl = "https://admin.criptext.com/?#/account/billing"
static let adminUrl = "\(Env.adminURL)/?#/account/billing"
}
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,7 @@ extension EmailDetailViewController: EmailTableViewCellDelegate {
}

func tableViewCellDidTapLink(url: String) {
if (myAccount.customerType != Account.CustomerType.enterprise.id && url == "https://admin.criptext.com/?#/account/billing") {
if (myAccount.customerType != Account.CustomerType.enterprise.id && url == Constants.adminUrl) {
joinPlus()
return
}
Expand Down
16 changes: 6 additions & 10 deletions iOS-Email-Client/Controllers/InboxViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -740,17 +740,13 @@ extension InboxViewController{
}

@IBAction func didPressComposer(_ sender: UIButton) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)

let navComposeVC = storyboard.instantiateViewController(withIdentifier: "NavigationComposeViewController") as! UINavigationController
let snackVC = SnackbarController(rootViewController: navComposeVC)
let composerVC = navComposeVC.viewControllers.first as! ComposeViewController
composerVC.delegate = self
snackVC.modalPresentationStyle = .fullScreen

APIManager.postUserEvent(event: Int(Event.UserEvent.openComposer.rawValue), token: myAccount.jwt, completion: {_ in })

self.present(snackVC, animated: true, completion: nil)
let composerData = ComposerData()
if myAccount.defaultAddressId != 0,
let existingAlias = DBManager.getAlias(rowId: myAccount.defaultAddressId, account: myAccount) {
composerData.initAlias = existingAlias
}
openComposer(composerData: composerData, files: List<File>())
}

func swapMailbox(labelId: Int, sender: Any?, force: Bool = false){
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,16 +104,19 @@ class CreatingAccountViewController: UIViewController{
}

func parseAddresses(addresses: [[String: Any]], account: Account) {
let aliasesPairArray = addresses.map({aliasesDomainFromDictionary(data: $0, account: account)})
let (aliasesPairArray) = addresses.map({aliasesDomainFromDictionary(data: $0, account: account)})
for pair in aliasesPairArray {
if pair.0.name != Env.plainDomain {
DBManager.store(pair.0)
}
DBManager.store(aliases: pair.1)
if let defaultAddressId = pair.2 {
DBManager.update(account: account, defaultAddressId: defaultAddressId)
}
}
}

func aliasesDomainFromDictionary(data: [String: Any], account: Account) -> (CustomDomain, [Alias]) {
func aliasesDomainFromDictionary(data: [String: Any], account: Account) -> (CustomDomain, [Alias], Int?) {
let aliases = data["aliases"] as! [[String: Any]]
let domainData = data["domain"] as! [String: Any]
let domainName = domainData["name"] as! String
Expand All @@ -124,9 +127,17 @@ class CreatingAccountViewController: UIViewController{
domain.validated = domainVerified == 1 ? true : false
domain.account = account

let aliasesArray: [Alias] = aliases.map({Alias.aliasFromDictionary(aliasData: $0, domainName: domainName, account: account)})
var defaultAddressId: Int? = nil
let aliasesArray: [Alias] = aliases.map { aliasObj in
let alias = Alias.aliasFromDictionary(aliasData: aliasObj, domainName: domainName, account: account)
if let isDefault = aliasObj["default"] as? Int,
isDefault == 1 {
defaultAddressId = alias.rowId
}
return alias
}

return (domain, aliasesArray)
return (domain, aliasesArray, defaultAddressId)
}

func sendKeysRequest(){
Expand Down
21 changes: 18 additions & 3 deletions iOS-Email-Client/Controllers/MembershipWebViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,21 @@ protocol MembershipWebViewControllerDelegate: class {
}

class MembershipWebViewController: UIViewController {

enum Kind {
case plus
case addresses

func getUrl(jwt: String) -> URL {
switch(self) {
case .plus:
return URL(string: "\(Env.adminURL)/?#/account/billing?lang=\(Env.language)&token=\(jwt)")!
case .addresses:
return URL(string: "\(Env.adminURL)/?#/addresses?lang=\(Env.language)&token=\(jwt)")!
}
}
}

@IBOutlet weak var webview: WKWebView!
@IBOutlet weak var loaderView: UIActivityIndicatorView!
@IBOutlet weak var failureWrapperView: UIView!
Expand All @@ -22,8 +37,8 @@ class MembershipWebViewController: UIViewController {

var delegate: MembershipWebViewControllerDelegate? = nil
var initialTitle = String.localize("JOIN_PLUS")
var sectionDescription = String.localize("SOMETHING_WRONG")
var accountJWT: String = ""
var kind: Kind = .plus

override func viewDidLoad() {
super.viewDidLoad()
Expand All @@ -42,7 +57,7 @@ class MembershipWebViewController: UIViewController {

webview.navigationDelegate = self

let url = URL(string: "https://admin.criptext.com/?#/account/billing?lang=\(Env.language)&token=\(accountJWT)")!
let url = kind.getUrl(jwt: self.accountJWT)
webview.load(URLRequest(url: url))

webview.allowsBackForwardNavigationGestures = true
Expand All @@ -68,7 +83,7 @@ class MembershipWebViewController: UIViewController {
func showFailureView() {
loaderView.isHidden = true
loaderView.stopAnimating()
failureTitleView.text = sectionDescription
failureTitleView.text = String.localize("SOMETHING_WRONG")
failureDescView.text = String.localize("CONNECTION_LOST")
failureWrapperView.isHidden = false
webview.isHidden = true
Expand Down
Loading