Marino Faggiana %!s(int64=6) %!d(string=hai) anos
pai
achega
c52748d864

+ 8 - 3
iOSClient/Main/CCDetail.m

@@ -550,7 +550,7 @@
 
         if ([CCUtility fileProviderStorageExists:metadata.fileID fileName:metadata.fileNameView] == NO && metadataDB.status == k_metadataStatusNormal) {
             
-            if([[NSFileManager defaultManager] fileExistsAtPath:[CCUtility getDirectoryProviderStorageIconFileID:metadata.fileID fileNameView:metadata.fileNameView]] == NO) {
+            if ([[NSFileManager defaultManager] fileExistsAtPath:[CCUtility getDirectoryProviderStorageIconFileID:metadata.fileID fileNameView:metadata.fileNameView]] == NO) {
                 
                 NSString *serverUrl = [[NCManageDatabase sharedInstance] getServerUrl:metadata.directoryID];
                 
@@ -558,11 +558,16 @@
                 
                 [ocNetworking downloadPreviewWithfileID:metadata.fileID fileNamePath:[CCUtility returnFileNamePathFromFileName:metadata.fileName serverUrl:serverUrl activeUrl:appDelegate.activeUrl] fileNameView:metadata.fileNameView withWidth:appDelegate.activeDetail.view.frame.size.width andHeight:appDelegate.activeDetail.view.frame.size.width andA:1 andMode:@"cover" completion:^(NSString *message, NSInteger errorCode) {
                     
+                    if (([CCUtility getOptimizedPhoto] == YES && errorCode != 0) || [CCUtility getOptimizedPhoto] == NO) {
+                        [self downloadPhotoBrowser:metadata];
+                    }
                     [self.photoBrowser reloadData];
                 }];
             }
-            
-            [self downloadPhotoBrowser:metadata];
+        } else {
+            if ([CCUtility getOptimizedPhoto] == NO) {
+                [self downloadPhotoBrowser:metadata];
+            }
         }
     }
     

+ 15 - 0
iOSClient/Settings/CCAdvanced.m

@@ -77,6 +77,16 @@
     
     // Section OTTIMIZATIONS -------------------------------------------------
     
+    section = [XLFormSectionDescriptor formSection];
+    [form addFormSection:section];
+    section.footerTitle = NSLocalizedString(@"_optimized_photos_how_", nil);
+    
+    row = [XLFormRowDescriptor formRowDescriptorWithTag:@"optimizedphoto" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_optimized_photos_", nil)];
+    if ([CCUtility getOptimizedPhoto]) row.value = @"1";
+    else row.value = @"0";
+    [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
+    [section addFormRow:row];
+    
     section = [XLFormSectionDescriptor formSection];
     [form addFormSection:section];
     section.footerTitle = NSLocalizedString(@"_upload_del_photos_how_", nil);
@@ -194,6 +204,11 @@
         appDelegate.activeActivity.storeDateFirstActivity = nil;
     }
     
+    if ([rowDescriptor.tag isEqualToString:@"optimizedphoto"]) {
+        
+        [CCUtility setOptimizedPhoto:[[rowDescriptor.value valueData] boolValue]];
+    }
+    
     if ([rowDescriptor.tag isEqualToString:@"uploadremovephoto"]) {
         
         [CCUtility setUploadAndRemovePhoto:[[rowDescriptor.value valueData] boolValue]];

+ 1 - 1
iOSClient/Supporting Files/en.lproj/Localizable.strings

@@ -218,7 +218,7 @@
 
 "_optimized_photos_"            = "Optimized photo resolution";
 "_upload_del_photos_"           = "Remove files after upload";
-"_optimized_photos_how_"        = "If your device is low on space, full-resolution photos are automatically replaced with optimized versions. The full-resolution versions are stored in your Nextcloud.";
+"_optimized_photos_how_"        = "Download, if possible, a low-resolution photos.";
 "_upload_del_photos_how_"       = "Files will be removed from device memory after they’ve been uploaded to your cloud. They will remain in the camera roll. Just download the files to see them.";
 "_show_hidden_files_"           = "Show hidden files";
 "_format_compatibility_"        = "Most Compatible";

+ 3 - 0
iOSClient/Utility/CCUtility.h

@@ -70,6 +70,9 @@
 + (BOOL)getOnlyLockDir;
 + (void)setOnlyLockDir:(BOOL)lockDir;
 
++ (BOOL)getOptimizedPhoto;
++ (void)setOptimizedPhoto:(BOOL)resize;
+
 + (BOOL)getUploadAndRemovePhoto;
 + (void)setUploadAndRemovePhoto:(BOOL)remove;
 

+ 11 - 0
iOSClient/Utility/CCUtility.m

@@ -180,6 +180,17 @@
     [UICKeyChainStore setString:sLockDir forKey:@"onlylockdir" service:k_serviceShareKeyChain];
 }
 
++ (BOOL)getOptimizedPhoto
+{
+    return [[UICKeyChainStore stringForKey:@"optimizedphoto" service:k_serviceShareKeyChain] boolValue];
+}
+
++ (void)setOptimizedPhoto:(BOOL)resize
+{
+    NSString *sOptimizedPhoto = (resize) ? @"true" : @"false";
+    [UICKeyChainStore setString:sOptimizedPhoto forKey:@"optimizedphoto" service:k_serviceShareKeyChain];
+}
+
 + (BOOL)getUploadAndRemovePhoto
 {
     return [[UICKeyChainStore stringForKey:@"uploadremovephoto" service:k_serviceShareKeyChain] boolValue];