You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

52 lines
2.0 KiB

//
// 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<Bool?> = Box(nil)
var homeConnectionTimeOut: Box<Bool?> = 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
}
}
}
}
}