Browse Source

translation managaed in setting

pull/1/head
gme_2 6 years ago
parent
commit
c9cc08f88b
  1. 4
      GME Remit.xcodeproj/project.pbxproj
  2. 2
      GMERemittance/AppDelegate.swift
  3. 1
      GMERemittance/Library/WebLinks/WkWebView/WkWebViewController.swift
  4. 2
      GMERemittance/Module/Auto refund/AutoRefundsViewController.swift
  5. 1
      GMERemittance/Module/Home/User Interface/View/Cell/HomeCollectionCollectionViewCell.swift
  6. 24
      GMERemittance/Module/Home/User Interface/View/Cell/HomeCollectionTableViewCell.swift
  7. 3
      GMERemittance/Module/Home/User Interface/View/Cell/HomeRemainingLimitTableViewCell.swift
  8. 7
      GMERemittance/Module/Home/User Interface/View/HomeViewController.swift
  9. 4
      GMERemittance/Module/Login/Application Logic/Interactor/LoginInteractor.swift
  10. 1
      GMERemittance/Module/Login/User Interface/View/LoginViewController.swift
  11. 56
      GMERemittance/Module/SplashScreen/User Interface/View/SplashScreenViewController.swift
  12. 3
      GMERemittance/Profile/ProfileViewController.swift
  13. 9
      GMERemittance/Recipient/RecipientListViewController.swift
  14. 166
      GMERemittance/SideMenu/Setting.storyboard
  15. 68
      GMERemittance/SideMenu/SettingViewController.swift
  16. 4
      GMERemittance/SideMenu/SideMenuViewController.swift
  17. 2
      GMERemittance/Social/StatusUploadViewController.swift
  18. 62
      GMERemittance/Utility/AppConstants.swift
  19. 159
      GMERemittance/_Home/_Home.storyboard
  20. 1
      en.lproj/Localizable.strings

4
GME Remit.xcodeproj/project.pbxproj

@ -1975,6 +1975,7 @@
D96848C9212D3AEB00EF12B1 /* ExtensionJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96848C8212D3AEB00EF12B1 /* ExtensionJSON.swift */; };
D96848CC212D3F2300EF12B1 /* ExchangeRateApiService.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96848CB212D3F2300EF12B1 /* ExchangeRateApiService.swift */; };
D96848CE212D419400EF12B1 /* ApiServiceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96848CD212D419400EF12B1 /* ApiServiceType.swift */; };
D9692A1B221396AF00795EBC /* Setting.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D9692A1A221396AF00795EBC /* Setting.storyboard */; };
D96A4FBC2146079600CFD507 /* AppConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96A4FBB2146079600CFD507 /* AppConstants.swift */; };
D96A4FD421460B4A00CFD507 /* SplashScreenModuleInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96A4FC121460B4900CFD507 /* SplashScreenModuleInterface.swift */; };
D96A4FD521460B4A00CFD507 /* SplashScreenService.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96A4FC421460B4900CFD507 /* SplashScreenService.swift */; };
@ -4116,6 +4117,7 @@
D96848C8212D3AEB00EF12B1 /* ExtensionJSON.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExtensionJSON.swift; sourceTree = "<group>"; };
D96848CB212D3F2300EF12B1 /* ExchangeRateApiService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExchangeRateApiService.swift; sourceTree = "<group>"; };
D96848CD212D419400EF12B1 /* ApiServiceType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiServiceType.swift; sourceTree = "<group>"; };
D9692A1A221396AF00795EBC /* Setting.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = Setting.storyboard; sourceTree = "<group>"; };
D96A4FBB2146079600CFD507 /* AppConstants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppConstants.swift; sourceTree = "<group>"; };
D96A4FC121460B4900CFD507 /* SplashScreenModuleInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SplashScreenModuleInterface.swift; sourceTree = "<group>"; };
D96A4FC421460B4900CFD507 /* SplashScreenService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SplashScreenService.swift; sourceTree = "<group>"; };
@ -4311,6 +4313,7 @@
04498A712039416E00AC4D99 /* SettingViewController.swift */,
04546C4020329A36007EFE15 /* AboutGMEViewController.swift */,
D9DC105F216314BC008F3C51 /* SideMenu.storyboard */,
D9692A1A221396AF00795EBC /* Setting.storyboard */,
);
path = SideMenu;
sourceTree = "<group>";
@ -11715,6 +11718,7 @@
D93C2C5F22000D660079BF03 /* top_line_over.png in Resources */,
D93C2BF322000D660079BF03 /* transkey_input_cap_20.png in Resources */,
D93C284A22000D640079BF03 /* iPad_transkey_alnum_eng_8.png in Resources */,
D9692A1B221396AF00795EBC /* Setting.storyboard in Resources */,
D93C2C0C22000D660079BF03 /* pt-icon65.png in Resources */,
D93C297522000D650079BF03 /* iPhone_transkey_landscape_alnum_cmd_8_japanese_down.png in Resources */,
D93C284C22000D640079BF03 /* iPad_transkey_alnum_cap_14.png in Resources */,

2
GMERemittance/AppDelegate.swift

@ -85,7 +85,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterD
private func setEntryPoint() {
let _default = UserDefaults.standard
if let loginStatus = _default.string(forKey: UserKeys.accessCode) {
if let _ = _default.string(forKey: UserKeys.accessCode) {
// user is logged in
let mainWireFrame = MainWireframe.shared

1
GMERemittance/Library/WebLinks/WkWebView/WkWebViewController.swift

@ -51,7 +51,6 @@ class WkWebViewController: UIViewController {
self.activityIndicator?.hidesWhenStopped = true
self.webView.bringSubview(toFront: activityIndicator!)
let headers = self.headers ?? []

2
GMERemittance/Module/Auto refund/AutoRefundsViewController.swift

@ -71,7 +71,7 @@ class AutoRefundsViewController: UIViewController {
private func fetchInfo() {
self.showProgressHud()
let username = Utility.getMyUserName() ?? ""
let username = Utility.getMyUserName()
self.fetchAutoRefundInfo(username: username, success: { (autorefund) in
self.autorefund = autorefund

1
GMERemittance/Module/Home/User Interface/View/Cell/HomeCollectionCollectionViewCell.swift

@ -18,6 +18,7 @@ class HomeCollectionCollectionViewCell: UICollectionViewCell {
func setup() {
self.imageview.image = model?.icon
print(model?.title)
self.titleLabel.text = model?.title
self.dragButton.isHidden = true
// self.layer.addShadow(with: <#T##UIColor#>)

24
GMERemittance/Module/Home/User Interface/View/Cell/HomeCollectionTableViewCell.swift

@ -7,6 +7,7 @@
//
import UIKit
import Localize_Swift
struct MenuNotificationName {
static let sendMoney = "SendMoeny"
@ -43,21 +44,26 @@ class HomeCollectionTableViewCell: UITableViewCell, UICollectionViewDelegateFlow
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
self.collectionView.delegate = self
self.collectionView.dataSource = self
}
func setup() {
collectionView.addObserver(self, forKeyPath: "contentSize", options: NSKeyValueObservingOptions.old, context: nil)
self.configureMenu()
self.collectionView.delegate = self
self.collectionView.dataSource = self
NotificationCenter.default.addObserver(self, selector: #selector(configureLanguage), name: NSNotification.Name(LCLLanguageChangeNotification), object: nil)
self.menus = self.configureMenu()
}
@objc func configureLanguage() {
self.collectionView.reloadData()
}
private func configureMenu() {
private func configureMenu() -> [HomeCollectionModel] {
let sendMoneyMenu = HomeCollectionModel()
sendMoneyMenu.index = 0
sendMoneyMenu.title = "send_money_text".localized()
let text = "send_money_text".localized()
sendMoneyMenu.title = text
sendMoneyMenu.icon = #imageLiteral(resourceName: "send-money")
let mobileRechargeMenu = HomeCollectionModel()
@ -85,7 +91,8 @@ class HomeCollectionTableViewCell: UITableViewCell, UICollectionViewDelegateFlow
walletToWalletMenu.title = "Wallet to Wallet Transfer"
walletToWalletMenu.icon = #imageLiteral(resourceName: "wallet-transfer")
self.menus = [sendMoneyMenu, toadaysRateMenu, transactionStatementMenu, trackTransferMenu]
let menus = [sendMoneyMenu, toadaysRateMenu, transactionStatementMenu, trackTransferMenu]
return menus
}
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
@ -135,7 +142,8 @@ extension HomeCollectionTableViewCell: UICollectionViewDataSource {
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = self.collectionView.dequeueReusableCell(withReuseIdentifier: "HomeCollectionCollectionViewCell", for: indexPath) as! HomeCollectionCollectionViewCell
cell.model = self.menus?.elementAt(index: indexPath.row)
let menus = self.configureMenu()
cell.model = menus.elementAt(index: indexPath.row)
cell.setup()
return cell
}

3
GMERemittance/Module/Home/User Interface/View/Cell/HomeRemainingLimitTableViewCell.swift

@ -36,7 +36,8 @@ class HomeRemainingLimitTableViewCell: UITableViewCell {
}
private func configureText() {
self.remainingYearlyLabel.text = StringConstant().yearlyLimit
let text = "remaining_limit_text".localized()
self.remainingYearlyLabel.text = text
}
@objc private func getYearlyLimitNotificationName() -> Notification.Name {

7
GMERemittance/Module/Home/User Interface/View/HomeViewController.swift

@ -9,7 +9,7 @@
import UIKit
import Crashlytics
import RAMAnimatedTabBarController
import Localize_Swift
class HomeViewController: UIViewController, UICollectionViewDelegateFlowLayout {
@ -90,6 +90,7 @@ class HomeViewController: UIViewController, UICollectionViewDelegateFlowLayout {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
configureViews()
self.setActionBarIcons(showNotificationParameter: false) // set true if there is unread
self.tableView.reloadData()
}
@ -130,7 +131,7 @@ class HomeViewController: UIViewController, UICollectionViewDelegateFlowLayout {
NotificationCenter.default.addObserver(self, selector: #selector(self.showPennyTestFirstTime), name: NSNotification.Name.init("showPennyTestFirstTime"), object: nil)
}
private func configureLanguage() {
@objc private func configureLanguage() {
// self.barButtonItem.title = StringConstants().homeText
}
@ -201,7 +202,7 @@ class HomeViewController: UIViewController, UICollectionViewDelegateFlowLayout {
}
@objc private func showSideMenuSetting() {
let vc = UIStoryboard.init(name: "_Home", bundle: nil).instantiateViewController(withIdentifier: "SettingViewController") as! SettingViewController
let vc = UIStoryboard.init(name: "Setting", bundle: nil).instantiateViewController(withIdentifier: "SettingViewController") as! SettingViewController
self.navigationController?.pushViewController(vc, animated: true)
}

4
GMERemittance/Module/Login/Application Logic/Interactor/LoginInteractor.swift

@ -55,7 +55,7 @@ extension LoginInteractor: LoginInteractorInput {
func login(userName: String, password: String, encryptedPassword: String) {
let username = userName
let validationResult = self.isValid(userName: username, password: password)
let validationResult = self.isValid(userName: username, password: encryptedPassword)
if !validationResult.isValid {
self.output?.show(error: validationResult.error)
return
@ -68,7 +68,7 @@ extension LoginInteractor: LoginInteractorInput {
print(passwordBase64Data)
// send encrypted password to server for kftc
self.service._login(userId: username, password: password, success: { (user) in
self.service._login(userId: username, password: encryptedPassword, success: { (user) in
let accessCode = user?.accessCode ?? ""
let accessCodeBase64 = accessCode

1
GMERemittance/Module/Login/User Interface/View/LoginViewController.swift

@ -285,6 +285,7 @@ extension LoginViewController: TransKeyViewDelegate {
qwertyCipherString = mQwertyTransKeyView?.mTK_GetSecureData()
targetView = mQwertyTransKeyView
self.encryptedPassword = qwertyCipherString
self.passwordTextField.text = "password"
}
isShowQwerty = false

56
GMERemittance/Module/SplashScreen/User Interface/View/SplashScreenViewController.swift

@ -156,61 +156,9 @@ class SplashScreenViewController: UIViewController {
self.buttonSignUp.setTitle("new_user_text".localized(), for: .normal)
}
private func setupLanguages() {
func setupLanguages() {
let model = SendMoneyCountryViewModel()
model.name = "english_language_text".localized()
model.id = "english_language_text"
model.code = "en"
let model2 = SendMoneyCountryViewModel()
model2.name = "korean_language_text".localized()
model2.id = "korean_language_text"
model2.code = "kr"
let model3 = SendMoneyCountryViewModel()
model3.name = "cambodia_lanugage_text".localized()
model3.id = "cambodia_lanugage_text"
model3.code = "kh"
let model4 = SendMoneyCountryViewModel()
model4.name = "srilanka_lanugage_text".localized()
model4.id = "srilanka_lanugage_text"
model4.code = "lk"
let model5 = SendMoneyCountryViewModel()
model5.name = "myanmar_language_text".localized()
model5.id = "myanmar_language_text"
model5.code = "lk"
let model6 = SendMoneyCountryViewModel()
model6.name = "russian_langugae_text".localized()
model6.id = "russian_langugae_text"
model6.code = "ru"
let model7 = SendMoneyCountryViewModel()
model7.name = "vietnam_language_text".localized()
model7.id = "vietnam_language_text"
model7.code = "vn"
let model8 = SendMoneyCountryViewModel()
model8.name = "thailand_language_text".localized()
model8.id = "thailand_language_text"
model8.code = "th"
let model9 = SendMoneyCountryViewModel()
model9.name = "indonesia_language_text".localized()
model9.id = "indonesia_language_text"
model9.code = "id"
let model10 = SendMoneyCountryViewModel()
model10.name = "mongolia_language_text".localized()
model10.id = "mongolia_language_text"
model10.code = "mn"
self.languages = [model, model2, model3, model4, model5, model6, model7, model8, model9, model10]
self.languages = Utility.getLanguages()
}
private func configureTimer() {

3
GMERemittance/Profile/ProfileViewController.swift

@ -33,7 +33,7 @@ class ProfileViewController: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillDisappear(animated)
// self.setupPicturedNavBar()
self.configureLanguage()
self.setupNormalNavigation()
self.navigationItem.title = StringConstants().profileText
self.withdrawButton.isHidden = !Utility.pennyTestVerified()
@ -47,7 +47,6 @@ class ProfileViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.configureLanguage()
}
func configureLanguage() {

9
GMERemittance/Recipient/RecipientListViewController.swift

@ -12,7 +12,7 @@ import RAMAnimatedTabBarController
class RecipientListViewController: UIViewController {
struct StringConstant {
static let swipeText = "Swipe left to “Edit” or “Delete” recipient profile."
static let swipeText = ""
static let sendMoneyText = "Send Money"
static let newRecipeintText = "New Recipient"
static let navBarTitle = "Select Recipient"
@ -46,7 +46,7 @@ class RecipientListViewController: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.setupNormalNavigation()
self.navigationItem.title = StringConstant.navBarTitle
self.navigationItem.title = "recipient_listing_title_text".localized()
fetchReceipients()
}
@ -61,9 +61,9 @@ class RecipientListViewController: UIViewController {
}
func configureLanguage() {
self.labelSwipeInfo.text = StringConstant.swipeText
self.labelSwipeInfo.text = "edit_delete_hint_ios_text".localized()
// self.barButton.title = StringConstant.sendMoneyText
self.newRecipeintLabel.text = StringConstant.newRecipeintText
self.newRecipeintLabel.text = "new_recipient".localized()
}
@ -121,7 +121,6 @@ extension RecipientListViewController: UITableViewDelegate,UITableViewDataSource
}
func selectedAcunt(acunt: Account) {
print(acunt.bankName)
guard let index = self.selectedIndex else {return}
if let navigation = self.navigationController {
if let reciepient = self.reciepients?.elementAt(index: index) {

166
GMERemittance/SideMenu/Setting.storyboard

@ -0,0 +1,166 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14460.31" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14460.20"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<customFonts key="customFonts">
<array key="SanFranciscoDisplay-Regular.otf">
<string>SanFranciscoDisplay-Regular</string>
</array>
<array key="SanFranciscoText-Regular.otf">
<string>SanFranciscoText-Regular</string>
</array>
</customFonts>
<scenes>
<!--Setting View Controller-->
<scene sceneID="hpg-nV-Lhc">
<objects>
<viewController storyboardIdentifier="SettingViewController" id="XWE-Lo-Wrc" customClass="SettingViewController" customModule="GME_Remit" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="F6j-0i-tVa">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="u7J-jx-kQ1">
<rect key="frame" x="0.0" y="20" width="375" height="647"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="b6D-W4-RD7">
<rect key="frame" x="0.0" y="0.0" width="375" height="142"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="settingsSettingLarge" translatesAutoresizingMaskIntoConstraints="NO" id="4uW-3a-TQ0">
<rect key="frame" x="124.5" y="9" width="126" height="124"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Settings" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="35H-ED-fve">
<rect key="frame" x="162.5" y="155" width="50.5" height="17"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="14"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" red="0.92493563889999997" green="0.1104006246" blue="0.14042073490000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstItem="35H-ED-fve" firstAttribute="centerX" secondItem="b6D-W4-RD7" secondAttribute="centerX" id="K6z-x8-dGX"/>
<constraint firstItem="4uW-3a-TQ0" firstAttribute="top" secondItem="b6D-W4-RD7" secondAttribute="top" constant="9" id="SJv-GG-kPD"/>
<constraint firstItem="4uW-3a-TQ0" firstAttribute="centerX" secondItem="b6D-W4-RD7" secondAttribute="centerX" id="SKe-Oh-scB"/>
<constraint firstItem="35H-ED-fve" firstAttribute="top" secondItem="4uW-3a-TQ0" secondAttribute="bottom" constant="22" id="tLL-re-7k1"/>
<constraint firstAttribute="height" constant="142" id="tT6-dK-aBp"/>
</constraints>
</view>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillEqually" spacing="20" translatesAutoresizingMaskIntoConstraints="NO" id="VRn-oR-jIF">
<rect key="frame" x="1" y="167" width="373" height="99"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="hqV-kt-QY7">
<rect key="frame" x="0.0" y="0.0" width="373" height="39.5"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" alignment="top" translatesAutoresizingMaskIntoConstraints="NO" id="Su6-ND-tFM">
<rect key="frame" x="0.0" y="0.0" width="373" height="29"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" " textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FsD-qv-MMP">
<rect key="frame" x="0.0" y="0.0" width="20" height="20.5"/>
<constraints>
<constraint firstAttribute="width" constant="20" id="piF-A9-W7V"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="tkA-jU-df7">
<rect key="frame" x="20" y="0.0" width="353" height="29"/>
<fontDescription key="fontDescription" name="SanFranciscoText-Regular" family="San Francisco Text" pointSize="14"/>
<state key="normal" title="Change Password">
<color key="titleColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="1" colorSpace="calibratedRGB"/>
</state>
<connections>
<action selector="redirectToChangePassword:" destination="XWE-Lo-Wrc" eventType="touchUpInside" id="Uqv-Fu-bB6"/>
</connections>
</button>
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Doo-RF-fov">
<rect key="frame" x="0.0" y="39" width="373" height="0.5"/>
<color key="backgroundColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="0.5" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" constant="0.5" id="kiJ-k0-jet"/>
</constraints>
</view>
</subviews>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="b5L-pr-yY3">
<rect key="frame" x="0.0" y="59.5" width="373" height="39.5"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" alignment="top" translatesAutoresizingMaskIntoConstraints="NO" id="oBU-To-OfL">
<rect key="frame" x="0.0" y="0.0" width="373" height="29"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" " textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="r9T-Ub-UOD">
<rect key="frame" x="0.0" y="0.0" width="20" height="20.5"/>
<constraints>
<constraint firstAttribute="width" constant="20" id="zBl-xY-lgE"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="vMi-nP-wTQ">
<rect key="frame" x="20" y="0.0" width="353" height="29"/>
<fontDescription key="fontDescription" name="SanFranciscoText-Regular" family="San Francisco Text" pointSize="14"/>
<state key="normal" title="Language">
<color key="titleColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="1" colorSpace="calibratedRGB"/>
</state>
<connections>
<action selector="settings:" destination="XWE-Lo-Wrc" eventType="touchUpInside" id="eEE-Nf-fYH"/>
</connections>
</button>
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="0PJ-ni-jt4">
<rect key="frame" x="0.0" y="39" width="373" height="0.5"/>
<color key="backgroundColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="0.5" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" constant="0.5" id="cfE-vM-NgJ"/>
</constraints>
</view>
</subviews>
</stackView>
</subviews>
</stackView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="VRn-oR-jIF" firstAttribute="leading" secondItem="u7J-jx-kQ1" secondAttribute="leading" constant="1" id="5VH-oh-hGn"/>
<constraint firstItem="b6D-W4-RD7" firstAttribute="top" secondItem="u7J-jx-kQ1" secondAttribute="top" id="AFM-Xo-xGf"/>
<constraint firstAttribute="trailing" secondItem="VRn-oR-jIF" secondAttribute="trailing" constant="1" id="YAT-BZ-yh8"/>
<constraint firstItem="b6D-W4-RD7" firstAttribute="leading" secondItem="u7J-jx-kQ1" secondAttribute="leading" id="eA1-O1-ek3"/>
<constraint firstItem="VRn-oR-jIF" firstAttribute="top" secondItem="b6D-W4-RD7" secondAttribute="bottom" constant="25" id="gw8-Xr-jzQ"/>
<constraint firstAttribute="trailing" secondItem="b6D-W4-RD7" secondAttribute="trailing" id="r82-az-f66"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="u7J-jx-kQ1" firstAttribute="trailing" secondItem="T9u-S6-CHy" secondAttribute="trailing" id="Jfd-w7-Nd4"/>
<constraint firstItem="T9u-S6-CHy" firstAttribute="bottom" secondItem="u7J-jx-kQ1" secondAttribute="bottom" id="kqa-fR-PXd"/>
<constraint firstItem="u7J-jx-kQ1" firstAttribute="leading" secondItem="T9u-S6-CHy" secondAttribute="leading" id="scJ-Zg-eiv"/>
<constraint firstItem="u7J-jx-kQ1" firstAttribute="top" secondItem="T9u-S6-CHy" secondAttribute="top" id="zxu-uE-nHf"/>
</constraints>
<viewLayoutGuide key="safeArea" id="T9u-S6-CHy"/>
</view>
<connections>
<outlet property="changePasswordButton" destination="tkA-jU-df7" id="K4s-bM-5nG"/>
<outlet property="settingButton" destination="vMi-nP-wTQ" id="xvL-uc-Ybc"/>
<outlet property="settingLabel" destination="35H-ED-fve" id="EBM-Xa-rxs"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="xZ2-uO-zcC" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="6884.5" y="3169.5"/>
</scene>
</scenes>
<resources>
<image name="settingsSettingLarge" width="126" height="124"/>
</resources>
</document>

68
GMERemittance/SideMenu/SettingViewController.swift

@ -7,22 +7,62 @@
//
import UIKit
import Localize_Swift
class SettingViewController: UIViewController {
struct StringConstants {
let changePasswordText = "change_password_text".localized()
let settingText = "setting_text".localized()
var changePasswordText = "change_password_text".localized()
var settingText = "setting_text".localized()
var languageText = "language_text".localized()
}
var languages: [SendMoneyCountryViewModel] = []
var selectedLanguage: SendMoneyCountryViewModel? {
didSet {
let code = selectedLanguage?.code ?? "en"
if code == "lk" {
Localize.setCurrentLanguage("si")
}
if code == "kh" {
Localize.setCurrentLanguage("km")
}
else {
Localize.setCurrentLanguage(code)
}
UserDefaults.standard.set(code, forKey: AppConstants.firstTimeLanguageIsSet)
}
}
@IBOutlet weak var settingLabel: UILabel!
@IBOutlet weak var changePasswordButton: UIButton!
@IBOutlet weak var settingButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
self.changePasswordButton.setTitle(StringConstants().changePasswordText, for: UIControlState.normal)
// self.settingLabel.text = Straing
NotificationCenter.default.addObserver(self, selector: #selector(setText), name: NSNotification.Name(LCLLanguageChangeNotification), object: nil)
setupLanguages()
configureLanguage()
}
@objc func setText() {
self.changePasswordButton.setTitle("change_password_text".localized(), for: .normal)
self.settingButton.setTitle("language_text".localized(), for: .normal)
}
private func configureLanguage() {
self.changePasswordButton.setTitle("change_password_text".localized(), for: .normal)
self.settingButton.setTitle("language_text".localized(), for: .normal)
}
func setupLanguages() {
self.languages = Utility.getLanguages()
}
override func viewWillAppear(_ animated: Bool) {
@ -42,4 +82,24 @@ class SettingViewController: UIViewController {
self.navigationController!.pushViewController(changePasswordViewController, animated: true)
}
}
@IBAction func settings(_ sender: Any) {
self.showCountryPickerview()
}
@objc private func showCountryPickerview() {
setupLanguages()
let viewcontroller = UIStoryboard.init(name: "CountryPicker", bundle: nil).instantiateViewController(withIdentifier: "CountryPickerViewController") as! CountryPickerViewController
let data: [SendMoneyCountryViewModel] = self.languages
viewcontroller.isLanguageSelection = true
viewcontroller.data = data
viewcontroller.doneAction = self.countrySelected
viewcontroller.type = PickerTitle.country
self.present(viewcontroller, animated: true, completion: nil)
}
func countrySelected(models: [SendMoneyCountryViewModel]) {
self.selectedLanguage = models.first
}
}

4
GMERemittance/SideMenu/SideMenuViewController.swift

@ -9,6 +9,7 @@
import UIKit
import SDWebImage
import LGSideMenuController
import Localize_Swift
struct SideMenuNavigationNotifications {
static let aboutGme = "aboutGme"
@ -72,6 +73,7 @@ class SideMenuViewController: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.setUpSettingsScreen()
NotificationCenter.default.addObserver(self, selector: #selector(configureText), name: NSNotification.Name(LCLLanguageChangeNotification), object: nil)
}
@ -98,7 +100,7 @@ class SideMenuViewController: UIViewController {
self.addShadow(view: withdrawButton)
}
private func configureText() {
@objc private func configureText() {
autoDebitAccountButton.setTitle(StringConstants().autoDebitMenuText, for: UIControlState.normal)
aboutGmeButton.setTitle(StringConstants().aboutGmeMenuText, for: UIControlState.normal)
settingButton.setTitle(StringConstants().settingMenuText, for: UIControlState.normal)

2
GMERemittance/Social/StatusUploadViewController.swift

@ -458,7 +458,7 @@ extension StatusUploadViewController: UINavigationControllerDelegate, UIImagePic
socialfeedviewmodel?.uploadImage(image: gifData, isGif: true)
} catch let e {
print(e.localizedDescription)
}
} else {

62
GMERemittance/Utility/AppConstants.swift

@ -269,3 +269,65 @@ class Utility {
return "172017F9EC11222E8107142733"
}
}
extension Utility {
static func getLanguages() -> [SendMoneyCountryViewModel] {
let model = SendMoneyCountryViewModel()
model.name = "english_language_text".localized()
model.id = "english_language_text"
model.code = "en"
let model2 = SendMoneyCountryViewModel()
model2.name = "korean_language_text".localized()
model2.id = "korean_language_text"
model2.code = "kr"
let model3 = SendMoneyCountryViewModel()
model3.name = "cambodia_lanugage_text".localized()
model3.id = "cambodia_lanugage_text"
model3.code = "kh"
let model4 = SendMoneyCountryViewModel()
model4.name = "srilanka_lanugage_text".localized()
model4.id = "srilanka_lanugage_text"
model4.code = "lk"
let model5 = SendMoneyCountryViewModel()
model5.name = "myanmar_language_text".localized()
model5.id = "myanmar_language_text"
model5.code = "lk"
let model6 = SendMoneyCountryViewModel()
model6.name = "russian_langugae_text".localized()
model6.id = "russian_langugae_text"
model6.code = "ru"
let model7 = SendMoneyCountryViewModel()
model7.name = "vietnam_language_text".localized()
model7.id = "vietnam_language_text"
model7.code = "vn"
let model8 = SendMoneyCountryViewModel()
model8.name = "thailand_language_text".localized()
model8.id = "thailand_language_text"
model8.code = "th"
let model9 = SendMoneyCountryViewModel()
model9.name = "indonesia_language_text".localized()
model9.id = "indonesia_language_text"
model9.code = "id"
let model10 = SendMoneyCountryViewModel()
model10.name = "mongolia_language_text".localized()
model10.id = "mongolia_language_text"
model10.code = "mn"
let languages = [model, model2, model3, model4, model5, model6, model7, model8, model9, model10]
return languages
}
}

159
GMERemittance/_Home/_Home.storyboard

@ -1578,33 +1578,33 @@
<rect key="frame" x="105.5" y="148.5" width="164" height="69"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="yzM-dm-RaX">
<rect key="frame" x="34" y="245.5" width="307" height="129"/>
<rect key="frame" x="34" y="245.5" width="307" height="140"/>
<string key="text">We are licensed by Ministry of Strategy &amp; Finance to operate as the first Non-Bank Remittance Service providers in South Korea. Meeting all compliance regulations set forward by the regulators was a tough journey but today we feel proud about what we have achieved and how robust our operations are as a result of the hard work completed earlier. We are now ready with a 100% compliant and secured system that guarantees your money will arrive safely in right hands every single time.</string>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" red="0.29019607843137252" green="0.29019607843137252" blue="0.29019607843137252" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="U5C-wr-wOP" userLabel="Border">
<rect key="frame" x="0.0" y="395" width="375" height="0.5"/>
<rect key="frame" x="0.0" y="406" width="375" height="0.5"/>
<color key="backgroundColor" red="0.78431372549019607" green="0.7803921568627451" blue="0.80000000000000004" alpha="1" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" constant="0.5" id="fjE-Zn-57C"/>
</constraints>
</view>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="App Version" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hwz-3v-OeA">
<rect key="frame" x="34" y="408.5" width="84" height="14"/>
<rect key="frame" x="34" y="419.5" width="84" height="14"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Semibold" family="San Francisco Display" pointSize="12"/>
<color key="textColor" red="0.92549019607843142" green="0.10980392156862745" blue="0.14117647058823529" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="1.0.1" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QUF-Ty-ZUz">
<rect key="frame" x="34" y="429.5" width="84" height="14"/>
<rect key="frame" x="34" y="440.5" width="84" height="14"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" red="0.29019607843137252" green="0.29019607843137252" blue="0.29019607843137252" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iGc-ym-o0t" userLabel="Border">
<rect key="frame" x="0.0" y="467" width="375" height="0.5"/>
<rect key="frame" x="0.0" y="478" width="375" height="0.5"/>
<color key="backgroundColor" red="0.7843137255" green="0.78039215689999997" blue="0.80000000000000004" alpha="1" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" relation="greaterThanOrEqual" constant="0.5" id="Hsd-YX-SlO"/>
@ -1612,13 +1612,13 @@
</constraints>
</view>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Follow us on" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gLa-zv-E4X">
<rect key="frame" x="34" y="478.5" width="84" height="14"/>
<rect key="frame" x="34" y="489.5" width="84" height="14"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Semibold" family="San Francisco Display" pointSize="12"/>
<color key="textColor" red="0.92549019607843142" green="0.10980392156862745" blue="0.14117647058823529" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mGa-9R-111">
<rect key="frame" x="240" y="426.5" width="117" height="25"/>
<rect key="frame" x="240" y="437.5" width="117" height="25"/>
<color key="backgroundColor" red="0.90588235294117647" green="0.92941176470588238" blue="0.94901960784313721" alpha="1" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" constant="25" id="OXu-a3-lux"/>
@ -1638,14 +1638,14 @@
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="6s2-2Y-UWG">
<rect key="frame" x="34" y="503.5" width="25" height="25"/>
<rect key="frame" x="34" y="514.5" width="25" height="25"/>
<state key="normal" image="settingsFacebook"/>
<connections>
<action selector="openFacebook:" destination="klE-Na-LMr" eventType="touchUpInside" id="9VB-y9-tAE"/>
</connections>
</button>
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="D1w-nM-BV3">
<rect key="frame" x="65.5" y="503.5" width="25" height="25"/>
<rect key="frame" x="65.5" y="514.5" width="25" height="25"/>
<state key="normal" image="settingsLinkedin"/>
<connections>
<action selector="openLinkedIn:" destination="klE-Na-LMr" eventType="touchUpInside" id="ZLa-M4-Ed4"/>
@ -3729,146 +3729,6 @@
</objects>
<point key="canvasLocation" x="1650" y="3019"/>
</scene>
<!--Setting View Controller-->
<scene sceneID="dm0-GF-MAJ">
<objects>
<viewController storyboardIdentifier="SettingViewController" id="pvk-dF-fOo" customClass="SettingViewController" customModule="GME_Remit" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="alj-Zd-9D8">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="TEn-rV-PlZ">
<rect key="frame" x="0.0" y="20" width="375" height="647"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HBS-KK-gCe">
<rect key="frame" x="0.0" y="0.0" width="375" height="142"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="settingsSettingLarge" translatesAutoresizingMaskIntoConstraints="NO" id="zvH-lb-qxi">
<rect key="frame" x="124.5" y="9" width="126" height="124"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Settings" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Xmn-Uf-QSg">
<rect key="frame" x="162.5" y="155" width="50.5" height="17"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="14"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" red="0.92493563890457153" green="0.11040062457323074" blue="0.14042073488235474" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstItem="Xmn-Uf-QSg" firstAttribute="centerX" secondItem="HBS-KK-gCe" secondAttribute="centerX" id="BGY-e3-VZi"/>
<constraint firstAttribute="height" constant="142" id="D2K-rb-dhb"/>
<constraint firstItem="zvH-lb-qxi" firstAttribute="centerX" secondItem="HBS-KK-gCe" secondAttribute="centerX" id="eue-Yi-Rav"/>
<constraint firstItem="Xmn-Uf-QSg" firstAttribute="top" secondItem="zvH-lb-qxi" secondAttribute="bottom" constant="22" id="k5k-zt-ZBd"/>
<constraint firstItem="zvH-lb-qxi" firstAttribute="top" secondItem="HBS-KK-gCe" secondAttribute="top" constant="9" id="u2e-Ao-kl0"/>
</constraints>
</view>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillEqually" spacing="20" translatesAutoresizingMaskIntoConstraints="NO" id="v9z-Gz-rtc">
<rect key="frame" x="1" y="167" width="373" height="39.5"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="yC6-Qq-ZRH">
<rect key="frame" x="0.0" y="0.0" width="373" height="39.5"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" alignment="top" translatesAutoresizingMaskIntoConstraints="NO" id="9Ev-RM-PKV">
<rect key="frame" x="0.0" y="0.0" width="373" height="29"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" " textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2Jx-nh-zu3">
<rect key="frame" x="0.0" y="0.0" width="20" height="20.5"/>
<constraints>
<constraint firstAttribute="width" constant="20" id="rvv-2t-A9n"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="D9R-oT-pQo">
<rect key="frame" x="20" y="0.0" width="353" height="29"/>
<fontDescription key="fontDescription" name="SanFranciscoText-Regular" family="San Francisco Text" pointSize="14"/>
<state key="normal" title="Change Password">
<color key="titleColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="1" colorSpace="calibratedRGB"/>
</state>
<connections>
<action selector="redirectToChangePassword:" destination="pvk-dF-fOo" eventType="touchUpInside" id="uvF-te-Z2O"/>
</connections>
</button>
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9Vm-e7-lGl">
<rect key="frame" x="0.0" y="39" width="373" height="0.5"/>
<color key="backgroundColor" red="0.29019607843137252" green="0.29019607843137252" blue="0.29019607843137252" alpha="0.5" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" constant="0.5" id="Ob5-ga-jdr"/>
</constraints>
</view>
</subviews>
</stackView>
<stackView hidden="YES" opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="bq6-V1-dcE">
<rect key="frame" x="0.0" y="0.0" width="373" height="10.5"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" alignment="top" translatesAutoresizingMaskIntoConstraints="NO" id="IS9-ew-JG8">
<rect key="frame" x="0.0" y="0.0" width="373" height="0.0"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" " textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gjB-qz-nhe">
<rect key="frame" x="0.0" y="0.0" width="20" height="0.0"/>
<constraints>
<constraint firstAttribute="width" constant="20" id="R6C-Dk-lh9"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="gOz-cl-82v">
<rect key="frame" x="20" y="0.0" width="353" height="0.0"/>
<fontDescription key="fontDescription" name="SanFranciscoText-Regular" family="San Francisco Text" pointSize="14"/>
<state key="normal" title="Language">
<color key="titleColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="1" colorSpace="calibratedRGB"/>
</state>
<connections>
<action selector="redirectToChangePassword:" destination="pvk-dF-fOo" eventType="touchUpInside" id="Zrv-fK-mKZ"/>
</connections>
</button>
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="O14-qI-POM">
<rect key="frame" x="0.0" y="10" width="373" height="0.5"/>
<color key="backgroundColor" red="0.2901960784" green="0.2901960784" blue="0.2901960784" alpha="0.5" colorSpace="calibratedRGB"/>
<constraints>
<constraint firstAttribute="height" constant="0.5" id="s7j-oY-BLn"/>
</constraints>
</view>
</subviews>
</stackView>
</subviews>
</stackView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="v9z-Gz-rtc" firstAttribute="leading" secondItem="TEn-rV-PlZ" secondAttribute="leading" constant="1" id="Fet-GW-lVP"/>
<constraint firstItem="HBS-KK-gCe" firstAttribute="top" secondItem="TEn-rV-PlZ" secondAttribute="top" id="Nsz-IC-51m"/>
<constraint firstItem="HBS-KK-gCe" firstAttribute="leading" secondItem="TEn-rV-PlZ" secondAttribute="leading" id="QPD-FW-3M8"/>
<constraint firstAttribute="trailing" secondItem="v9z-Gz-rtc" secondAttribute="trailing" constant="1" id="Srj-ha-hMG"/>
<constraint firstItem="v9z-Gz-rtc" firstAttribute="top" secondItem="HBS-KK-gCe" secondAttribute="bottom" constant="25" id="bWi-f2-OVU"/>
<constraint firstAttribute="trailing" secondItem="HBS-KK-gCe" secondAttribute="trailing" id="zPH-RU-Xhx"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="TEn-rV-PlZ" firstAttribute="top" secondItem="a0o-o3-EPS" secondAttribute="top" id="XCC-Wd-HzY"/>
<constraint firstItem="TEn-rV-PlZ" firstAttribute="trailing" secondItem="a0o-o3-EPS" secondAttribute="trailing" id="dNX-Uk-C3U"/>
<constraint firstItem="TEn-rV-PlZ" firstAttribute="leading" secondItem="a0o-o3-EPS" secondAttribute="leading" id="knr-QO-4sW"/>
<constraint firstItem="a0o-o3-EPS" firstAttribute="bottom" secondItem="TEn-rV-PlZ" secondAttribute="bottom" id="r0s-9e-JyT"/>
</constraints>
<viewLayoutGuide key="safeArea" id="a0o-o3-EPS"/>
</view>
<connections>
<outlet property="changePasswordButton" destination="D9R-oT-pQo" id="ugb-Vn-Ybl"/>
<outlet property="settingLabel" destination="Xmn-Uf-QSg" id="IhO-tH-naw"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="xnr-KI-4mS" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="6884.5" y="3169.5"/>
</scene>
<!--Reward-->
<scene sceneID="cdf-IM-mcN">
<objects>
@ -4055,7 +3915,6 @@
<image name="settingsFacebook" width="25" height="25"/>
<image name="settingsLinkedin" width="25" height="25"/>
<image name="settingsLogo" width="164" height="69"/>
<image name="settingsSettingLarge" width="126" height="124"/>
<image name="show-more" width="62" height="62"/>
<image name="splash_logo" width="166" height="47"/>
</resources>

1
en.lproj/Localizable.strings

@ -344,3 +344,4 @@
"thailand_language_text" = "Thailand";
"indonesia_language_text" = "Indonesia";
"mongolia_language_text" = "Mongolia";
"language_text" = "Language";
Loading…
Cancel
Save