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

new view for image/video in offline

Marino Faggiana 8 жил өмнө
parent
commit
52d41285ca

+ 1 - 5
iOSClient/CCGlobal.h

@@ -304,11 +304,7 @@ extern NSString *const BKPasscodeKeychainServiceName;
 #define keyFileNameMask                 @"fileNameMask"
 #define keyFileNameMaskAutomaticPhotos  @"fileNameMaskAutomaticPhotos"
 
-// type of source directory 
-#define sorceDirectoryOffline           0
-#define sorceDirectoryLocal             1
-#define sorceDirectoryAccount           2
-
+// Type of page Offline
 #define pageOfflineOffline              @"Offline"
 #define pageOfflineLocal                @"Local"
 

+ 1 - 1
iOSClient/Main/CCDetail.h

@@ -41,7 +41,7 @@
 @property (nonatomic, weak) id <CCDetailViewDelegate> delegate;
 
 @property (nonatomic, strong) CCMetadata *metadataDetail;
-@property NSInteger sourceDirectory;
+@property BOOL sourceDirectoryLocal;
 @property BOOL isCameraUpload;
 @property (nonatomic, strong) NSDate *dateFilterQuery;
 

+ 22 - 41
iOSClient/Main/CCDetail.m

@@ -175,13 +175,10 @@
     fixedSpaceMini.width = 25;
     _buttonAction = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:image_actionSheetOpenIn] style:UIBarButtonItemStylePlain target:self action:@selector(actionButtonPressed:)];
     _buttonDelete = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemTrash target:self action:@selector(deleteButtonPressed:)];
-
-    if (self.sourceDirectory == sorceDirectoryAccount)
-        [_toolbar setItems:[NSArray arrayWithObjects: flexible, _buttonDelete, fixedSpaceMini, _buttonAction,  nil]];
-    else
-        [_toolbar setItems:[NSArray arrayWithObjects: flexible, _buttonAction,  nil]];
-
+    
+    [_toolbar setItems:[NSArray arrayWithObjects: flexible, _buttonDelete, fixedSpaceMini, _buttonAction,  nil]];
     [_toolbar setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleTopMargin];
+    
     [self.view addSubview:_toolbar];
 }
 
@@ -256,7 +253,7 @@
 {
     NSString *fileName;
     
-    if (self.sourceDirectory == sorceDirectoryLocal) {
+    if (_sourceDirectoryLocal) {
         
         fileName = [NSString stringWithFormat:@"%@/%@", self.metadataDetail.directoryID, self.metadataDetail.fileNamePrint];
         
@@ -300,7 +297,7 @@
 {
     NSString *fileName;
     
-    if (self.sourceDirectory == sorceDirectoryLocal) {
+    if (_sourceDirectoryLocal) {
         
         fileName = [NSString stringWithFormat:@"%@/%@", self.metadataDetail.directoryID, self.metadataDetail.fileNamePrint];
         
@@ -372,28 +369,11 @@
 {
     self.photoBrowser = [[MWPhotoBrowser alloc] initWithDelegate:self];
     _reload = NO;
-    CCMetadata *metadata = [[CCMetadata alloc] init];
     
     [self.photos removeAllObjects];
     [self.thumbs removeAllObjects];
     [_dataSourceDirectoryID removeAllObjects];
     
-    // Offline
-    if (self.sourceDirectory == sorceDirectoryOffline) {
-            
-        self.dataSourceImagesVideos = (NSMutableArray *)[CCCoreData getTableMetadataWithPredicate:[NSPredicate predicateWithFormat:@"(fileID == %@) AND (account == %@)", self.metadataDetail.fileID, app.activeAccount] fieldOrder:[CCUtility getOrderSettings] ascending:[CCUtility getAscendingSettings]];
-    }
-        
-    // Local
-    if (self.sourceDirectory == sorceDirectoryLocal) {
-        
-        NSString *cameraFolderName = [CCCoreData getCameraUploadFolderNameActiveAccount:app.activeAccount];
-        NSString *cameraFolderPath = [CCCoreData getCameraUploadFolderPathActiveAccount:app.activeAccount activeUrl:app.activeUrl typeCloud:app.typeCloud];
-        
-        metadata = [CCUtility insertFileSystemInMetadata:self.metadataDetail.fileID directory:self.metadataDetail.directoryID activeAccount:app.activeAccount cameraFolderName:cameraFolderName cameraFolderPath:cameraFolderPath];
-        self.dataSourceImagesVideos = [[NSMutableArray alloc] initWithObjects:metadata, nil];
-    }
-    
     // if not images, exit
     if ([self.dataSourceImagesVideos count] == 0) return;
     
@@ -425,12 +405,7 @@
     
     // PhotoBrowser
     self.photoBrowser.displayActionButton = YES;
-    
-    if (self.sourceDirectory == sorceDirectoryAccount)
-        self.photoBrowser.displayDeleteButton = YES;
-    else
-        self.photoBrowser.displayDeleteButton = NO;
-    
+    self.photoBrowser.displayDeleteButton = YES;
     self.photoBrowser.displayNavArrows = YES;
     self.photoBrowser.displaySelectionButtons = NO;
     self.photoBrowser.alwaysShowControls = NO;
@@ -482,8 +457,10 @@
         _reload = NO;
     }
     
-    if (self.sourceDirectory == sorceDirectoryLocal) directory = self.metadataDetail.directoryID;
-    else directory = app.directoryUser;
+    if (_sourceDirectoryLocal)
+        directory = self.metadataDetail.directoryID;
+    else
+        directory = app.directoryUser;
 
     // Download
     if (metadata && [[NSFileManager defaultManager] fileExistsAtPath:[NSString stringWithFormat:@"%@/%@", directory, metadata.fileID]] == NO && [metadata.session length] == 0)
@@ -495,8 +472,10 @@
     NSString *directory;
     UIImage *image;
     
-    if (self.sourceDirectory == sorceDirectoryLocal) directory = self.metadataDetail.directoryID;
-    else directory = app.directoryUser;
+    if (_sourceDirectoryLocal)
+        directory = self.metadataDetail.directoryID;
+    else
+        directory = app.directoryUser;
 
     CCMetadata *metadata = [self.dataSourceImagesVideos objectAtIndex:index];
     
@@ -629,8 +608,10 @@
     
     CCMetadata *metadata = [self.dataSourceImagesVideos objectAtIndex:index];
     
-    if (self.sourceDirectory == sorceDirectoryLocal) directory = self.metadataDetail.directoryID;
-    else directory = app.directoryUser;
+    if (_sourceDirectoryLocal)
+        directory = self.metadataDetail.directoryID;
+    else
+        directory = app.directoryUser;
 
     if (index < self.thumbs.count) {
         
@@ -638,7 +619,7 @@
             
             UIImage *image;
             
-            if (self.sourceDirectory == sorceDirectoryLocal) {
+            if (_sourceDirectoryLocal) {
                 
                 image = [CCGraphics createNewImageFrom:metadata.fileID directoryUser:directory fileNameTo:metadata.fileID fileNamePrint:metadata.fileNamePrint size:@"m" imageForUpload:NO typeFile:metadata.typeFile writePreview:NO optimizedFileName:[CCUtility getOptimizedPhoto]];
                 
@@ -669,7 +650,7 @@
     CCMetadata *metadata = [self.dataSourceImagesVideos objectAtIndex:index];
     if (metadata == nil) return;
     
-    if (self.sourceDirectory == sorceDirectoryLocal) {
+    if (_sourceDirectoryLocal) {
         
         filePath = [NSString stringWithFormat:@"%@/%@", self.metadataDetail.directoryID, self.metadataDetail.fileNamePrint];
         
@@ -857,7 +838,7 @@
 {
     NSString *fileName;
     
-    if (self.sourceDirectory == sorceDirectoryLocal) {
+    if (_sourceDirectoryLocal) {
         
         fileName = [NSString stringWithFormat:@"%@/%@", self.metadataDetail.directoryID, self.metadataDetail.fileNamePrint];
         
@@ -1029,7 +1010,7 @@
     
     if ([self.metadataDetail.fileNamePrint length] == 0) return;
     
-    if (self.sourceDirectory == sorceDirectoryLocal) {
+    if (_sourceDirectoryLocal) {
         
         filePath = [NSString stringWithFormat:@"%@/%@", self.metadataDetail.directoryID, self.metadataDetail.fileNamePrint];
         

+ 0 - 1
iOSClient/Main/CCMain.m

@@ -5585,7 +5585,6 @@
     _detailViewController.metadataDetail = _metadataSegue;
     _detailViewController.dateFilterQuery = nil;
     _detailViewController.isCameraUpload = NO;
-    _detailViewController.sourceDirectory = sorceDirectoryAccount;
     
     [_detailViewController setTitle:_metadata.fileNamePrint];
 }

+ 3 - 3
iOSClient/Main/Main.storyboard

@@ -96,7 +96,7 @@
         <scene sceneID="kWr-RF-gdq">
             <objects>
                 <collectionViewController extendedLayoutIncludesOpaqueBars="YES" id="1Ca-6H-d29" customClass="CCPhotosCameraUpload" sceneMemberID="viewController">
-                    <collectionView key="view" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" misplaced="YES" dataMode="prototypes" id="zkC-IW-U7O">
+                    <collectionView key="view" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" dataMode="prototypes" id="zkC-IW-U7O">
                         <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
@@ -468,7 +468,7 @@
                 <navigationController extendedLayoutIncludesOpaqueBars="YES" automaticallyAdjustsScrollViewInsets="NO" id="hwM-4d-Afb" sceneMemberID="viewController">
                     <tabBarItem key="tabBarItem" title="Offline" image="tabBarOffline" id="o09-67-hwf"/>
                     <toolbarItems/>
-                    <navigationBar key="navigationBar" contentMode="scaleToFill" misplaced="YES" id="MJw-Bn-5le">
+                    <navigationBar key="navigationBar" contentMode="scaleToFill" id="MJw-Bn-5le">
                         <rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
                         <autoresizingMask key="autoresizingMask"/>
                     </navigationBar>
@@ -539,7 +539,7 @@
                 <navigationController extendedLayoutIncludesOpaqueBars="YES" automaticallyAdjustsScrollViewInsets="NO" id="Npr-vu-PSD" sceneMemberID="viewController">
                     <tabBarItem key="tabBarItem" title="Photos" image="tabBarPhotos" id="5cw-bP-7It"/>
                     <toolbarItems/>
-                    <navigationBar key="navigationBar" contentMode="scaleToFill" misplaced="YES" id="ixg-Pw-TNO">
+                    <navigationBar key="navigationBar" contentMode="scaleToFill" id="ixg-Pw-TNO">
                         <rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
                         <autoresizingMask key="autoresizingMask"/>
                     </navigationBar>

+ 32 - 10
iOSClient/Offline/CCOfflinePageContent.m

@@ -455,23 +455,45 @@
     
     if ([viewController isKindOfClass:[UINavigationController class]]) {
         UINavigationController *nav = viewController;
-        self.detailViewController = (CCDetail *)nav.topViewController;
+        _detailViewController = (CCDetail *)nav.topViewController;
     } else {
-        self.detailViewController = segue.destinationViewController;
+        _detailViewController = segue.destinationViewController;
     }
     
-    self.detailViewController.metadataDetail = _metadata;
+    NSMutableArray *allRecordsDataSourceImagesVideos = [NSMutableArray new];
     
-    if ([self.pageType isEqualToString:pageOfflineOffline])
-        self.detailViewController.sourceDirectory = sorceDirectoryOffline;
+    if ([self.pageType isEqualToString:pageOfflineOffline]) {
+        
+        for (CCMetadata *metadata in dataSource) {
+            if ([metadata.typeFile isEqualToString:metadataTypeFile_image] || [metadata.typeFile isEqualToString:metadataTypeFile_video])
+                [allRecordsDataSourceImagesVideos addObject:metadata];
+        }
+    }
     
-    if ([self.pageType isEqualToString:pageOfflineLocal])
-        self.detailViewController.sourceDirectory = sorceDirectoryLocal;
+    if ([self.pageType isEqualToString:pageOfflineLocal]) {
+        
+        NSString *cameraFolderName = [CCCoreData getCameraUploadFolderNameActiveAccount:app.activeAccount];
+        NSString *cameraFolderPath = [CCCoreData getCameraUploadFolderPathActiveAccount:app.activeAccount activeUrl:app.activeUrl typeCloud:app.typeCloud];
+        
+        for (NSString *fileName in dataSource) {
+            
+            CCMetadata *metadata = [CCMetadata new];
+            metadata = [CCUtility insertFileSystemInMetadata:fileName directory:_localServerUrl activeAccount:app.activeAccount cameraFolderName:cameraFolderName cameraFolderPath:cameraFolderPath];
+            
+            if ([metadata.typeFile isEqualToString:metadataTypeFile_image] || [metadata.typeFile isEqualToString:metadataTypeFile_video])
+                [allRecordsDataSourceImagesVideos addObject:metadata];
+        }
+        
+        _detailViewController.sourceDirectoryLocal = YES;
+    }
     
-    self.detailViewController.dateFilterQuery = nil;
-    self.detailViewController.isCameraUpload = NO;
+    _detailViewController.metadataDetail = _metadata;
+    _detailViewController.dateFilterQuery = nil;
+    _detailViewController.isCameraUpload = NO;
+    _detailViewController.dataSourceImagesVideos = allRecordsDataSourceImagesVideos;
+
     
-    [self.detailViewController setTitle:_metadata.fileNamePrint];
+    [_detailViewController setTitle:_metadata.fileNamePrint];
 }
 
 @end

+ 0 - 1
iOSClient/PhotosCameraUpload/CCPhotosCameraUpload.m

@@ -779,7 +779,6 @@
     self.detailViewController.metadataDetail = _metadata;
     self.detailViewController.dateFilterQuery = _metadata.date;
     self.detailViewController.isCameraUpload = YES;
-    self.detailViewController.sourceDirectory = sorceDirectoryAccount;
     
     [self.detailViewController setTitle:_metadata.fileNamePrint];
 }