Эх сурвалжийг харах

change delegate readFolderSuccess

Marino Faggiana 7 жил өмнө
parent
commit
d323ff00aa

+ 1 - 1
Picker/DocumentPickerViewController.swift

@@ -283,7 +283,7 @@ class DocumentPickerViewController: UIDocumentPickerExtensionViewController, CCN
         self.present(alert, animated: true, completion: nil)
         self.present(alert, animated: true, completion: nil)
     }
     }
     
     
-    func readFolderSuccess(_ metadataNet: CCMetadataNet!, permissions: String!, etag: String!, metadatas: [Any]!) {
+    func readFolderSuccess(_ metadataNet: CCMetadataNet!, metadataFolder: tableMetadata?, metadatas: [Any]!) {
         
         
         // remove all record
         // remove all record
         var predicate = NSPredicate(format: "account = %@ AND directoryID = %@ AND session = ''", activeAccount!, metadataNet.directoryID!)
         var predicate = NSPredicate(format: "account = %@ AND directoryID = %@ AND session = ''", activeAccount!, metadataNet.directoryID!)

+ 1 - 1
iOSClient/Brand/Picker.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<key>CFBundleShortVersionString</key>
 	<string>2.17.4</string>
 	<string>2.17.4</string>
 	<key>CFBundleVersion</key>
 	<key>CFBundleVersion</key>
-	<string>00014</string>
+	<string>00015</string>
 	<key>NSExtension</key>
 	<key>NSExtension</key>
 	<dict>
 	<dict>
 		<key>NSExtensionAttributes</key>
 		<key>NSExtensionAttributes</key>

+ 1 - 1
iOSClient/Brand/PickerFileProvider.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<key>CFBundleShortVersionString</key>
 	<string>2.17.4</string>
 	<string>2.17.4</string>
 	<key>CFBundleVersion</key>
 	<key>CFBundleVersion</key>
-	<string>00014</string>
+	<string>00015</string>
 	<key>NSExtension</key>
 	<key>NSExtension</key>
 	<dict>
 	<dict>
 		<key>NSExtensionFileProviderDocumentGroup</key>
 		<key>NSExtensionFileProviderDocumentGroup</key>

+ 1 - 1
iOSClient/Brand/Share.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<key>CFBundleShortVersionString</key>
 	<string>2.17.4</string>
 	<string>2.17.4</string>
 	<key>CFBundleVersion</key>
 	<key>CFBundleVersion</key>
-	<string>00014</string>
+	<string>00015</string>
 	<key>NSAppTransportSecurity</key>
 	<key>NSAppTransportSecurity</key>
 	<dict>
 	<dict>
 		<key>NSAllowsArbitraryLoads</key>
 		<key>NSAllowsArbitraryLoads</key>

+ 1 - 1
iOSClient/Brand/iOSClient.plist

@@ -69,7 +69,7 @@
 		</dict>
 		</dict>
 	</array>
 	</array>
 	<key>CFBundleVersion</key>
 	<key>CFBundleVersion</key>
-	<string>00014</string>
+	<string>00015</string>
 	<key>Fabric</key>
 	<key>Fabric</key>
 	<dict>
 	<dict>
 		<key>APIKey</key>
 		<key>APIKey</key>

+ 6 - 6
iOSClient/Main/CCMain.m

@@ -1907,7 +1907,7 @@
         [self changePasswordAccount];
         [self changePasswordAccount];
 }
 }
 
 
-- (void)readFolderSuccess:(CCMetadataNet *)metadataNet permissions:(NSString *)permissions etag:(NSString *)etag metadatas:(NSArray *)metadatas
+- (void)readFolderSuccess:(CCMetadataNet *)metadataNet metadataFolder:(tableMetadata *)metadataFolder metadatas:(NSArray *)metadatas
 {
 {
     // verify active user
     // verify active user
     tableAccount *record = [[NCManageDatabase sharedInstance] getAccountActive];
     tableAccount *record = [[NCManageDatabase sharedInstance] getAccountActive];
@@ -1916,8 +1916,8 @@
         return;
         return;
     
     
     // save father e update permission
     // save father e update permission
-    if(!_isSearchMode)
-        _fatherPermission = permissions;
+    if(!_isSearchMode && metadataFolder)
+        _fatherPermission = metadataFolder.permissions;
     
     
     NSArray *recordsInSessions;
     NSArray *recordsInSessions;
     NSMutableArray *metadatasToInsertInDB = [NSMutableArray new];
     NSMutableArray *metadatasToInsertInDB = [NSMutableArray new];
@@ -1928,7 +1928,7 @@
         
         
     } else {
     } else {
         
         
-        [[NCManageDatabase sharedInstance] setDirectoryWithServerUrl:metadataNet.serverUrl serverUrlTo:nil etag:etag];
+        [[NCManageDatabase sharedInstance] setDirectoryWithServerUrl:metadataNet.serverUrl serverUrlTo:nil etag:metadataFolder.etag];
         
         
         [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND directoryID = %@ AND session = ''", metadataNet.account, metadataNet.directoryID] clearDateReadDirectoryID:metadataNet.directoryID];
         [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND directoryID = %@ AND session = ''", metadataNet.account, metadataNet.directoryID] clearDateReadDirectoryID:metadataNet.directoryID];
         
         
@@ -2103,7 +2103,7 @@
         metadataNet.selector = selectorSearch;
         metadataNet.selector = selectorSearch;
         metadataNet.serverUrl = _serverUrl;
         metadataNet.serverUrl = _serverUrl;
 
 
-        [self readFolderSuccess:metadataNet permissions:@"" etag:@"" metadatas:_searchResultMetadatas];
+        [self readFolderSuccess:metadataNet metadataFolder:nil metadatas:_searchResultMetadatas];
     
     
         // Version >= 12
         // Version >= 12
         if ([[NCManageDatabase sharedInstance] getServerVersion] >= 12) {
         if ([[NCManageDatabase sharedInstance] getServerVersion] >= 12) {
@@ -2138,7 +2138,7 @@
 {
 {
     _searchResultMetadatas = [[NSMutableArray alloc] initWithArray:metadatas];
     _searchResultMetadatas = [[NSMutableArray alloc] initWithArray:metadatas];
     
     
-    [self readFolderSuccess:metadataNet permissions:nil etag:nil metadatas:metadatas];
+    [self readFolderSuccess:metadataNet metadataFolder:nil metadatas:metadatas];
 }
 }
 
 
 - (void)cancelSearchBar
 - (void)cancelSearchBar

+ 1 - 1
iOSClient/Move/CCMove.m

@@ -278,7 +278,7 @@
     [self presentViewController:alertController animated:YES completion:nil];
     [self presentViewController:alertController animated:YES completion:nil];
 }
 }
 
 
-- (void)readFolderSuccess:(CCMetadataNet *)metadataNet permissions:(NSString *)permissions etag:(NSString *)etag metadatas:(NSArray *)metadatas
+- (void)readFolderSuccess:(CCMetadataNet *)metadataNet metadataFolder:(tableMetadata *)metadataFolder metadatas:(NSArray *)metadatas
 {
 {
     // remove all record
     // remove all record
     [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND directoryID = %@ AND session = ''", activeAccount, metadataNet.directoryID] clearDateReadDirectoryID: metadataNet.directoryID];
     [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND directoryID = %@ AND session = ''", activeAccount, metadataNet.directoryID] clearDateReadDirectoryID: metadataNet.directoryID];

+ 1 - 1
iOSClient/Networking/OCNetworking.h

@@ -61,7 +61,7 @@
 - (void)uploadFileSuccess:(CCMetadataNet *)metadataNet fileID:(NSString *)fileID serverUrl:(NSString *)serverUrl selector:(NSString *)selector selectorPost:(NSString *)selectorPost;
 - (void)uploadFileSuccess:(CCMetadataNet *)metadataNet fileID:(NSString *)fileID serverUrl:(NSString *)serverUrl selector:(NSString *)selector selectorPost:(NSString *)selectorPost;
 - (void)uploadFileFailure:(CCMetadataNet *)metadataNet fileID:(NSString *)fileID serverUrl:(NSString *)serverUrl selector:(NSString *)selector message:(NSString *)message errorCode:(NSInteger)errorCode;
 - (void)uploadFileFailure:(CCMetadataNet *)metadataNet fileID:(NSString *)fileID serverUrl:(NSString *)serverUrl selector:(NSString *)selector message:(NSString *)message errorCode:(NSInteger)errorCode;
 
 
-- (void)readFolderSuccess:(CCMetadataNet *)metadataNet permissions:(NSString *)permissions etag:(NSString *)etag metadatas:(NSArray *)metadatas;
+- (void)readFolderSuccess:(CCMetadataNet *)metadataNet metadataFolder:(tableMetadata *)metadataFolder metadatas:(NSArray *)metadatas;
 - (void)readFolderFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode;
 - (void)readFolderFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode;
 
 
 - (void)createFolderSuccess:(CCMetadataNet *)metadataNet;
 - (void)createFolderSuccess:(CCMetadataNet *)metadataNet;

+ 22 - 9
iOSClient/Networking/OCNetworking.m

@@ -289,6 +289,8 @@
     [communication readFolder:_metadataNet.serverUrl withUserSessionToken:nil onCommunication:communication successRequest:^(NSHTTPURLResponse *response, NSArray *items, NSString *redirectedServer, NSString *token) {
     [communication readFolder:_metadataNet.serverUrl withUserSessionToken:nil onCommunication:communication successRequest:^(NSHTTPURLResponse *response, NSArray *items, NSString *redirectedServer, NSString *token) {
         
         
         NSMutableArray *metadatas = [NSMutableArray new];
         NSMutableArray *metadatas = [NSMutableArray new];
+        tableMetadata *metadataFolder;
+        NSString *directoryIDFolder;
         
         
         // Check items > 0
         // Check items > 0
         if ([items count] == 0) {
         if ([items count] == 0) {
@@ -299,8 +301,8 @@
 
 
             dispatch_async(dispatch_get_main_queue(), ^{
             dispatch_async(dispatch_get_main_queue(), ^{
                 
                 
-                if ([self.delegate respondsToSelector:@selector(readFolderSuccess:permissions:etag:metadatas:)])
-                    [self.delegate readFolderSuccess:_metadataNet permissions:@"" etag:@"" metadatas:metadatas];
+                if ([self.delegate respondsToSelector:@selector(readFolderSuccess:metadataFolder:metadatas:)])
+                    [self.delegate readFolderSuccess:_metadataNet metadataFolder:nil metadatas:metadatas];
             });
             });
 
 
             [self complete];
             [self complete];
@@ -309,12 +311,10 @@
         }
         }
 
 
         // directory [0]
         // directory [0]
-        OCFileDto *itemDtoDirectory = [items objectAtIndex:0];
-        NSString *permissions = itemDtoDirectory.permissions;
-        NSString *etagDirectory = itemDtoDirectory.etag;
+        OCFileDto *itemDtoFolder = [items objectAtIndex:0];
         //NSDate *date = [NSDate dateWithTimeIntervalSince1970:itemDtoDirectory.date];
         //NSDate *date = [NSDate dateWithTimeIntervalSince1970:itemDtoDirectory.date];
         
         
-        NSString *directoryID = [[NCManageDatabase sharedInstance] addDirectoryWithServerUrl:_metadataNet.serverUrl permissions:permissions];
+        NSString *directoryID = [[NCManageDatabase sharedInstance] addDirectoryWithServerUrl:_metadataNet.serverUrl permissions:itemDtoFolder.permissions];
         _metadataNet.directoryID = directoryID;
         _metadataNet.directoryID = directoryID;
 
 
         NSString *autoUploadFileName = [[NCManageDatabase sharedInstance] getAccountAutoUploadFileName];
         NSString *autoUploadFileName = [[NCManageDatabase sharedInstance] getAccountAutoUploadFileName];
@@ -322,6 +322,19 @@
         
         
         NSString *directoryUser = [CCUtility getDirectoryActiveUser:_activeUser activeUrl:_activeUrl];
         NSString *directoryUser = [CCUtility getDirectoryActiveUser:_activeUser activeUrl:_activeUrl];
         
         
+        // Metadata . (Folder)
+        if ([_metadataNet.serverUrl isEqualToString:[CCUtility getHomeServerUrlActiveUrl:_activeUrl]]) {
+            
+            // root folder
+            directoryIDFolder = @"00000000-0000-0000-0000-000000000000";
+            itemDtoFolder.fileName = @".";
+            
+        } else {
+            
+            directoryIDFolder = [[NCManageDatabase sharedInstance] getDirectoryID:[CCUtility deletingLastPathComponentFromServerUrl:_metadataNet.serverUrl]];
+            itemDtoFolder.fileName = [_metadataNet.serverUrl lastPathComponent];
+        }
+        metadataFolder = [CCUtility trasformedOCFileToCCMetadata:itemDtoFolder fileNamePrint:itemDtoFolder.fileName serverUrl:_metadataNet.serverUrl directoryID:directoryIDFolder autoUploadFileName:autoUploadFileName autoUploadDirectory:autoUploadDirectory activeAccount:_metadataNet.account directoryUser:directoryUser];
         
         
         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
 
 
@@ -347,7 +360,7 @@
                     fileName = [fileName substringToIndex:[fileName length] - 1];
                     fileName = [fileName substringToIndex:[fileName length] - 1];
                     NSString *serverUrl = [CCUtility stringAppendServerUrl:_metadataNet.serverUrl addFileName:fileName];
                     NSString *serverUrl = [CCUtility stringAppendServerUrl:_metadataNet.serverUrl addFileName:fileName];
                         
                         
-                    (void)[[NCManageDatabase sharedInstance] addDirectoryWithServerUrl:serverUrl permissions:permissions];
+                    (void)[[NCManageDatabase sharedInstance] addDirectoryWithServerUrl:serverUrl permissions:itemDtoFolder.permissions];
                 }
                 }
                 
                 
                 // ----- BUG #942 ---------
                 // ----- BUG #942 ---------
@@ -364,8 +377,8 @@
             
             
             dispatch_async(dispatch_get_main_queue(), ^{
             dispatch_async(dispatch_get_main_queue(), ^{
                 
                 
-                if ([self.delegate respondsToSelector:@selector(readFolderSuccess:permissions:etag:metadatas:)])
-                    [self.delegate readFolderSuccess:_metadataNet permissions:permissions etag:etagDirectory metadatas:metadatas];
+                if ([self.delegate respondsToSelector:@selector(readFolderSuccess:metadataFolder:metadatas:)])
+                    [self.delegate readFolderSuccess:_metadataNet metadataFolder:metadataFolder metadatas:metadatas];
             });
             });
         });
         });
         
         

+ 1 - 1
iOSClient/Synchronize/CCSynchronize.m

@@ -88,7 +88,7 @@
 }
 }
 
 
 // MULTI THREAD
 // MULTI THREAD
-- (void)readFolderSuccess:(CCMetadataNet *)metadataNet permissions:(NSString *)permissions etag:(NSString *)etag metadatas:(NSArray *)metadatas
+- (void)readFolderSuccess:(CCMetadataNet *)metadataNet metadataFolder:(tableMetadata *)metadataFolder metadatas:(NSArray *)metadatas
 {
 {
     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{