marinofaggiana 5 жил өмнө
parent
commit
022ff3ff24

+ 3 - 1
iOSClient/Share/NCShare.swift

@@ -26,7 +26,7 @@ import Parchment
 import DropDown
 
 class NCShare: UIViewController, UIGestureRecognizerDelegate, NCShareLinkCellDelegate, NCShareUserCellDelegate, NCShareNetworkingDelegate {
-    
+   
     @IBOutlet weak var viewContainerConstraint: NSLayoutConstraint!
     @IBOutlet weak var searchField: UITextField!
     @IBOutlet weak var shareLinkImage: UIImageView!
@@ -199,6 +199,8 @@ class NCShare: UIViewController, UIGestureRecognizerDelegate, NCShareLinkCellDel
         
         dropDown.selectionAction = { [weak self] (index, item) in
             let item = items[index]
+            let networking = NCShareNetworking.init(account: self!.metadata!.account, activeUrl: self!.appDelegate.activeUrl, view: self!.view, delegate: self!)
+            networking.shareUserAndGroup(name: item.name, shareeType: item.shareeType, metadata: self!.metadata!)
         }
         
         dropDown.show()

+ 3 - 1
iOSClient/Share/NCShareNetworking.swift

@@ -116,9 +116,11 @@ class NCShareNetworking: NSObject {
         })
     }
     
-    func shareUserAndGroup(name: String, shareeType: Int, permission: Int, metadata: tableMetadata) {
+    func shareUserAndGroup(name: String, shareeType: Int, metadata: tableMetadata) {
         NCUtility.sharedInstance.startActivityIndicator(view: view, bottom: 0)
         let fileName = CCUtility.returnFileNamePath(fromFileName: metadata.fileName, serverUrl: metadata.serverUrl, activeUrl: activeUrl)!
+        var permission: Int = 0
+        if metadata.directory { permission = Int(k_max_folder_share_permission) } else { permission = Int(k_max_file_share_permission) }
         OCNetworking.sharedManager()?.shareUserGroup(withAccount: account, userOrGroup: name, fileName: fileName, permission: permission, shareeType: shareeType, completion: { (account, message, errorCode) in
             if errorCode == 0 {
                 OCNetworking.sharedManager()?.readShare(withAccount: account, completion: { (account, items, message, errorCode) in