CCManageCameraUpload.m 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518
  1. //
  2. // CCManageCameraUpload.m
  3. // Crypto Cloud Technology Nextcloud
  4. //
  5. // Created by Marino Faggiana on 01/09/15.
  6. // Copyright (c) 2017 TWS. All rights reserved.
  7. //
  8. // Author Marino Faggiana <m.faggiana@twsweb.it>
  9. //
  10. // This program is free software: you can redistribute it and/or modify
  11. // it under the terms of the GNU General Public License as published by
  12. // the Free Software Foundation, either version 3 of the License, or
  13. // (at your option) any later version.
  14. //
  15. // This program is distributed in the hope that it will be useful,
  16. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. // GNU General Public License for more details.
  19. //
  20. // You should have received a copy of the GNU General Public License
  21. // along with this program. If not, see <http://www.gnu.org/licenses/>.
  22. //
  23. #import "CCManageCameraUpload.h"
  24. #import "AppDelegate.h"
  25. #import "NCBridgeSwift.h"
  26. @implementation CCManageCameraUpload
  27. // From Settings
  28. - (id)initWithCoder:(NSCoder *)aDecoder
  29. {
  30. if (self = [super initWithCoder:aDecoder]) {
  31. [self initializeForm];
  32. }
  33. return self;
  34. }
  35. // From Photos
  36. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  37. {
  38. self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  39. if (self) {
  40. UIBarButtonItem *doneButton = [[UIBarButtonItem alloc ] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(done:)];
  41. self.navigationItem.rightBarButtonItem = doneButton;
  42. [self initializeForm];
  43. }
  44. return self;
  45. }
  46. - (void)initializeForm
  47. {
  48. XLFormDescriptor *form ;
  49. XLFormSectionDescriptor *section;
  50. XLFormRowDescriptor *row;
  51. tableAccount *tableAccount = [[NCManageDatabase sharedInstance] getAccountActive];
  52. [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changeTheming) name:@"changeTheming" object:nil];
  53. form = [XLFormDescriptor formDescriptorWithTitle:NSLocalizedString(@"_uploading_from_camera_", nil)];
  54. // Camera Upload
  55. section = [XLFormSectionDescriptor formSection];
  56. [form addFormSection:section];
  57. section.footerTitle = NSLocalizedString(@"_photo_folder_photocamera_", nil);
  58. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"cameraupload" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_camera_", nil)];
  59. if (tableAccount.cameraUpload) row.value = @1;
  60. //if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) row.value = @1;
  61. else row.value = @0;
  62. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  63. [section addFormRow:row];
  64. // Camera Upload Photo
  65. section = [XLFormSectionDescriptor formSection];
  66. [form addFormSection:section];
  67. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadphoto" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_foto_camera_", nil)];
  68. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  69. //if ([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount]) row.value = @1;
  70. if (tableAccount.cameraUploadPhoto) row.value = @1;
  71. else row.value = @0;
  72. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  73. [section addFormRow:row];
  74. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadwwanphoto" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_wifi_only_", nil)];
  75. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  76. //if ([CCCoreData getCameraUploadWWanPhotoActiveAccount:app.activeAccount] == YES) row.value = @1;
  77. if (tableAccount.cameraUploadWWAnPhoto) row.value = @1;
  78. else row.value = @0;
  79. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  80. [section addFormRow:row];
  81. // Camera Upload Video
  82. section = [XLFormSectionDescriptor formSection];
  83. [form addFormSection:section];
  84. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadvideo" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_video_camera_", nil)];
  85. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  86. //if ([CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount]) row.value = @1;
  87. if (tableAccount.cameraUploadVideo) row.value = @1;
  88. else row.value = @0;
  89. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  90. [section addFormRow:row];
  91. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadwwanvideo" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_wifi_only_", nil)];
  92. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  93. //if ([CCCoreData getCameraUploadWWanVideoActiveAccount:app.activeAccount] == YES) row.value = @1;
  94. if (tableAccount.cameraUploadWWAnVideo) row.value = @1;
  95. else row.value = @0;
  96. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  97. [section addFormRow:row];
  98. // Camera Upload Background
  99. section = [XLFormSectionDescriptor formSection];
  100. [form addFormSection:section];
  101. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadbackground" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_camera_background_", nil)];
  102. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  103. //if ([CCCoreData getCameraUploadBackgroundActiveAccount:app.activeAccount]) row.value = @1;
  104. if (tableAccount.cameraUploadBackground) row.value = @1;
  105. else row.value = @0;
  106. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  107. [section addFormRow:row];
  108. // Camera Upload All Photo
  109. section = [XLFormSectionDescriptor formSection];
  110. [form addFormSection:section];
  111. NSString *title = NSLocalizedString(@"_upload_camera_fullphotos_", nil);
  112. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadallphotos" rowType:XLFormRowDescriptorTypeBooleanSwitch title:title];
  113. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  114. row.value = 0;
  115. //if ([CCCoreData getCameraUploadFullPhotosActiveAccount:app.activeAccount]) row.value = @1;
  116. if (tableAccount.cameraUploadFull) row.value = @1;
  117. else row.value = @0;
  118. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  119. [section addFormRow:row];
  120. // Camera Upload create subfolder
  121. section = [XLFormSectionDescriptor formSection];
  122. [form addFormSection:section];
  123. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadcreatesubfolder" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_camera_create_subfolder_", nil)];
  124. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  125. //if ([CCCoreData getCameraUploadCreateSubfolderActiveAccount:app.activeAccount]) row.value = @1;
  126. if (tableAccount.cameraUploadCreateSubfolder) row.value = @1;
  127. else row.value = @0;
  128. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  129. [section addFormRow:row];
  130. // end
  131. section = [XLFormSectionDescriptor formSection];
  132. [form addFormSection:section];
  133. self.form = form;
  134. }
  135. // Apparirà
  136. - (void)viewWillAppear:(BOOL)animated
  137. {
  138. [super viewWillAppear:animated];
  139. self.tableView.backgroundColor = [NCBrandColor sharedInstance].tableBackground;
  140. // Color
  141. [app aspectNavigationControllerBar:self.navigationController.navigationBar encrypted:NO online:[app.reachability isReachable] hidden:NO];
  142. [app aspectTabBar:self.tabBarController.tabBar hidden:NO];
  143. // Request permission for camera roll access
  144. [PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status) {
  145. switch (status) {
  146. case PHAuthorizationStatusRestricted:
  147. NSLog(@"[LOG] user can't grant access to camera roll");
  148. break;
  149. case PHAuthorizationStatusDenied:
  150. NSLog(@"[LOG] user denied access to camera roll");
  151. break;
  152. default:
  153. break;
  154. }
  155. }];
  156. [self reloadForm];
  157. }
  158. - (void)changeTheming
  159. {
  160. if (self.isViewLoaded && self.view.window)
  161. [app changeTheming:self];
  162. }
  163. -(void)formRowDescriptorValueHasChanged:(XLFormRowDescriptor *)rowDescriptor oldValue:(id)oldValue newValue:(id)newValue
  164. {
  165. [super formRowDescriptorValueHasChanged:rowDescriptor oldValue:oldValue newValue:newValue];
  166. tableAccount *tableAccount = [[NCManageDatabase sharedInstance] getAccountActive];
  167. if ([rowDescriptor.tag isEqualToString:@"cameraupload"]) {
  168. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  169. // Create Folder cameraUpload
  170. if (app.activeMain)
  171. [app.activeMain createFolderCameraUpload];
  172. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUpload" state:YES];
  173. //[CCCoreData setCameraUpload:YES activeAccount:app.activeAccount];
  174. // Default
  175. //[CCCoreData setCameraUploadFolderName:nil activeAccount:app.activeAccount];
  176. //[CCCoreData setCameraUploadFolderPath:nil activeUrl:app.activeUrl activeAccount:app.activeAccount];
  177. [[NCManageDatabase sharedInstance] setAccountsCameraUploadFolderNameWithFolderName:nil];
  178. [[NCManageDatabase sharedInstance] setAccountsCameraUploadFolderPathWithPathName:nil activeUrl:app.activeUrl];
  179. // verifichiamo che almeno uno dei servizi (foto video) siano attivi, in caso contrario attiviamo le foto
  180. //if ([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount] == NO && [CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount] == NO)
  181. if (tableAccount.cameraUploadPhoto == NO && tableAccount.cameraUploadVideo == NO)
  182. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadPhoto" state:YES];
  183. //[CCCoreData setCameraUploadPhoto:YES activeAccount:app.activeAccount];
  184. // Settings date
  185. //if([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount])
  186. if (tableAccount.cameraUploadPhoto)
  187. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeImage assetDate:[NSDate date]];
  188. //[CCCoreData setCameraUploadDatePhoto:[NSDate date]];
  189. //if([CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount])
  190. if (tableAccount.cameraUploadVideo)
  191. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeVideo assetDate:[NSDate date]];
  192. //[CCCoreData setCameraUploadDateVideo:[NSDate date]];
  193. } else {
  194. //[CCCoreData setCameraUpload:NO activeAccount:app.activeAccount];
  195. //[CCCoreData setCameraUploadFullPhotosActiveAccount:NO activeAccount:app.activeAccount];
  196. //[CCCoreData setCameraUploadDatePhoto:NULL];
  197. //[CCCoreData setCameraUploadDateVideo:NULL];
  198. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUpload" state:NO];
  199. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadFull" state:NO];
  200. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeImage assetDate:nil];
  201. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeVideo assetDate:nil];
  202. // remove
  203. [[NCManageDatabase sharedInstance] clearTable:[tableAutomaticUpload class] account:app.activeAccount];
  204. }
  205. // Initialize Camera Upload
  206. [[NSNotificationCenter defaultCenter] postNotificationName:@"initStateCameraUpload" object:nil];
  207. [self reloadForm];
  208. }
  209. if ([rowDescriptor.tag isEqualToString:@"camerauploadbackground"]) {
  210. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  211. BOOL isLocationIsEnabled = NO;
  212. if (app.activePhotosCameraUpload)
  213. [app.activePhotosCameraUpload checkIfLocationIsEnabled];
  214. if(isLocationIsEnabled == YES) {
  215. UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"_cameraupload_background_title_", nil) message:[CCUtility localizableBrand:@"_cameraupload_background_msg_" table:nil] delegate:nil cancelButtonTitle:nil otherButtonTitles:NSLocalizedString(@"_ok_", nil), nil];
  216. [alertView show];
  217. //[CCCoreData setCameraUploadBackground:YES activeAccount:app.activeAccount];
  218. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadBackground" state:YES];
  219. } else {
  220. [self reloadForm];
  221. }
  222. } else {
  223. //[CCCoreData setCameraUploadBackground:NO activeAccount:app.activeAccount];
  224. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadBackground" state:NO];
  225. [[CCManageLocation sharedInstance] stopSignificantChangeUpdates];
  226. }
  227. }
  228. if ([rowDescriptor.tag isEqualToString:@"camerauploadallphotos"]) {
  229. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  230. [[NSNotificationCenter defaultCenter] postNotificationName:@"setupCameraUploadFull" object:nil];
  231. //[CCCoreData setCameraUploadFullPhotosActiveAccount:YES activeAccount:app.activeAccount];
  232. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadFull" state:YES];
  233. } else {
  234. [[NCManageDatabase sharedInstance] clearTable:[tableAutomaticUpload class] account:app.activeAccount];
  235. //[CCCoreData setCameraUploadFullPhotosActiveAccount:NO activeAccount:app.activeAccount];
  236. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadFull" state:NO];
  237. }
  238. }
  239. if ([rowDescriptor.tag isEqualToString:@"camerauploadphoto"]) {
  240. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  241. //[CCCoreData setCameraUploadDatePhoto:[NSDate date]];
  242. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeImage assetDate:[NSDate date]];
  243. } else {
  244. //[CCCoreData setCameraUploadDatePhoto:NULL];
  245. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeImage assetDate:nil];
  246. }
  247. //[CCCoreData setCameraUploadPhoto:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  248. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadPhoto" state:[[rowDescriptor.value valueData] boolValue]];
  249. }
  250. if ([rowDescriptor.tag isEqualToString:@"camerauploadwwanphoto"]) {
  251. //[CCCoreData setCameraUploadWWanPhoto:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  252. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadWWAnPhoto" state:[[rowDescriptor.value valueData] boolValue]];
  253. }
  254. if ([rowDescriptor.tag isEqualToString:@"camerauploadvideo"]) {
  255. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  256. // [CCCoreData setCameraUploadDateVideo:[NSDate date]];
  257. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeVideo assetDate:[NSDate date]];
  258. } else {
  259. //[CCCoreData setCameraUploadDateVideo:NULL];
  260. [[NCManageDatabase sharedInstance] setAccountsCameraUploadDateAssetTypeWithAssetMediaType:PHAssetMediaTypeVideo assetDate:nil];
  261. }
  262. //[CCCoreData setCameraUploadVideo:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  263. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadVideo" state:[[rowDescriptor.value valueData] boolValue]];
  264. }
  265. if ([rowDescriptor.tag isEqualToString:@"camerauploadwwanvideo"]) {
  266. //[CCCoreData setCameraUploadWWanVideo:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  267. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadWWAnVideo" state:[[rowDescriptor.value valueData] boolValue]];
  268. }
  269. if ([rowDescriptor.tag isEqualToString:@"camerauploadcreatesubfolder"]) {
  270. // [CCCoreData setCameraUploadCreateSubfolderActiveAccount:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  271. [[NCManageDatabase sharedInstance] setAccountCameraStateFiledWithField:@"cameraUploadCreateSubfolder" state:[[rowDescriptor.value valueData] boolValue]];
  272. }
  273. }
  274. - (void)done:(XLFormRowDescriptor *)sender
  275. {
  276. [self dismissViewControllerAnimated:YES completion:nil];
  277. }
  278. - (void)reloadForm
  279. {
  280. self.form.delegate = nil;
  281. XLFormRowDescriptor *rowCameraupload = [self.form formRowWithTag:@"cameraupload"];
  282. XLFormRowDescriptor *rowCamerauploadphoto = [self.form formRowWithTag:@"camerauploadphoto"];
  283. XLFormRowDescriptor *rowCamerauploadcryptatedphoto = [self.form formRowWithTag:@"camerauploadcryptatedphoto"];
  284. XLFormRowDescriptor *rowCamerauploadwwanphoto = [self.form formRowWithTag:@"camerauploadwwanphoto"];
  285. XLFormRowDescriptor *rowCamerauploadvideo = [self.form formRowWithTag:@"camerauploadvideo"];
  286. XLFormRowDescriptor *rowCamerauploadcryptatedvideo = [self.form formRowWithTag:@"camerauploadcryptatedvideo"];
  287. XLFormRowDescriptor *rowCamerauploadwwanvideo = [self.form formRowWithTag:@"camerauploadwwanvideo"];
  288. XLFormRowDescriptor *rowCamerauploadBackground = [self.form formRowWithTag:@"camerauploadbackground"];
  289. XLFormRowDescriptor *rowCamerauploadAllPhotos = [self.form formRowWithTag:@"camerauploadallphotos"];
  290. XLFormRowDescriptor *rowCamerauploadCreateSubfolder = [self.form formRowWithTag:@"camerauploadcreatesubfolder"];
  291. // - STATUS ---------------------
  292. tableAccount *tableAccount = [[NCManageDatabase sharedInstance] getAccountActive];
  293. //if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount])
  294. if (tableAccount.cameraUpload)
  295. [rowCameraupload setValue:@1]; else [rowCameraupload setValue:@0];
  296. //if ([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount])
  297. if (tableAccount.cameraUploadPhoto)
  298. [rowCamerauploadphoto setValue:@1]; else [rowCamerauploadphoto setValue:@0];
  299. //if ([CCCoreData getCameraUploadWWanPhotoActiveAccount:app.activeAccount])
  300. if (tableAccount.cameraUploadWWAnPhoto)
  301. [rowCamerauploadwwanphoto setValue:@1]; else [rowCamerauploadwwanphoto setValue:@0];
  302. //if ([CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount])
  303. if (tableAccount.cameraUploadVideo)
  304. [rowCamerauploadvideo setValue:@1]; else [rowCamerauploadvideo setValue:@0];
  305. //if ([CCCoreData getCameraUploadWWanVideoActiveAccount:app.activeAccount])
  306. if (tableAccount.cameraUploadWWAnVideo)
  307. [rowCamerauploadwwanvideo setValue:@1]; else [rowCamerauploadwwanvideo setValue:@0];
  308. //if ([CCCoreData getCameraUploadBackgroundActiveAccount:app.activeAccount])
  309. if (tableAccount.cameraUploadBackground)
  310. [rowCamerauploadBackground setValue:@1]; else [rowCamerauploadBackground setValue:@0];
  311. //if ([CCCoreData getCameraUploadFullPhotosActiveAccount:app.activeAccount])
  312. if (tableAccount.cameraUploadFull)
  313. [rowCamerauploadAllPhotos setValue:@1]; else [rowCamerauploadAllPhotos setValue:@0];
  314. //if ([CCCoreData getCameraUploadCreateSubfolderActiveAccount:app.activeAccount])
  315. if (tableAccount.cameraUploadCreateSubfolder)
  316. [rowCamerauploadCreateSubfolder setValue:@1]; else [rowCamerauploadCreateSubfolder setValue:@0];
  317. // - HIDDEN ---------------------
  318. rowCamerauploadphoto.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  319. rowCamerauploadcryptatedphoto.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  320. rowCamerauploadwwanphoto.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  321. rowCamerauploadvideo.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  322. rowCamerauploadcryptatedvideo.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  323. rowCamerauploadwwanvideo.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  324. rowCamerauploadBackground.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  325. rowCamerauploadAllPhotos.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  326. rowCamerauploadCreateSubfolder.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  327. // ----------------------
  328. [self.tableView reloadData];
  329. self.form.delegate = self;
  330. }
  331. - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
  332. {
  333. tableAccount *tableAccount = [[NCManageDatabase sharedInstance] getAccountActive];
  334. NSString *sectionName;
  335. switch (section)
  336. {
  337. case 0:
  338. sectionName = NSLocalizedString(@"_uploading_from_camera_", nil);
  339. break;
  340. case 1:
  341. if (tableAccount.cameraUpload) sectionName = NSLocalizedString(@"_upload_automatic_photos_", nil);
  342. else sectionName = @"";
  343. break;
  344. case 2:
  345. if (tableAccount.cameraUpload) sectionName = NSLocalizedString(@"_upload_automatic_videos_", nil);
  346. else sectionName = @"";
  347. break;
  348. case 3:
  349. if (tableAccount.cameraUpload) sectionName = NSLocalizedString(@"_upload_camera_background_", nil);
  350. else sectionName = @"";
  351. break;
  352. case 4:
  353. if (tableAccount.cameraUpload) sectionName = NSLocalizedString(@"_upload_camera_fullphotos_", nil);
  354. else sectionName = @"";
  355. break;
  356. case 5:
  357. if (tableAccount.cameraUpload) sectionName = NSLocalizedString(@"_upload_camera_create_subfolder_", nil);
  358. else sectionName = @"";
  359. break;
  360. }
  361. return sectionName;
  362. }
  363. - (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
  364. {
  365. tableAccount *tableAccount = [[NCManageDatabase sharedInstance] getAccountActive];
  366. NSString *sectionName;
  367. switch (section)
  368. {
  369. case 0:
  370. sectionName = [CCUtility localizableBrand:@"_photo_folder_photocamera_" table:nil];
  371. break;
  372. case 3:
  373. if (tableAccount.cameraUpload) sectionName = [CCUtility localizableBrand:@"_photo_folder_background_" table:nil];
  374. else sectionName = @"";
  375. break;
  376. case 4:
  377. if (tableAccount.cameraUpload) sectionName = [CCUtility localizableBrand:@"_upload_camera_fullphotos_footer_" table:nil];
  378. else sectionName = @"";
  379. break;
  380. case 5:
  381. if (tableAccount.cameraUpload) sectionName = [CCUtility localizableBrand:@"_upload_camera_create_subfolder_footer_" table:nil];
  382. else sectionName = @"";
  383. break;
  384. }
  385. return sectionName;
  386. }
  387. @end