alqindiirsyam 1 yıl önce
ebeveyn
işleme
a029f8a4f6

+ 5 - 0
appbuilder-ios/NexilisLite/NexilisLite/Resource/id.lproj/Localizable.strings

@@ -364,3 +364,8 @@
 "Contact Center" = "Pusat Kontak";
 "Notification Center" = "Pusat Notifikasi";
 "Call" = "Panggilan";
+"Please select at least 1 user" = "Pilih minimal 1 user";
+"Please select at least 1 group" = "Pilih minimal 1 grup";
+"Validation Transaction Limit" = "Batas Validasi Transaksi";
+"Set a transation validation amount" = "Tetapkan jumlah validasi transaksi";
+"Any transaction over this amount will display an alert and require you to accept the alert to validate before proceeding with the transaction" = "Setiap transaksi yang melebihi jumlah ini akan menampilkan peringatan dan mengharuskan Anda menerima peringatan tersebut untuk memvalidasi sebelum melanjutkan transaksi";

+ 3 - 0
appbuilder-ios/NexilisLite/NexilisLite/Source/Utils.swift

@@ -2086,6 +2086,9 @@ public class ValidationTransactionLimit: UIViewController, UITextFieldDelegate {
     public override func viewDidLoad() {
         super.viewDidLoad()
         
+        navigationController?.navigationBar.tintColor = .white
+        navigationController?.navigationBar.topItem?.backButtonTitle = "Back".localized()
+        
         let title = UILabel()
         title.text = "Set a transation validation amount".localized()
         title.font = .systemFont(ofSize: 18, weight: .medium)

+ 8 - 2
appbuilder-ios/NexilisLite/NexilisLite/Source/View/Control/NotificationSound.swift

@@ -17,8 +17,14 @@ public class NotificationSound: UIViewController, UITableViewDelegate, UITableVi
 
     public override func viewDidLoad() {
         super.viewDidLoad()
-
-        self.view.backgroundColor = .white
+        
+        let attributes = [NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 16.0), NSAttributedString.Key.foregroundColor: UIColor.white]
+        let navBarAppearance = UINavigationBarAppearance()
+        navBarAppearance.configureWithOpaqueBackground()
+        navBarAppearance.backgroundColor = self.traitCollection.userInterfaceStyle == .dark ? .blackDarkMode : UIColor.mainColor
+        navBarAppearance.titleTextAttributes = attributes
+        navigationController?.navigationBar.standardAppearance = navBarAppearance
+        navigationController?.navigationBar.scrollEdgeAppearance = navBarAppearance
         
         view.addSubview(tableView)
         tableView.translatesAutoresizingMaskIntoConstraints = false

+ 7 - 1
appbuilder-ios/NexilisLite/NexilisLite/Source/View/Control/ScannerViewController.swift

@@ -37,7 +37,13 @@ public class ScannerViewController: UIViewController, QRScannerViewDelegate {
     public override func viewDidLoad() {
         super.viewDidLoad()
         
-        self.view.backgroundColor = .white
+        let attributes = [NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 16.0), NSAttributedString.Key.foregroundColor: UIColor.white]
+        let navBarAppearance = UINavigationBarAppearance()
+        navBarAppearance.configureWithOpaqueBackground()
+        navBarAppearance.backgroundColor = self.traitCollection.userInterfaceStyle == .dark ? .blackDarkMode : UIColor.mainColor
+        navBarAppearance.titleTextAttributes = attributes
+        navigationController?.navigationBar.standardAppearance = navBarAppearance
+        navigationController?.navigationBar.scrollEdgeAppearance = navBarAppearance
 
         self.title = "Scan QR Code".localized()
         navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Cancel".localized(), style: .plain, target: self, action: #selector(cancel(sender:)))

+ 16 - 2
appbuilder-ios/NexilisLite/NexilisLite/Source/View/Streaming/QmeraCreateStreamingViewController.swift

@@ -63,13 +63,13 @@ public class QmeraCreateStreamingViewController: UITableViewController {
     lazy var titleView: UITextField = {
         let textField = UITextField()
         textField.borderStyle = .none
-        textField.placeholder = "Title".localized()
+        textField.placeholder = "Title".localized() + "*"
         return textField
     }()
     
     lazy var descriptionView: UITextView = {
         let textView = UITextView()
-        textView.text = "Description".localized()
+//        textView.text = "Description".localized() + "*"
         textView.textColor = UIColor.lightGray
         return textView
     }()
@@ -292,6 +292,20 @@ public class QmeraCreateStreamingViewController: UITableViewController {
                     type = "0"
                 }
                 
+                if type == "5" && members.count == 0 {
+                    let imageView = UIImageView(image: UIImage(systemName: "xmark.circle.fill"))
+                    imageView.tintColor = .white
+                    let banner = FloatingNotificationBanner(title: "Please select at least 1 user".localized(), subtitle: nil, titleFont: UIFont.systemFont(ofSize: 16), titleColor: nil, titleTextAlign: .left, subtitleFont: nil, subtitleColor: nil, subtitleTextAlign: nil, leftView: imageView, rightView: nil, style: .danger, colors: nil, iconPosition: .center)
+                    banner.show()
+                    return
+                } else if type == "6" && groups.count == 0 {
+                    let imageView = UIImageView(image: UIImage(systemName: "xmark.circle.fill"))
+                    imageView.tintColor = .white
+                    let banner = FloatingNotificationBanner(title: "Please select at least 1 group".localized(), subtitle: nil, titleFont: UIFont.systemFont(ofSize: 16), titleColor: nil, titleTextAlign: .left, subtitleFont: nil, subtitleColor: nil, subtitleTextAlign: nil, leftView: imageView, rightView: nil, style: .danger, colors: nil, iconPosition: .center)
+                    banner.show()
+                    return
+                }
+                
                 data["groups"] = groups
                 data["members"] = members
                 data["type"] = type

+ 10 - 8
appbuilder-ios/NexilisLite/NexilisLite/Source/View/Streaming/QmeraStreamingViewController.swift

@@ -180,14 +180,16 @@ class QmeraStreamingViewController: UIViewController {
         statusView.layer.cornerRadius = 8.0
         statusView.layer.masksToBounds = true
         statusView.addSubview(status)
-        let tapGestureStatus = UITapGestureRecognizer(target: self, action: #selector(changeTitleOrTag(_:)))
-        statusView.tag = 0
-        statusView.isUserInteractionEnabled = true
-        statusView.addGestureRecognizer(tapGestureStatus)
-        
-        let tapGestureTagline = UITapGestureRecognizer(target: self, action: #selector(changeTitleOrTag(_:)))
-        taglineView.tag = 1
-        taglineView.addGestureRecognizer(tapGestureTagline)
+        if isLive {
+            let tapGestureStatus = UITapGestureRecognizer(target: self, action: #selector(changeTitleOrTag(_:)))
+            statusView.tag = 0
+            statusView.isUserInteractionEnabled = true
+            statusView.addGestureRecognizer(tapGestureStatus)
+            
+            let tapGestureTagline = UITapGestureRecognizer(target: self, action: #selector(changeTitleOrTag(_:)))
+            taglineView.tag = 1
+            taglineView.addGestureRecognizer(tapGestureTagline)
+        }
         
         view.backgroundColor = .clear
         view.addSubview(imageView)