Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // SupportVC.swift
- // hubble-ios
- //
- // Created by Appdesk Services PVT. LTD. on 18/12/23.
- // Copyright (c) 2023 Hubble. All rights reserved.
- //
- import UIKit
- import MessageUI
- class SupportVC: HubbleBaseVC {
- lazy var backButton: UIButton = {
- let button = UIButton()
- button.accessibilityElement(id: AccessIdentifier.backButton, label: AccessLabel.backButton)
- button.backgroundColor = .colorWhiteAlpha1
- button.tintColor = .white
- button.corner(cornerRadius: 10)
- button.setImage(.backButton, for: .normal)
- button.addTarget(self, action: #selector(backTapped), for: .touchUpInside)
- return button
- }()
- lazy var titleLabel: UILabel = {
- let label = UILabel()
- label.text = "supportvc_title_label".myLocalizedString
- label.accessibilityElement(id: AccessIdentifier.supportTitleLabel, label: AccessLabel.supportTitleLabel)
- label.textColor = .white
- label.font = .fontBold20
- return label
- }()
- lazy var imageView: UIImageView = {
- let image = UIImageView()
- image.accessibilityElement(id: AccessIdentifier.logoIcon, label: AccessLabel.logoImage)
- image.image = .thankyouPageImage
- image.contentMode = .scaleAspectFit
- return image
- }()
- lazy var messageLabel: UILabel = {
- let label = UILabel()
- label.text = "supportvc_message_label".myLocalizedString
- label.textColor = .white
- label.numberOfLines = .zero
- label.textAlignment = .center
- label.accessibilityElement(id: AccessIdentifier.supportMessageLabel, label: AccessLabel.supportMessageLabel)
- label.font = .italicSystemFont(ofSize: 18)
- return label
- }()
- lazy var sendMailButon: UIButton = {
- let button = UIButton()
- button.corner(cornerRadius: 8)
- button.setTitle("supportvc_send_mail_button".myLocalizedString, for: .normal)
- button.accessibilityElement(id: AccessIdentifier.supportSendMailButton, label: AccessLabel.supportSendMailButton)
- button.setTitleColor(.primaryDarkColor, for: .normal)
- button.titleLabel?.font = .fontBold18
- button.hubbleAction(forControlEvents: .touchUpInside) {
- self.sendEmail()
- }
- button.backgroundColor = .white
- return button
- }()
- @objc func backTapped() {
- navigationController?.popViewController(animated: true)
- }
- override func viewDidLoad() {
- super.viewDidLoad()
- setupUI()
- }
- func setupUI() {
- view.addSubview(backButton)
- backButton.snp.makeConstraints { make in
- make.top.equalTo(self.view.safeAreaLayoutGuide).offset(20)
- make.left.equalTo(view).offset(24)
- make.width.height.equalTo(32)
- }
- view.addSubview(titleLabel)
- titleLabel.snp.makeConstraints { make in
- make.top.equalTo(self.view.safeAreaLayoutGuide).offset(20)
- make.centerX.equalTo(view)
- }
- view.addSubview(imageView)
- imageView.snp.makeConstraints { make in
- make.centerX.equalTo(view)
- make.top.equalTo(titleLabel.bottom).offset(44)
- make.height.width.equalTo(300)
- }
- view.addSubview(messageLabel)
- messageLabel.snp.makeConstraints { make in
- make.left.equalTo(view.left).offset(leftOffset)
- make.right.equalTo(view.right).inset(rightInset)
- make.top.equalTo(imageView.bottom).offset(topOffset)
- }
- view.addSubview(sendMailButon)
- sendMailButon.snp.makeConstraints { make in
- make.left.equalTo(view.left).offset(leftOffset)
- make.right.equalTo(view.right).inset(rightInset)
- make.top.equalTo(messageLabel.bottom).offset(24)
- make.height.equalTo(44)
- }
- }
- }
- // MARK: - MFMailComposeViewControllerDelegate
- extension SupportVC: MFMailComposeViewControllerDelegate {
- func sendEmail() {
- // if MFMailComposeViewController.canSendMail() {
- // let mailComposer = MFMailComposeViewController()
- // mailComposer.mailComposeDelegate = self
- // mailComposer.setToRecipients([K.supportEmail])
- // mailComposer.setSubject("Your Subject")
- // mailComposer.setMessageBody("Your message body", isHTML: false)
- // present(mailComposer, animated: true, completion: nil)
- // } else {
- // // Handle the case where the device cannot send email (e.g., no email accounts set up).
- // self.showAlert(message: "supportvc_email_compose_error_message".myLocalizedString)
- // }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment