annotate LazyBear/Global functions/ConvertEpoch.swift @ 448:f71761f166f2

Handle when data is empty
author Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
date Wed, 23 Jun 2021 11:47:14 +0200
parents c804ce7a1560
children b560babcd5ed
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
321
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
1 //
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
2 // ConvertEpoch.swift
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
3 // LazyBear
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
4 //
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 28/3/21.
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
6 //
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
7
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
8 import SwiftUI
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
9
407
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
10 /*
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
11 Convert Epoch time (in miliseconds) to human readable date
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
12 */
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
13 func convertEpoch(_ miliseconds: Int, _ interval: Bool) -> String {
321
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
14 let now = Date() // Current date
407
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
15
321
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
16 // TimeInterval() function must be in seconds, not in miliseconds
407
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
17 let convertedDate = Date(timeIntervalSince1970: TimeInterval(miliseconds/1000))
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
18
321
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
19 let formatter = DateComponentsFormatter()
448
f71761f166f2 Handle when data is empty
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 407
diff changeset
20 formatter.unitsStyle = .short
407
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
21
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
22 let dateFormatter = DateFormatter()
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
23 dateFormatter.dateStyle = .medium
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
24
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
25 var humanDate = String()
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
26 if interval {
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
27 humanDate = formatter.string(from: convertedDate, to: now)!
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
28 } else {
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
29 humanDate = dateFormatter.string(from: convertedDate)
c804ce7a1560 Implementing Insider networking
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 321
diff changeset
30 }
321
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
31
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
32 return humanDate
8f8d5ad3dfa0 Preparing backend requests
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
33 }