-
Notifications
You must be signed in to change notification settings - Fork 69
/
Copy pathEvent.swift
81 lines (77 loc) · 2.85 KB
/
Event.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//
// Event.swift
// FOSSAsia
//
// Created by Jurvis Tan on 29/1/16.
// Copyright © 2016 FossAsia. All rights reserved.
//
import Foundation
struct Event {
enum Track: Int, CustomStringConvertible {
case TechKids1 = 1
case TechKids2, OpenTechIOT, OpenTech, WebTech, Exhibition, HardwareIOT, Python, Databases, BigOpenData, DevOps, PrivSec, ISC, ScienceHackDay, Linux, Design
var description: String {
switch self {
case .TechKids1: return "Tech Kids I";
case .TechKids2: return "Tech Kids II";
case .OpenTechIOT: return "OpenTech and IOT";
case .OpenTech: return "OpenTech Workshops";
case .WebTech: return "WebTech";
case .Exhibition: return "Exhibition";
case .HardwareIOT: return "Hardware and IOT";
case .Python: return "Python";
case .Databases: return "Databases";
case .BigOpenData: return "Big Data/Open Data";
case .DevOps: return "DevOps";
case .PrivSec: return "Privacy and Security";
case .ISC: return "Internet, Society, Community";
case .ScienceHackDay: return "Science Hack Day";
case .Linux: return "Linux and MiniDebConf";
case .Design: return "Design, VR, 3D"
}
}
func getTrackColor() -> UIColor {
switch self {
case .TechKids1, .TechKids2:
return UIColor(hexString: "8E8E93")!
case .OpenTechIOT:
return UIColor(hexString: "FF4D4D")!
case .OpenTech:
return UIColor(hexString: "FF8E4C")!
case .WebTech:
return UIColor(hexString: "FFCF4C")!
case .Exhibition:
return UIColor(hexString: "EAFF4C")!
case .HardwareIOT:
return UIColor(hexString: "B8FF4C")!
case .Python:
return UIColor(hexString: "85FF4C")!
case .Databases:
return UIColor(hexString: "50E3C2")!
case .BigOpenData:
return UIColor(hexString: "4CFFE7")!
case .DevOps:
return UIColor(hexString: "4CDBFF")!
case .PrivSec:
return UIColor(hexString: "4CA9FF")!
case .ISC:
return UIColor(hexString: "7C4CFF")!
case .ScienceHackDay:
return UIColor(hexString: "9D4CFF")!
case .Linux:
return UIColor(hexString: "ED4CFF")!
case .Design:
return UIColor(hexString: "FF4CCC")!
}
}
}
let id: String
let trackCode: Track
let title: String
let shortDescription: String
let speakers: [Speaker]?
let location: String
let startDateTime: NSDate
let endDateTime: NSDate
var favorite: Bool
}