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.
142 lines
5.6 KiB
142 lines
5.6 KiB
//
|
|
// LoadBalanceViewController.swift
|
|
// GMERemittance
|
|
//
|
|
// Created by Fm-user on 3/14/18.
|
|
// Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
class LoadBalanceViewController: PopUpSavingViewController {
|
|
|
|
private final let secondInfoMessage = "You can transfer money to your GME Wallet from any nearest ATM or your Internet Banking."
|
|
|
|
@IBOutlet weak var firstInfoInRedBG: UILabel!
|
|
|
|
@IBOutlet weak var secondInfoInWhiteBG: UILabel!
|
|
|
|
@IBOutlet weak var userNameLabelOutlet: UILabel!
|
|
|
|
@IBOutlet weak var profileImageOutlet: UIImageView!
|
|
|
|
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
let walletNumber = UserDefaults.standard.string(forKey: "com.gmeremit.walletNumber")
|
|
let bankName = UserDefaults.standard.string(forKey: "com.gmeremit.bankName")
|
|
let fullName = UserDefaults.standard.string(forKey: "com.gmeremit.fullName")!
|
|
|
|
if let dpUrl = UserDefaults.standard.string(forKey: "com.gmeremit.dpUrl"){
|
|
if dpUrl != ""{
|
|
userNameLabelOutlet.isHidden = true
|
|
profileImageOutlet.isHidden = false
|
|
profileImageOutlet.contentMode = .scaleAspectFit
|
|
downloadImage(url: Foundation.URL(string: dpUrl)!)
|
|
}else{
|
|
userNameLabelOutlet.isHidden = false
|
|
profileImageOutlet.isHidden = true
|
|
userNameLabelOutlet.layer.backgroundColor = UIColor(hex: 0x2e3192).cgColor
|
|
userNameLabelOutlet.layer.cornerRadius = userNameLabelOutlet.frame.height / 2
|
|
userNameLabelOutlet.textAlignment = NSTextAlignment.center
|
|
userNameLabelOutlet.textColor = UIColor.white
|
|
userNameLabelOutlet.font = UIFont(name: "SanFranciscoText-Bold", size: 24)
|
|
if let fullName = UserDefaults.standard.string(forKey: "com.gmeremit.fullName"){
|
|
self.userNameLabelOutlet.text = fullName.prefix(1).uppercased()
|
|
}
|
|
}
|
|
}
|
|
|
|
firstInfoMessage(sender: "\(String(describing: walletNumber!)) (\(String(describing: bankName!)))",userName: fullName)
|
|
secondInfoInWhiteBG.text = self.secondInfoMessage
|
|
}
|
|
|
|
@IBAction func gotItAction(_ sender: Any) {
|
|
self.dismissDialog()
|
|
self.removeFromParentViewController()
|
|
|
|
}
|
|
|
|
override func didReceiveMemoryWarning() {
|
|
super.didReceiveMemoryWarning()
|
|
}
|
|
|
|
func dismissDialog()
|
|
{
|
|
self.navigationController?.navigationBar.isHidden = false
|
|
self.tabBarController?.tabBar.isHidden = false
|
|
UIView.animate(withDuration: 0.0, animations: {
|
|
self.view.transform = CGAffineTransform(scaleX: 1.3, y: 1.3)
|
|
self.view.alpha = 0.0;
|
|
}, completion:{(finished : Bool) in
|
|
if (finished)
|
|
{
|
|
self.view.removeFromSuperview()
|
|
}
|
|
});
|
|
}
|
|
|
|
func firstInfoMessage(sender:String,userName:String){
|
|
let message: String = String("Hello, \(userName) your GME Wallet Number is ")
|
|
|
|
let mutableMessage1 = NSMutableAttributedString(string: message)
|
|
|
|
let attrs = [NSAttributedStringKey.font : UIFont.boldSystemFont(ofSize: 15)]
|
|
let messageInBold = NSMutableAttributedString(string:sender, attributes:attrs)
|
|
|
|
let mutableMessage = NSMutableAttributedString()
|
|
mutableMessage.append(mutableMessage1)
|
|
mutableMessage.append(messageInBold)
|
|
|
|
firstInfoInRedBG.attributedText = mutableMessage
|
|
}
|
|
|
|
/**
|
|
Image view property
|
|
*/
|
|
func setImage(image: UIImage){
|
|
profileImageOutlet.layer.borderWidth = 1.0
|
|
profileImageOutlet.layer.masksToBounds = false
|
|
profileImageOutlet.layer.cornerRadius = profileImageOutlet.frame.size.width / 2
|
|
profileImageOutlet.clipsToBounds = true
|
|
self.profileImageOutlet.image = image
|
|
}
|
|
|
|
func getDataFromUrl(url: URL, completion: @escaping (Data?, URLResponse?, Error?) -> ()) {
|
|
URLSession.shared.dataTask(with: url) { data, response, error in
|
|
completion(data, response, error)
|
|
}.resume()
|
|
}
|
|
|
|
/**
|
|
Download image of user through url
|
|
*/
|
|
func downloadImage(url: URL) {
|
|
getDataFromUrl(url: url) { data, response, error in
|
|
guard let data = data, error == nil else { return }
|
|
|
|
DispatchQueue.main.async() {
|
|
let roundedImage = UIImage(data: data)
|
|
self.profileImageOutlet.image = roundedImage?.circleMasked
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
extension UIImage {
|
|
var isPortrait: Bool { return size.height > size.width }
|
|
var isLandscape: Bool { return size.width > size.height }
|
|
var breadth: CGFloat { return min(size.width, size.height) }
|
|
var breadthSize: CGSize { return CGSize(width: breadth, height: breadth) }
|
|
var breadthRect: CGRect { return CGRect(origin: .zero, size: breadthSize) }
|
|
var circleMasked: UIImage? {
|
|
UIGraphicsBeginImageContextWithOptions(breadthSize, false, scale)
|
|
defer { UIGraphicsEndImageContext() }
|
|
guard let cgImage = cgImage?.cropping(to: CGRect(origin: CGPoint(x: isLandscape ? floor((size.width - size.height) / 2) : 0, y: isPortrait ? floor((size.height - size.width) / 2) : 0), size: breadthSize)) else { return nil }
|
|
UIBezierPath(ovalIn: breadthRect).addClip()
|
|
UIImage(cgImage: cgImage, scale: 1, orientation: imageOrientation).draw(in: breadthRect)
|
|
return UIGraphicsGetImageFromCurrentImageContext()
|
|
}
|
|
}
|
|
|
|
|