DashboardNetworking.swift 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. //
  2. // DashboardNetworking.swift
  3. // Widget
  4. //
  5. // Created by Marino Faggiana on 22/08/22.
  6. // Copyright © 2022 Marino Faggiana. All rights reserved.
  7. //
  8. // Author Marino Faggiana <marino.faggiana@nextcloud.com>
  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 Foundation
  24. import NextcloudKit
  25. let dashboardDatasTest: [DashboardData] = [
  26. .init(id: 0, image: "nextcloud", title: "title 1", subTitle: "subTitle - description 1", url: URL(string: "https://nextcloud.com/")!),
  27. .init(id: 1, image: "nextcloud", title: "title 2", subTitle: "subTitle - description 2", url: URL(string: "https://nextcloud.com/")!),
  28. .init(id: 2, image: "nextcloud", title: "title 3", subTitle: "subTitle - description 3", url: URL(string: "https://nextcloud.com/")!),
  29. .init(id: 3, image: "nextcloud", title: "title 4", subTitle: "subTitle - description 4", url: URL(string: "https://nextcloud.com/")!),
  30. .init(id: 4, image: "nextcloud", title: "title 5", subTitle: "subTitle - description 5", url: URL(string: "https://nextcloud.com/")!)
  31. ]
  32. func readDashboard(completion: @escaping (_ dashboardData: [DashboardData], _ isPlaceholder: Bool, _ title: String, _ items: Int) -> Void) {
  33. guard let account = NCManageDatabase.shared.getActiveAccount() else {
  34. return completion(dashboardDatasTest, true, getTitle(account: nil), 0)
  35. }
  36. // LOG
  37. let levelLog = CCUtility.getLogLevel()
  38. let isSimulatorOrTestFlight = NCUtility.shared.isSimulatorOrTestFlight()
  39. let versionNextcloudiOS = String(format: NCBrandOptions.shared.textCopyrightNextcloudiOS, NCUtility.shared.getVersionApp())
  40. NKCommon.shared.levelLog = levelLog
  41. if let pathDirectoryGroup = CCUtility.getDirectoryGroup()?.path {
  42. NKCommon.shared.pathLog = pathDirectoryGroup
  43. }
  44. if isSimulatorOrTestFlight {
  45. NKCommon.shared.writeLog("Start Dashboard widget session with level \(levelLog) " + versionNextcloudiOS + " (Simulator / TestFlight)")
  46. } else {
  47. NKCommon.shared.writeLog("Start Dashboard widget session with level \(levelLog) " + versionNextcloudiOS)
  48. }
  49. NKCommon.shared.writeLog("Start Dashboard widget [Auto upload]")
  50. NCAutoUpload.shared.initAutoUpload(viewController: nil) { items in
  51. completion(dashboardDatasTest, false, getTitle(account: account), items)
  52. NKCommon.shared.writeLog("Completition Dashboard widget [Auto upload]")
  53. }
  54. }