ChandanAppdesk

dsdsf

Mar 1st, 2024
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.67 KB | None | 0 0
  1. //
  2. // SupportVC.swift
  3. // hubble-ios
  4. //
  5. // Created by Appdesk Services PVT. LTD. on 18/12/23.
  6. // Copyright (c) 2023 Hubble. All rights reserved.
  7. //
  8.  
  9. import UIKit
  10. import MessageUI
  11.  
  12. class SupportVC: HubbleBaseVC {
  13.  
  14. lazy var backButton: UIButton = {
  15. let button = UIButton()
  16. button.accessibilityElement(id: AccessIdentifier.backButton, label: AccessLabel.backButton)
  17. button.backgroundColor = .colorWhiteAlpha1
  18. button.tintColor = .white
  19. button.corner(cornerRadius: 10)
  20. button.setImage(.backButton, for: .normal)
  21. button.addTarget(self, action: #selector(backTapped), for: .touchUpInside)
  22. return button
  23. }()
  24.  
  25. lazy var titleLabel: UILabel = {
  26. let label = UILabel()
  27. label.text = "supportvc_title_label".myLocalizedString
  28. label.accessibilityElement(id: AccessIdentifier.supportTitleLabel, label: AccessLabel.supportTitleLabel)
  29. label.textColor = .white
  30. label.font = .fontBold20
  31. return label
  32. }()
  33.  
  34. lazy var imageView: UIImageView = {
  35. let image = UIImageView()
  36. image.accessibilityElement(id: AccessIdentifier.logoIcon, label: AccessLabel.logoImage)
  37. image.image = .thankyouPageImage
  38. image.contentMode = .scaleAspectFit
  39. return image
  40. }()
  41.  
  42. lazy var messageLabel: UILabel = {
  43. let label = UILabel()
  44. label.text = "supportvc_message_label".myLocalizedString
  45. label.textColor = .white
  46. label.numberOfLines = .zero
  47. label.textAlignment = .center
  48. label.accessibilityElement(id: AccessIdentifier.supportMessageLabel, label: AccessLabel.supportMessageLabel)
  49. label.font = .italicSystemFont(ofSize: 18)
  50. return label
  51. }()
  52.  
  53. lazy var sendMailButon: UIButton = {
  54. let button = UIButton()
  55. button.corner(cornerRadius: 8)
  56. button.setTitle("supportvc_send_mail_button".myLocalizedString, for: .normal)
  57. button.accessibilityElement(id: AccessIdentifier.supportSendMailButton, label: AccessLabel.supportSendMailButton)
  58. button.setTitleColor(.primaryDarkColor, for: .normal)
  59. button.titleLabel?.font = .fontBold18
  60. button.hubbleAction(forControlEvents: .touchUpInside) {
  61. self.sendEmail()
  62. }
  63. button.backgroundColor = .white
  64. return button
  65. }()
  66.  
  67. @objc func backTapped() {
  68. navigationController?.popViewController(animated: true)
  69. }
  70.  
  71. override func viewDidLoad() {
  72. super.viewDidLoad()
  73. setupUI()
  74. }
  75.  
  76. func setupUI() {
  77. view.addSubview(backButton)
  78. backButton.snp.makeConstraints { make in
  79. make.top.equalTo(self.view.safeAreaLayoutGuide).offset(20)
  80. make.left.equalTo(view).offset(24)
  81. make.width.height.equalTo(32)
  82. }
  83. view.addSubview(titleLabel)
  84. titleLabel.snp.makeConstraints { make in
  85. make.top.equalTo(self.view.safeAreaLayoutGuide).offset(20)
  86. make.centerX.equalTo(view)
  87. }
  88. view.addSubview(imageView)
  89. imageView.snp.makeConstraints { make in
  90. make.centerX.equalTo(view)
  91. make.top.equalTo(titleLabel.bottom).offset(44)
  92. make.height.width.equalTo(300)
  93. }
  94. view.addSubview(messageLabel)
  95. messageLabel.snp.makeConstraints { make in
  96. make.left.equalTo(view.left).offset(leftOffset)
  97. make.right.equalTo(view.right).inset(rightInset)
  98. make.top.equalTo(imageView.bottom).offset(topOffset)
  99. }
  100. view.addSubview(sendMailButon)
  101. sendMailButon.snp.makeConstraints { make in
  102. make.left.equalTo(view.left).offset(leftOffset)
  103. make.right.equalTo(view.right).inset(rightInset)
  104. make.top.equalTo(messageLabel.bottom).offset(24)
  105. make.height.equalTo(44)
  106. }
  107. }
  108. }
  109.  
  110. // MARK: - MFMailComposeViewControllerDelegate
  111. extension SupportVC: MFMailComposeViewControllerDelegate {
  112. func sendEmail() {
  113. // if MFMailComposeViewController.canSendMail() {
  114. // let mailComposer = MFMailComposeViewController()
  115. // mailComposer.mailComposeDelegate = self
  116. // mailComposer.setToRecipients([K.supportEmail])
  117. // mailComposer.setSubject("Your Subject")
  118. // mailComposer.setMessageBody("Your message body", isHTML: false)
  119. // present(mailComposer, animated: true, completion: nil)
  120. // } else {
  121. // // Handle the case where the device cannot send email (e.g., no email accounts set up).
  122. // self.showAlert(message: "supportvc_email_compose_error_message".myLocalizedString)
  123. // }
  124. }
  125. }
  126.  
Advertisement
Add Comment
Please, Sign In to add comment