// // HomeViewModel.swift // GMERemittance // // Created by FMI-12 on 3/5/18. // Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved. // import Foundation class HomeViewModel: ModelExtension { let userId = UserDefaults.standard.object(forKey: "com.gmeremit.username") as? String var cmRegisteredId: Box = Box(nil) var homeConnectionTimeOut: Box = Box(nil) /** To set cm registration Id - parameter cmRegistrationId: id */ func cmRegistrationId(cmRegistrationId: String) { if !Reachability.isConnectedToNetwork() { self.internetConnection.value = false } else { RestApiMananger.sharedInstance.getcmRegistrationId(userId: userId!, cmRegistrationId: cmRegistrationId) { result in switch result { case .success(_): self.cmRegisteredId.value = true case let .failure(errorJSON): self.setErrorMessage(message: errorJSON["message"].stringValue) self.cmRegisteredId.value = false case .updateAccessCode: RestApiMananger.sharedInstance.updateAccessCode(userId: self.userId!, password: self.getLoginPassword()) { result in if result != "Error"{ let uuid = RestApiMananger.sharedInstance.getUUID() UserDefaults.standard.set((result + ":" + uuid).toBase64(), forKey: "com.gmeremit.accessCode") self.cmRegistrationId(cmRegistrationId: cmRegistrationId) } } case .logOutUser: RestApiMananger.sharedInstance.cancelExistingNetworkCalls() self.anotherLogin.value = true case .timeOut: self.homeConnectionTimeOut.value = false } } } } }