Marino Faggiana 8 жил өмнө
parent
commit
010447b512

+ 17 - 7
iOSClient/FileSystem/NCManageDatabase.swift

@@ -489,7 +489,7 @@ class NCManageDatabase: NSObject {
                 addShare.account = account
                 addShare.fileName = fileName
                 addShare.serverUrl = serverUrl
-                addShare.shareLink = share
+                addShare.shareUserAndGroup = share
                 
                 realm.add(addShare)
             }
@@ -580,16 +580,19 @@ class NCManageDatabase: NSObject {
         // Link
         for item in itemsLink {
             
-            let fullPath = CCUtility.getHomeServerUrlActiveUrl(activeUrl) + "\(item.path)"
+            let fullPath = CCUtility.getHomeServerUrlActiveUrl(activeUrl) + "\(item.path!)"
             let fileName = NSString(string: fullPath).lastPathComponent
-            var serverUrl = NSString(string: fullPath).substring(to: (fullPath.characters.count - (fullPath.characters.count-1)))
+            var serverUrl = NSString(string: fullPath).substring(to: (fullPath.characters.count - fileName.characters.count - 1))
             
             if serverUrl.hasSuffix("/") {
-                serverUrl = NSString(string: fullPath).substring(to: (fullPath.characters.count-1))
+                serverUrl = NSString(string: serverUrl).substring(to: (serverUrl.characters.count - 1))
             }
             
             if item.idRemoteShared > 0 {
-                sharesLink = self.addShareLink("\(item.idRemoteShared)", fileName: fileName, serverUrl: serverUrl, account: account)
+                let sharesLinkReturn = self.addShareLink("\(item.idRemoteShared)", fileName: fileName, serverUrl: serverUrl, account: account)
+                for (key,value) in sharesLinkReturn {
+                    sharesLink.updateValue(value, forKey:key)
+                }
             }
         }
         
@@ -620,9 +623,16 @@ class NCManageDatabase: NSObject {
             
             let fullPath = CCUtility.getHomeServerUrlActiveUrl(activeUrl) + "\(key)"
             let fileName = NSString(string: fullPath).lastPathComponent
-            let serverUrl = NSString(string: fullPath).substring(to: (fullPath.characters.count - (fullPath.characters.count-1)))
+            var serverUrl = NSString(string: fullPath).substring(to: (fullPath.characters.count - fileName.characters.count - 1))
+            
+            if serverUrl.hasSuffix("/") {
+                serverUrl = NSString(string: serverUrl).substring(to: (serverUrl.characters.count - 1))
+            }
             
-            sharesUserAndGroup = self.addShareUserAndGroup(share!, fileName: fileName, serverUrl: serverUrl, account: account)
+            let sharesUserAndGroupReturn = self.addShareUserAndGroup(share!, fileName: fileName, serverUrl: serverUrl, account: account)
+            for (key,value) in sharesUserAndGroupReturn {
+                sharesUserAndGroup.updateValue(value, forKey:key)
+            }
         }
         
         return [sharesLink, sharesUserAndGroup]

+ 8 - 6
iOSClient/Main/CCMain.m

@@ -361,9 +361,9 @@
         
         // populate shared Link & User variable
         
-        NSArray *share = [[NCManageDatabase sharedInstance] getSharesAccount:app.activeAccount];
-        app.sharesLink = share[0];
-        app.sharesUserAndGroup = share[1];
+        NSArray *results = [[NCManageDatabase sharedInstance] getSharesAccount:app.activeAccount];
+        app.sharesLink = results[0];
+        app.sharesUserAndGroup = results[1];
         
         // Setting Theming
         [app settingThemingColorBrand];
@@ -2896,14 +2896,16 @@
 {
     [_hud hideHud];
     
+    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
+    
     // change account ?
     TableAccount *record = [CCCoreData getActiveAccount];
     if([record.account isEqualToString:metadataNet.account] == NO)
         return;
     
-    NSArray *result = [[NCManageDatabase sharedInstance] updateShare:items account:app.activeAccount activeUrl:app.activeUrl];
-    app.sharesLink = result[0];
-    app.sharesUserAndGroup = result[1];
+    NSArray *result = [[NCManageDatabase sharedInstance] updateShare:items account:appDelegate.activeAccount activeUrl:appDelegate.activeUrl];
+    appDelegate.sharesLink = result[0];
+    appDelegate.sharesUserAndGroup = result[1];
     
     if (openWindow) {