Sfoglia il codice sorgente

add Delete action on Offline

Marino Faggiana 8 anni fa
parent
commit
f4546b0c56

+ 1 - 0
iOSClient/CCGlobal.h

@@ -266,6 +266,7 @@ extern NSString *const BKPasscodeKeychainServiceName;
 #define actionReadFile                  @"readFile"
 #define actionReadFolder                @"readFolder"
 #define actionReadShareServer           @"readShareServer"
+#define actionSearch                    @"search"
 #define actionShare                     @"share"
 #define actionShareWith                 @"shareWith"
 #define actionUnShare                   @"unShare"

+ 18 - 6
iOSClient/Main/CCMain.m

@@ -1856,6 +1856,22 @@
     
     NSString *directoryID = [CCCoreData getDirectoryIDFromServerUrl:_serverUrl activeAccount:app.activeAccount];
     
+    // Search Mode
+    if (_isSearchMode) {
+        
+        CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:app.activeAccount];
+        
+        metadataNet.action = actionSearch;
+        metadataNet.date = [NSDate date];
+        metadataNet.directoryID = directoryID;
+        metadataNet.priority = NSOperationQueuePriorityVeryHigh;
+        metadataNet.serverUrl = [CCCoreData getServerUrlFromDirectoryID:directoryID activeAccount:app.activeAccount];
+        
+        [app addNetworkingOperationQueue:app.netQueue delegate:self metadataNet:metadataNet];
+                
+        return;
+    }
+    
     if (([CCCoreData isDirectoryOutOfDate:dayForceReadFolder directoryID:directoryID activeAccount:app.activeAccount] || forced) && directoryID && app.activeAccount) {
         
         if (_refreshControl.isRefreshing == NO)
@@ -1896,12 +1912,8 @@
         
         [_hud hideHud];
         
-        if ([metadataNet.selectorPost isEqualToString:selectorReadFolderForced]) {
-            [self readFolderWithForced:YES];
-        } else {
-            [self reloadDatasource:metadataNet.serverUrl fileID:metadataNet.metadata.fileID selector:metadataNet.selector];
-        }
-
+        [self reloadDatasource:metadataNet.serverUrl fileID:metadataNet.metadata.fileID selector:metadataNet.selector];
+        
         // next
         if ([_selectedMetadatas count] > 0) {
             

+ 1 - 1
iOSClient/Notification/CCNotification.swift

@@ -83,7 +83,7 @@ class CCNotification: UITableViewController, OCNetworkingDelegate {
                 self.appDelegate.addNetworkingOperationQueue(self.appDelegate.netQueue, delegate: self, metadataNet: metadataNet)
             }
             
-            remove.backgroundColor = CCConstant.GlobalConstants.kColor_Cryptocloud
+            remove.backgroundColor = .green
  
             return [remove]
  

+ 23 - 1
iOSClient/Offline/CCOfflinePageContent.m

@@ -25,7 +25,10 @@
 
 #import "AppDelegate.h"
 
-@interface CCOfflinePageContent ()
+#import "Nextcloud-Swift.h"
+
+
+@interface CCOfflinePageContent () <CCActionsDeleteDelegate>
 {
     NSArray *dataSource;
     BOOL _reloadDataSource;
@@ -181,6 +184,20 @@
     }
 }
 
+#pragma --------------------------------------------------------------------------------------------
+#pragma mark ===== Delete =====
+#pragma--------------------------------------------------------------------------------------------
+
+- (void)deleteFileOrFolderFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
+{
+    NSLog(@"[LOG] Delete error %@", message);
+}
+
+- (void)deleteFileOrFolderSuccess:(CCMetadataNet *)metadataNet
+{
+    [self reloadTable];
+}
+
 #pragma --------------------------------------------------------------------------------------------
 #pragma mark ===== Swipe Table -> menu =====
 #pragma--------------------------------------------------------------------------------------------
@@ -312,6 +329,11 @@
                                                              style:UIAlertActionStyleDestructive
                                                            handler:^(UIAlertAction *action) {
                                                                
+                                                               if ([_pageType isEqualToString:pageOfflineOffline]) {
+                                                                   
+                                                                   [[CCActions sharedInstance] deleteFileOrFolder:_metadata delegate:self];
+                                                               }
+                                                               
                                                                if ([_pageType isEqualToString:pageOfflineLocal]) {
                                                                    
                                                                    NSString *fileNamePath = [NSString stringWithFormat:@"%@/%@", _serverUrl, _metadata.fileNameData];