CCManageCameraUpload.m 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491
  1. //
  2. // CCManageCameraUpload.m
  3. // Crypto Cloud Technology Nextcloud
  4. //
  5. // Created by Marino Faggiana on 01/09/15.
  6. // Copyright (c) 2014 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. @implementation CCManageCameraUpload
  26. // From Settings
  27. - (id)initWithCoder:(NSCoder *)aDecoder
  28. {
  29. if (self = [super initWithCoder:aDecoder]) {
  30. [self initializeForm];
  31. }
  32. return self;
  33. }
  34. // From Photos
  35. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
  36. {
  37. self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  38. if (self) {
  39. UIBarButtonItem *doneButton = [[UIBarButtonItem alloc ] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(done:)];
  40. self.navigationItem.rightBarButtonItem = doneButton;
  41. [self initializeForm];
  42. }
  43. return self;
  44. }
  45. - (void)initializeForm
  46. {
  47. XLFormDescriptor *form ;
  48. XLFormSectionDescriptor *section;
  49. XLFormRowDescriptor *row;
  50. form = [XLFormDescriptor formDescriptorWithTitle:NSLocalizedString(@"_uploading_from_camera_", nil)];
  51. // Camera Upload
  52. section = [XLFormSectionDescriptor formSection];
  53. [form addFormSection:section];
  54. section.footerTitle = NSLocalizedString(@"_photo_folder_photocamera_", nil);
  55. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"cameraupload" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_camera_", nil)];
  56. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) row.value = @1;
  57. else row.value = @0;
  58. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  59. [section addFormRow:row];
  60. // Camera Upload Photo
  61. section = [XLFormSectionDescriptor formSection];
  62. [form addFormSection:section];
  63. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadphoto" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_foto_camera_", nil)];
  64. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  65. if ([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount]) row.value = @1;
  66. else row.value = @0;
  67. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  68. [section addFormRow:row];
  69. if (app.isCryptoCloudMode) {
  70. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadcryptatedphoto" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_encry_camup_", nil)];
  71. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  72. if ([CCCoreData getCameraUploadCryptatedPhotoActiveAccount:app.activeAccount] == YES) row.value = @1;
  73. else row.value = @0;
  74. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  75. [section addFormRow:row];
  76. }
  77. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadwwanphoto" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_wifi_only_", nil)];
  78. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  79. if ([CCCoreData getCameraUploadWWanPhotoActiveAccount:app.activeAccount] == YES) row.value = @1;
  80. else row.value = @0;
  81. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  82. [section addFormRow:row];
  83. // Camera Upload Video
  84. section = [XLFormSectionDescriptor formSection];
  85. [form addFormSection:section];
  86. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadvideo" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_video_camera_", nil)];
  87. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  88. if ([CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount]) row.value = @1;
  89. else row.value = @0;
  90. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  91. [section addFormRow:row];
  92. if (app.isCryptoCloudMode) {
  93. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadcryptatedvideo" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_encry_camup_", nil)];
  94. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  95. if ([CCCoreData getCameraUploadCryptatedVideoActiveAccount:app.activeAccount] == YES) row.value = @1;
  96. else row.value = @0;
  97. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  98. [section addFormRow:row];
  99. }
  100. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadwwanvideo" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_wifi_only_", nil)];
  101. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  102. if ([CCCoreData getCameraUploadWWanVideoActiveAccount:app.activeAccount] == YES) row.value = @1;
  103. else row.value = @0;
  104. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  105. [section addFormRow:row];
  106. // Camera Upload Background
  107. section = [XLFormSectionDescriptor formSection];
  108. [form addFormSection:section];
  109. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadbackground" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_camera_background_", nil)];
  110. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  111. if ([CCCoreData getCameraUploadBackgroundActiveAccount:app.activeAccount]) row.value = @1;
  112. else row.value = @0;
  113. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  114. [section addFormRow:row];
  115. // Camera Upload All Photo
  116. section = [XLFormSectionDescriptor formSection];
  117. [form addFormSection:section];
  118. NSString *title = NSLocalizedString(@"_upload_camera_fullphotos_", nil);
  119. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadallphotos" rowType:XLFormRowDescriptorTypeBooleanSwitch title:title];
  120. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  121. row.value = 0;
  122. if ([CCCoreData getCameraUploadFullPhotosActiveAccount:app.activeAccount]) row.value = @1;
  123. else row.value = @0;
  124. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  125. [section addFormRow:row];
  126. // Camera Upload create subfolder
  127. section = [XLFormSectionDescriptor formSection];
  128. [form addFormSection:section];
  129. row = [XLFormRowDescriptor formRowDescriptorWithTag:@"camerauploadcreatesubfolder" rowType:XLFormRowDescriptorTypeBooleanSwitch title:NSLocalizedString(@"_upload_camera_create_subfolder_", nil)];
  130. row.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  131. if ([CCCoreData getCameraUploadCreateSubfolderActiveAccount:app.activeAccount]) row.value = @1;
  132. else row.value = @0;
  133. [row.cellConfig setObject:[UIFont systemFontOfSize:15.0]forKey:@"textLabel.font"];
  134. [section addFormRow:row];
  135. // end
  136. section = [XLFormSectionDescriptor formSection];
  137. [form addFormSection:section];
  138. self.form = form;
  139. }
  140. // Apparirà
  141. - (void)viewWillAppear:(BOOL)animated
  142. {
  143. [super viewWillAppear:animated];
  144. self.tableView.backgroundColor = COLOR_TABLE_BACKGROUND;
  145. // Color
  146. [CCAspect aspectNavigationControllerBar:self.navigationController.navigationBar encrypted:NO online:[app.reachability isReachable] hidden:NO];
  147. [CCAspect aspectTabBar:self.tabBarController.tabBar hidden:NO];
  148. // Request permission for camera roll access
  149. [PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status) {
  150. switch (status) {
  151. case PHAuthorizationStatusRestricted:
  152. NSLog(@"[LOG] user can't grant access to camera roll");
  153. break;
  154. case PHAuthorizationStatusDenied:
  155. NSLog(@"[LOG] user denied access to camera roll");
  156. break;
  157. default:
  158. break;
  159. }
  160. }];
  161. [self reloadForm];
  162. }
  163. -(void)formRowDescriptorValueHasChanged:(XLFormRowDescriptor *)rowDescriptor oldValue:(id)oldValue newValue:(id)newValue
  164. {
  165. [super formRowDescriptorValueHasChanged:rowDescriptor oldValue:oldValue newValue:newValue];
  166. if ([rowDescriptor.tag isEqualToString:@"cameraupload"]) {
  167. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  168. // Create Folder cameraUpload
  169. if (app.activeMain)
  170. [app.activeMain createFolderCameraUpload];
  171. [CCCoreData setCameraUpload:YES activeAccount:app.activeAccount];
  172. // Default
  173. [CCCoreData setCameraUploadFolderName:nil activeAccount:app.activeAccount];
  174. [CCCoreData setCameraUploadFolderPath:nil activeUrl:app.activeUrl activeAccount:app.activeAccount];
  175. // verifichiamo che almeno uno dei servizi (foto video) siano attivi, in caso contrario attiviamo le foto
  176. if ([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount] == NO && [CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount] == NO)
  177. [CCCoreData setCameraUploadPhoto:YES activeAccount:app.activeAccount];
  178. // Settings date
  179. if([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount])
  180. [CCCoreData setCameraUploadDatePhoto:[NSDate date]];
  181. if([CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount])
  182. [CCCoreData setCameraUploadDateVideo:[NSDate date]];
  183. } else {
  184. [CCCoreData setCameraUpload:NO activeAccount:app.activeAccount];
  185. [CCCoreData setCameraUploadFullPhotosActiveAccount:NO activeAccount:app.activeAccount];
  186. [CCCoreData setCameraUploadDatePhoto:NULL];
  187. [CCCoreData setCameraUploadDateVideo:NULL];
  188. // remove
  189. [app dropAutomaticUploadWithSelector:selectorUploadAutomatic];
  190. [app dropAutomaticUploadWithSelector:selectorUploadAutomaticAll];
  191. }
  192. // Initialize Camera Upload
  193. [[NSNotificationCenter defaultCenter] postNotificationName:@"initStateCameraUpload" object:nil];
  194. [self reloadForm];
  195. }
  196. if ([rowDescriptor.tag isEqualToString:@"camerauploadbackground"]) {
  197. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  198. BOOL isLocationIsEnabled = NO;
  199. if (app.activePhotosCameraUpload)
  200. [app.activePhotosCameraUpload checkIfLocationIsEnabled];
  201. if(isLocationIsEnabled == YES) {
  202. 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];
  203. [alertView show];
  204. [CCCoreData setCameraUploadBackground:YES activeAccount:app.activeAccount];
  205. } else {
  206. [self reloadForm];
  207. }
  208. } else {
  209. [CCCoreData setCameraUploadBackground:NO activeAccount:app.activeAccount];
  210. [[CCManageLocation sharedSingleton] stopSignificantChangeUpdates];
  211. }
  212. }
  213. if ([rowDescriptor.tag isEqualToString:@"camerauploadallphotos"]) {
  214. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  215. [[NSNotificationCenter defaultCenter] postNotificationName:@"setupCameraUploadFull" object:nil];
  216. [CCCoreData setCameraUploadFullPhotosActiveAccount:YES activeAccount:app.activeAccount];
  217. } else {
  218. [app dropAutomaticUploadWithSelector:selectorUploadAutomaticAll];
  219. [CCCoreData setCameraUploadFullPhotosActiveAccount:NO activeAccount:app.activeAccount];
  220. }
  221. }
  222. if ([rowDescriptor.tag isEqualToString:@"camerauploadphoto"]) {
  223. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  224. [CCCoreData setCameraUploadDatePhoto:[NSDate date]];
  225. } else {
  226. [CCCoreData setCameraUploadDatePhoto:NULL];
  227. }
  228. [CCCoreData setCameraUploadPhoto:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  229. }
  230. if ([rowDescriptor.tag isEqualToString:@"camerauploadcryptatedphoto"]) {
  231. [CCCoreData setCameraUploadCryptatedPhoto:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  232. }
  233. if ([rowDescriptor.tag isEqualToString:@"camerauploadwwanphoto"]) {
  234. [CCCoreData setCameraUploadWWanPhoto:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  235. }
  236. if ([rowDescriptor.tag isEqualToString:@"camerauploadvideo"]) {
  237. if ([[rowDescriptor.value valueData] boolValue] == YES) {
  238. [CCCoreData setCameraUploadDateVideo:[NSDate date]];
  239. } else {
  240. [CCCoreData setCameraUploadDateVideo:NULL];
  241. }
  242. [CCCoreData setCameraUploadVideo:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  243. }
  244. if ([rowDescriptor.tag isEqualToString:@"camerauploadcryptatedvideo"]) {
  245. [CCCoreData setCameraUploadCryptatedVideo:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  246. }
  247. if ([rowDescriptor.tag isEqualToString:@"camerauploadwwanvideo"]) {
  248. [CCCoreData setCameraUploadWWanVideo:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  249. }
  250. if ([rowDescriptor.tag isEqualToString:@"camerauploadcreatesubfolder"]) {
  251. [CCCoreData setCameraUploadCreateSubfolderActiveAccount:[[rowDescriptor.value valueData] boolValue] activeAccount:app.activeAccount];
  252. }
  253. }
  254. - (void)done:(XLFormRowDescriptor *)sender
  255. {
  256. [self dismissViewControllerAnimated:YES completion:nil];
  257. }
  258. - (void)reloadForm
  259. {
  260. self.form.delegate = nil;
  261. XLFormRowDescriptor *rowCameraupload = [self.form formRowWithTag:@"cameraupload"];
  262. XLFormRowDescriptor *rowCamerauploadphoto = [self.form formRowWithTag:@"camerauploadphoto"];
  263. XLFormRowDescriptor *rowCamerauploadcryptatedphoto = [self.form formRowWithTag:@"camerauploadcryptatedphoto"];
  264. XLFormRowDescriptor *rowCamerauploadwwanphoto = [self.form formRowWithTag:@"camerauploadwwanphoto"];
  265. XLFormRowDescriptor *rowCamerauploadvideo = [self.form formRowWithTag:@"camerauploadvideo"];
  266. XLFormRowDescriptor *rowCamerauploadcryptatedvideo = [self.form formRowWithTag:@"camerauploadcryptatedvideo"];
  267. XLFormRowDescriptor *rowCamerauploadwwanvideo = [self.form formRowWithTag:@"camerauploadwwanvideo"];
  268. XLFormRowDescriptor *rowCamerauploadBackground = [self.form formRowWithTag:@"camerauploadbackground"];
  269. XLFormRowDescriptor *rowCamerauploadAllPhotos = [self.form formRowWithTag:@"camerauploadallphotos"];
  270. XLFormRowDescriptor *rowCamerauploadCreateSubfolder = [self.form formRowWithTag:@"camerauploadcreatesubfolder"];
  271. // - STATUS ---------------------
  272. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount])
  273. [rowCameraupload setValue:@1]; else [rowCameraupload setValue:@0];
  274. if ([CCCoreData getCameraUploadPhotoActiveAccount:app.activeAccount])
  275. [rowCamerauploadphoto setValue:@1]; else [rowCamerauploadphoto setValue:@0];
  276. if ([CCCoreData getCameraUploadCryptatedPhotoActiveAccount:app.activeAccount])
  277. [rowCamerauploadcryptatedphoto setValue:@1]; else [rowCamerauploadcryptatedphoto setValue:@0];
  278. if ([CCCoreData getCameraUploadWWanPhotoActiveAccount:app.activeAccount])
  279. [rowCamerauploadwwanphoto setValue:@1]; else [rowCamerauploadwwanphoto setValue:@0];
  280. if ([CCCoreData getCameraUploadVideoActiveAccount:app.activeAccount])
  281. [rowCamerauploadvideo setValue:@1]; else [rowCamerauploadvideo setValue:@0];
  282. if ([CCCoreData getCameraUploadCryptatedVideoActiveAccount:app.activeAccount])
  283. [rowCamerauploadcryptatedvideo setValue:@1]; else [rowCamerauploadcryptatedvideo setValue:@0];
  284. if ([CCCoreData getCameraUploadWWanVideoActiveAccount:app.activeAccount])
  285. [rowCamerauploadwwanvideo setValue:@1]; else [rowCamerauploadwwanvideo setValue:@0];
  286. if ([CCCoreData getCameraUploadBackgroundActiveAccount:app.activeAccount])
  287. [rowCamerauploadBackground setValue:@1]; else [rowCamerauploadBackground setValue:@0];
  288. if ([CCCoreData getCameraUploadFullPhotosActiveAccount:app.activeAccount])
  289. [rowCamerauploadAllPhotos setValue:@1]; else [rowCamerauploadAllPhotos setValue:@0];
  290. if ([CCCoreData getCameraUploadCreateSubfolderActiveAccount:app.activeAccount])
  291. [rowCamerauploadCreateSubfolder setValue:@1]; else [rowCamerauploadCreateSubfolder setValue:@0];
  292. // - HIDDEN ---------------------
  293. rowCamerauploadphoto.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  294. rowCamerauploadcryptatedphoto.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  295. rowCamerauploadwwanphoto.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  296. rowCamerauploadvideo.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  297. rowCamerauploadcryptatedvideo.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  298. rowCamerauploadwwanvideo.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  299. rowCamerauploadBackground.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  300. rowCamerauploadAllPhotos.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  301. rowCamerauploadCreateSubfolder.hidden = [NSString stringWithFormat:@"$%@==0", @"cameraupload"];
  302. // ----------------------
  303. [self.tableView reloadData];
  304. self.form.delegate = self;
  305. }
  306. - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
  307. {
  308. NSString *sectionName;
  309. switch (section)
  310. {
  311. case 0:
  312. sectionName = NSLocalizedString(@"_uploading_from_camera_", nil);
  313. break;
  314. case 1:
  315. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = NSLocalizedString(@"_upload_automatic_photos_", nil);
  316. else sectionName = @"";
  317. break;
  318. case 2:
  319. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = NSLocalizedString(@"_upload_automatic_videos_", nil);
  320. else sectionName = @"";
  321. break;
  322. case 3:
  323. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = NSLocalizedString(@"_upload_camera_background_", nil);
  324. else sectionName = @"";
  325. break;
  326. case 4:
  327. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = NSLocalizedString(@"_upload_camera_fullphotos_", nil);
  328. else sectionName = @"";
  329. break;
  330. case 5:
  331. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = NSLocalizedString(@"_upload_camera_create_subfolder_", nil);
  332. else sectionName = @"";
  333. break;
  334. }
  335. return sectionName;
  336. }
  337. - (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
  338. {
  339. NSString *sectionName;
  340. switch (section)
  341. {
  342. case 0:
  343. sectionName = [CCUtility localizableBrand:@"_photo_folder_photocamera_" table:nil];
  344. break;
  345. case 2:
  346. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = [CCUtility localizableBrand:@"_upload_automatic_videos_footer_" table:nil ];
  347. else sectionName = @"";
  348. break;
  349. case 3:
  350. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = [CCUtility localizableBrand:@"_photo_folder_background_" table:nil];
  351. else sectionName = @"";
  352. break;
  353. case 4:
  354. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = [CCUtility localizableBrand:@"_upload_camera_fullphotos_footer_" table:nil];
  355. else sectionName = @"";
  356. break;
  357. case 5:
  358. if ([CCCoreData getCameraUploadActiveAccount:app.activeAccount]) sectionName = [CCUtility localizableBrand:@"_upload_camera_create_subfolder_footer_" table:nil];
  359. else sectionName = @"";
  360. break;
  361. }
  362. return sectionName;
  363. }
  364. @end