Browse Source

【订阅】AI权限弹窗调整

lizhe 1 year ago
parent
commit
751991e9cd

+ 2 - 2
PDF Office/PDF Master/Class/Home/ViewController/KMAIRewritingVC.swift

@@ -346,7 +346,7 @@ class KMAIRewritingVC: NSViewController {
                     if (self.state == .AIErrorCorrection) {
                         type = .aiCorrect
                     }
-                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, isAI: true, type: type) { isSub, _, isClose in
+                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, type: type) { isSub, _, isClose in
                         if (isClose) {
                             return
                         }
@@ -415,7 +415,7 @@ class KMAIRewritingVC: NSViewController {
 //            }
             Task { @MainActor in
                 if await (KMLightMemberManager.manager.canPayFunction() == false) {
-                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, isAI: true) { isSub, _, isClose in
+                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, type: .aiRewrite) { isSub, _, isClose in
                         if (isClose) {
                             return
                         }

+ 1 - 1
PDF Office/PDF Master/Class/Home/ViewController/KMAITranslationVC.swift

@@ -115,7 +115,7 @@ class KMAITranslationVC: NSViewController {
 //                }
                 Task { @MainActor in
                     if await (KMLightMemberManager.manager.canPayFunction() == false) {
-                        let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, isAI: true, type: .aiTranslate) { isSub, _, isClose in
+                        let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, type: .aiTranslate) { isSub, _, isClose in
                             if (isClose) {
                                 return
                             }

+ 1 - 1
PDF Office/PDF Master/Class/Home/WindowController/KMAITranslationConfirmWindowController.swift

@@ -138,7 +138,7 @@ class KMAITranslationConfirmWindowController: NSWindowController {
 //        }
         Task { @MainActor in
             if await (KMLightMemberManager.manager.canPayFunction() == false) {
-                let _ = KMSubscribeWaterMarkWindowController.show(window: self.window!, isAI: true) { isSubscribeSuccess, _, isClose in
+                let _ = KMSubscribeWaterMarkWindowController.show(window: self.window!, type: .aiTranslate) { isSubscribeSuccess, _, isClose in
                     if (isClose) {
                         return
                     }

+ 2 - 2
PDF Office/PDF Master/Class/Home/WindowController/KMAITranslationWindowController.swift

@@ -397,7 +397,7 @@ class KMAITranslationWindowController: NSWindowController {
 //            }
             Task { @MainActor in
                 if await (KMLightMemberManager.manager.canPayFunction() == false) {
-                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.window!, isAI: true) { isSubscribeSuccess, _, isClose in
+                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.window!, type: .aiTranslate) { isSubscribeSuccess, _, isClose in
                         if (isClose) {
                             return
                         }
@@ -468,7 +468,7 @@ class KMAITranslationWindowController: NSWindowController {
 //            }
             Task { @MainActor in
                 if await (KMLightMemberManager.manager.canPayFunction() == false) {
-                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.window!, isAI: true) { isSubscribeSuccess, _, isClose in
+                    let _ = KMSubscribeWaterMarkWindowController.show(window: self.window!, type: .aiTranslate) { isSubscribeSuccess, _, isClose in
                         if (isClose) {
                             return
                         }

+ 25 - 2
PDF Office/PDF Master/Class/KMLightMember/Controller/SubscriptionView/WaterMark/KMSubscribeWaterMarkWindowController.swift

@@ -87,12 +87,22 @@ class KMSubscribeWaterMarkWindowController: NSWindowController {
     }
     
     //MARK: 打开文件
-    static func show(window: NSWindow, isContinue: Bool = false, isAI: Bool = false, type: KMSubscribeWaterMarkType = .none, subscribeDidClick: (()->Void)? = nil, completion: @escaping (_ isSubscribeSuccess: Bool, _ isWaterMarkExport: Bool, _ isClose: Bool) -> Void) -> KMSubscribeWaterMarkWindowController {
+    static func show(window: NSWindow, isContinue: Bool = false, type: KMSubscribeWaterMarkType = .none, subscribeDidClick: (()->Void)? = nil, completion: @escaping (_ isSubscribeSuccess: Bool, _ isWaterMarkExport: Bool, _ isClose: Bool) -> Void) -> KMSubscribeWaterMarkWindowController {
+        var isAI = false
+        if type == .aiCorrect ||
+            type == .aiRewrite ||
+            type == .aiTranslate {
+            isAI = true
+        } else {
+            isAI = false
+        }
+        
         if KMLightMemberManager.manager.isLogin() {
             let subscribeWaterMarkWindowController: KMSubscribeWaterMarkWindowController = KMSubscribeWaterMarkWindowController.init(windowNibName: "KMSubscribeWaterMarkWindowController")
 
             subscribeWaterMarkWindowController.isContinue = isContinue
             subscribeWaterMarkWindowController.isAI = isAI
+            
             window.beginSheet(subscribeWaterMarkWindowController.window!)
             subscribeWaterMarkWindowController.window?.center()
             
@@ -179,7 +189,20 @@ class KMSubscribeWaterMarkWindowController: NSWindowController {
             subscribeWaterMarkMainWindow = window
             return subscribeWaterMarkWindowController
         } else {
-            KMLoginWindowController.show(window: NSApp.mainWindow!,.equity)
+            let controller = KMLoginWindowController.show(window: NSApp.mainWindow!,.equity)
+            if isAI {
+                let alert = NSAlert()
+                alert.messageText = NSLocalizedString("Please login or register to proceed to the next step", comment: "")
+                alert.informativeText = NSLocalizedString("As a PDF Master member, you can subscribe to use AI features as needed.", comment: "")
+                alert.addButton(withTitle: NSLocalizedString("OK", comment: ""))
+                alert.beginSheetModal(for: (controller?.window)!) { result in
+//                    if (result == .alertFirstButtonReturn) {
+//
+//                    } else if result == .alertSecondButtonReturn {
+//                        return
+//                    }
+                }
+            }
             return KMSubscribeWaterMarkWindowController.init()
         }
     }

+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+Action.swift

@@ -2150,7 +2150,7 @@ extension KMMainViewController : KMMainToolbarControllerDelegate {
         self.trackEvent_aiTranslate()
         Task { @MainActor in
             if await (KMLightMemberManager.manager.canPayFunction() == false) {
-                let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, isAI: true, type: .aiTranslate) { isSub, _, isClose in
+                let _ = KMSubscribeWaterMarkWindowController.show(window: self.view.window!, type: .aiTranslate) { isSub, _, isClose in
                     if (isClose) {
                         return
                     }