Proyectos de Subversion Iphone Microlearning

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
//
2
//  Constants.swift
3
//  twogetskills
4
//
5
//  Created by Efrain Yanez Recanatini on 1/26/22.
6
//
7
 
8
import Foundation
9
import SwiftUI
10
 
11
struct Constants {
12
 
13
 
14
 
15
    static let DATABASE_FILENAME: String = "2getskills.db"
16
    static let PREFERENCE_FILENAME: String = "2getskills.pref"
17
 
18
    static let STORAGE_DIR: String = "2GetSkills"
19
 
20
 
21
 
22
    static let IDENTIFIER_BACKGROUND_PROCESS : String = "com.cesams.2getskills.process"
23
 
24
 
25
    static let APP_BAR_TITLE_MAX_LENGTH : Int = 40
26
 
27
    static let CAPSULE_TITLE_MAX_LENGTH : Int = 40
28
 
29
    static let CARD_HORIZONTAL_SPACING : CGFloat =   12.0
30
    static let CARD_HEIGHT : CGFloat = 340.0
31
    static let CARD_WIDTH : CGFloat = 180.0
32
 
33
    static let PROFILE_IMAGE_SIZE : CGFloat = 100.0
34
 
35
    static let PREFERENCE_EMPTY_ID : String = ""
36
    static let PREFERENCE_FIELD_DEVICE_ID : String = "device_uuid"
37
    static let PREFERENCE_FIELD_USER_ID : String = "user_id"
38
    static let PREFERENCE_FIELD_FCM_TOKEN : String = "fcm_token"
39
    static let PREFERENCE_FIELD_EMAIL : String = "email"
40
    static let PREFERENCE_FIELD_FIRST_NAME : String = "first_name"
41
    static let PREFERENCE_FIELD_LAST_NAME : String = "last_name"
42
    static let PREFERENCE_FIELD_IMAGE : String = "image"
43
    static let PREFERENCE_FIELD_PASSWORD : String = "password"
44
    static let PREFERENCE_FIELD_AES : String = "aes"
45
    static let PREFERENCE_FIELD_MAX_DATE_CHANGES : String = "max_date_changes"
46
 
47
 
48
 
49
    static let PREFERENCE_FIELD_VIEW_IDX_ACTIVE : String = "view_idx_active"
50
    static let PREFERENCE_FIELD_TOPIC_UUID_ACTIVE : String =  "topic_id_active"
51
    static let PREFERENCE_FIELD_CAPSULE_UUID_ACTIVE : String = "capsule_id_active"
52
    static let PREFERENCE_FIELD_SLIDE_UUID_ACTIVE : String =  "slide_id_active"
53
    static let PREFERENCE_FIELD_COMPANY_UUID_ACTIVE : String = "company_id_active"
54
    static let PREFERENCE_FIELD_COMPANY_COUNT : String = "company_count"
55
    static let PREFERENCE_FIELD_CAPSULE_UUID_OLD : String = "capsule_id_old"
56
 
57
    static let IDX_FRAGMENT_INTRO: Int =  1
58
    static let IDX_FRAGMENT_SIGNIN: Int =  2
59
    static let IDX_FRAGMENT_SIGNUP : Int =  3
60
    static let IDX_FRAGMENT_ACCOUNT_ACTIVATION : Int =  4
61
    static let IDX_FRAGMENT_FORGOT_PASSWORD : Int = 5
62
    static let IDX_FRAGMENT_RESET_PASSWORD: Int =  6
63
 
64
    /*
65
    static let IDX_FRAGMENT_TOPICS: Int =  10
66
    static let IDX_FRAGMENT_CAPSULES: Int = 11
67
    static let IDX_FRAGMENT_SLIDES: Int = 12
68
    static let IDX_FRAGMENT_GALLERY: Int = 13
69
    static let IDX_FRAGMENT_FINISH_CAPSULE : Int = 14
70
    static let IDX_FRAGMENT_FINISH_TOPIC: Int =  15
71
 
72
    static let IDX_FRAGMENT_TIMELINE: Int =  20
73
    static let IDX_FRAGMENT_COMPANIES: Int = 21
74
    static let IDX_FRAGMENT_PROGRESS: Int = 22
75
    static let IDX_FRAGMENT_USER_PROFILE: Int =  23
76
*/
77
 
78
    // UID Device Info
79
    static let POST_DEVICE_FIELD_PLATFORM: String = "platform"
80
    static let POST_DEVICE_FIELD_APPLICATION_ID: String = "application_id"
81
    static let POST_DEVICE_FIELD_DEVICE_UUID: String = "device_uuid"
82
    static let POST_DEVICE_FIELD_MANUFACTURER: String = "manufacturer"
83
    static let POST_DEVICE_FIELD_BRAND: String = "brand"
84
    static let POST_DEVICE_FIELD_VERSION: String = "version"
85
    static let POST_DEVICE_FIELD_MODEL: String = "model"
86
    static let POST_DEVICE_FIELD_SYNC_ID: String = "sync_id"
87
 
88
    static let POST_FCM_FIELD_APPLICATION_ID: String = "application_id"
89
    static let POST_FCM_FIELD_DEVICE_UUID: String = "device_uuid"
90
    static let POST_FCM_FIELD_TOKEN: String = "token"
91
    static let POST_FCM_FIELD_SYNC_ID: String = "sync_id"
92
 
93
    static let POST_SYNC_FIELD_DEVICE_UUID: String = "device_uuid"
94
    static let POST_SYNC_FIELD_DATA: String = "data"
95
    static let POST_SYNC_FIELD_SYNC_ID: String = "sync_id"
96
 
97
    static let POST_SIGNIN_FIELD_APPLICATION_ID: String = "application_id"
98
    static let POST_SIGNIN_FIELD_DEVICE_UUID: String = "device_uuid"
99
    static let POST_SIGNIN_FIELD_EMAIL: String = "email"
100
    static let POST_SIGNIN_FIELD_PASSWORD: String = "password"
101
    static let POST_SIGNIN_FIELD_ENCRYPTER: String = "encrypter"
102
 
103
 
104
 
105
 
106
 
107
 
108
    static let GLOBAL_ENCRYPTER: String = "RNCryptor"
109
    static let GLOBAL_APPLICATION_ID: Int = 1
110
 
111
 
112
 
113
 
114
 
115
    static let SYNC_ADAPTER_TYPE_DEVICE: Int = 0
116
    static let SYNC_ADAPTER_TYPE_FCM: Int = 1
117
    static let SYNC_ADAPTER_TYPE_SYNC: Int = 2
118
 
119
    static let SYNC_ADAPTER_DATA_TYPE_FIELD_NAME: String = "sync_type"
120
    static let SYNC_ADAPTER_DATA_TYPE_MICROLEARNING_USER_LOG: String =  "microlearning-userlog"
121
    static let SYNC_ADAPTER_DATA_TYPE_MICROLEARNING_PROGRESS: String =  "microlearning-progress"
122
    static let SYNC_ADAPTER_DATA_TYPE_USER_LOG: String =  "userlog"
123
 
124
 
125
    static let HTTP_HEADER_ACCEPT: String = "Accept"
126
    static let HTTP_HEADER_ACCEPT_VALUE: String = "application/json, text/javascript, */* q=0.01"
127
    static let HTTP_HEADER_SECURITY_TOKEN: String = "token"
128
    static let HTTP_HEADER_SECURITY_SECRET: String = "secret"
129
    static let HTTP_HEADER_SECURITY_CREATED: String = "created"
130
    static let HTTP_HEADER_SECURITY_RAND: String = "rand"
131
 
132
 
133
    static let SLIDE_TYPE_IMAGE: String = "image"
134
    static let SLIDE_TYPE_VIDEO: String = "video"
135
    static let SLIDE_TYPE_AUDIO: String = "audio"
136
    static let SLIDE_TYPE_QUIZ: String = "quiz"
137
    static let SLIDE_TYPE_DOCUMENT: String = "document"
138
    static let SLIDE_TYPE_TEXT: String = "text"
139
 
140
    static let QUESTION_YPE_SINGLE_LINE: String = "sl"
141
    static let QUESTION_TYPE_MULTI_LINE: String = "ml"
142
    static let QUESTION_TYPE_SINGLE_SELECTION: String = "s"
143
    static let QUESTION_TYPE_MULTIPLE_SELECTION: String = "m"
144
    static let QUESTION_TYPE_RANGE_1_5: String = "r5"
145
    static let QUESTION_TYPE_RANGE_1_6: String = "r6"
146
    static let QUESTION_TYPE_RANGE_1_10: String = "r10"
147
    static let QUESTION_TYPE_RANGE_OPEN: String = "ro"
148
 
149
    static let ANSWER_QCORRECT_YES: String = "y"
150
    static let ANSWER_CORRECT_NO: String = "n"
151
 
152
    static let PROGRESS_TYPE_TOPIC: String = "t"
153
    static let PROGRESS_TYPE_CAPSULE: String = "c"
154
    static let PROGRESS_TYPE_SLIDE: String = "s"
155
 
156
 
157
    static let USER_LOG_ACTIVITY_SIGNIN: String = "signin"
158
    static let USER_LOG_ACTIVITY_SIGNOUT: String = "signout"
159
    static let USER_LOG_ACTIVITY_START_TOPIC: String = "start-topic"
160
    static let USER_LOG_ACTIVITY_START_CAPSULE: String = "start-capsule"
161
    static let USER_LOG_ACTIVITY_VIEW_SLIDE: String = "view-slide"
162
    static let USER_LOG_ACTIVITY_TAKE_A_TEST: String = "take-a-test"
163
    static let USER_LOG_ACTIVITY_RETAKE_A_TEST: String = "retake-a-test"
164
    static let USER_LOG_ACTIVITY_APPROVED_TEST: String = "approved-test"
165
    static let USER_LOG_ACTIVITY_COMPLETED_CAPSULE: String = "completed-capsule"
166
    static let USER_LOG_ACTIVITY_COMPLETED_TOPIC: String = "completed-topic"
167
 
168
 
169
 
170
 
171
    static let FORMAT_DATE_SERVICE: String = "yyyy-MM-dd"
172
    static let FORMAT_TIME_SERVICE : String = "HH:mm:ss"
173
    static let FORMAT_DATETIME_SERVICE : String = "yyyy-MM-dd'T'HH:mm:ss"
174
 
175
 
176
    static let FORMAT_DATE_TIME_24: String = "yyyy-MM-dd HH:mm:ss"
177
    static let FORMAT_DATE_YMD : String = "yyyy-MM-dd"
178
    static let FORMAT_DATE_DMY : String = "dd/MM/yyyy"
179
    static let FORMAT_TIME_12 : String = "hh:mm a"
180
    static let FORMAT_TIME_24 : String = "HH:mm:ss"
181
    static let FORMAT_DATE_TIME_12 : String = "dd/MM/yyyy hh:mm a"
182
 
183
    static let DATABASE_VERSION: Int = 1
184
    static let DATABASE_NAME: String = "TwoGetSkills.db"
185
 
186
 
187
    static let  TABLE_COMPANY:String = "tb_companies"
188
    static let  TABLE_COMPANY_FIELD_UUID:String = "uuid"
189
    static let  TABLE_COMPANY_FIELD_NAME:String = "name"
190
    static let  TABLE_COMPANY_FIELD_IMAGE:String = "image"
191
 
192
    /*
193
    static let TABLE_PREFERENCE:String = "tb_preferences"
194
    static let TABLE_PREFERENCE_FIELD_ID : String = "id"
195
    static let TABLE_PREFERENCE_FIELD_DEVICE_ID : String = "device_uuid"
196
    static let TABLE_PREFERENCE_FIELD_USER_ID : String = "user_uuid"
197
    static let TABLE_PREFERENCE_FIELD_FCM_TOKEN : String = "fcm_token"
198
    static let TABLE_PREFERENCE_FIELD_EMAIL : String = "email"
199
    static let TABLE_PREFERENCE_FIELD_FIRST_NAME : String = "first_name"
200
    static let TABLE_PREFERENCE_FIELD_LAST_NAME : String = "last_name"
201
    static let TABLE_PREFERENCE_FIELD_IMAGE : String = "image"
202
    static let TABLE_PREFERENCE_FIELD_PASSWORD : String = "password"
203
    static let TABLE_PREFERENCE_FIELD_AES : String = "aes"
204
    static let TABLE_PREFERENCE_FIELD_MAX_DATE_CHANGES : String = "max_date_changes"
205
    static let TABLE_PREFERENCE_FIELD_FRAGMENT_IDX_ACTIVE : String = "fragment_idx_active"
206
    static let TABLE_PREFERENCE_FIELD_TOPIC_ID_ACTIVE : String =  "topic_uuid_active"
207
    static let TABLE_PREFERENCE_FIELD_CAPSULE_ID_ACTIVE : String = "capsule_uuid_active"
208
    static let TABLE_PREFERENCE_FIELD_SLIDE_ID_ACTIVE : String =  "slide_uuid_active"
209
    static let TABLE_PREFERENCE_FIELD_COMPANY_ID_ACTIVE : String = "company_uuid_active"
210
    static let TABLE_PREFERENCE_FIELD_COMPANY_COUNT : String = "company_count"
211
    static let TABLE_PREFERENCE_FIELD_CAPSULE_ID_CHANGED : String = "capsule_changed"
212
    */
213
 
214
    static let  TABLE_SYNC:String = "tb_sync"
215
    static let  TABLE_SYNC_FIELD_ID:String = "id"
216
    static let  TABLE_SYNC_FIELD_TYPE:String = "type"
217
    static let  TABLE_SYNC_FIELD_DATA:String = "data"
218
 
219
    static let  TABLE_TOPIC:String = "tb_topics"
220
    static let  TABLE_TOPIC_FIELD_UUID:String = "uuid"
221
    static let  TABLE_TOPIC_FIELD_COMPANY_UUID:String = "company_uuid"
222
    static let  TABLE_TOPIC_FIELD_NAME:String = "name"
223
    static let  TABLE_TOPIC_FIELD_DESCRIPTION:String = "description"
224
    static let  TABLE_TOPIC_FIELD_IMAGE:String = "image"
225
    static let  TABLE_TOPIC_FIELD_POSITION:String = "position"
226
 
227
    static let  TABLE_CAPSULE:String = "tb_capsules"
228
    static let  TABLE_CAPSULE_FIELD_UUID:String = "uuid"
229
    static let  TABLE_CAPSULE_FIELD_TOPIC_UUID:String = "topic_uuid"
230
    static let  TABLE_CAPSULE_FIELD_NAME:String = "name"
231
    static let  TABLE_CAPSULE_FIELD_DESCRIPTION:String = "description"
232
    static let  TABLE_CAPSULE_FIELD_IMAGE:String = "image"
233
    static let  TABLE_CAPSULE_FIELD_POSITION:String = "position"
234
 
235
    static let  TABLE_SLIDE:String = "tb_slides"
236
    static let  TABLE_SLIDE_FIELD_UUID:String = "uuid"
237
    static let  TABLE_SLIDE_FIELD_CAPSULE_UUID:String = "capsule_uuid"
238
    static let  TABLE_SLIDE_FIELD_TOPIC_UUID:String = "topic_uuid"
239
    static let  TABLE_SLIDE_FIELD_QUIZ_UUID:String = "quiz_uuid"
240
    static let  TABLE_SLIDE_FIELD_NAME:String = "name"
241
    static let  TABLE_SLIDE_FIELD_DESCRIPTION:String = "description"
242
    static let  TABLE_SLIDE_FIELD_TYPE:String = "type"
243
    static let  TABLE_SLIDE_FIELD_FILE:String = "file"
244
    static let  TABLE_SLIDE_FIELD_BACKGROUND:String = "background"
245
    static let  TABLE_SLIDE_FIELD_POSITION:String = "position"
246
 
247
 
248
    static let  TABLE_PROGRESS:String = "tb_progress"
249
    static let  TABLE_PROGRESS_FIELD_ID:String = "id"
250
    static let  TABLE_PROGRESS_FIELD_USER_UUID:String = "user_uuid"
251
    static let  TABLE_PROGRESS_FIELD_COMPANY_UUID:String = "company_uuid"
252
    static let  TABLE_PROGRESS_FIELD_TOPIC_UUID:String = "topic_uuid"
253
    static let  TABLE_PROGRESS_FIELD_CAPSULE_UUID:String = "capsule_uuid"
254
    static let  TABLE_PROGRESS_FIELD_SLIDE_UUID:String = "slide_uuid"
255
    static let  TABLE_PROGRESS_FIELD_PROGRESS:String = "progress"
256
    static let  TABLE_PROGRESS_FIELD_TOTAL_SLIDES:String = "total_slides"
257
    static let  TABLE_PROGRESS_FIELD_VIEW_SLIDES:String = "view_slides"
258
    static let  TABLE_PROGRESS_FIELD_TYPE:String = "type"
259
    static let  TABLE_PROGRESS_FIELD_RETURNING:String = "returning"
260
    static let  TABLE_PROGRESS_FIELD_RETURNING_AFTER_COMPLETED:String = "returning_after_completed"
261
    static let  TABLE_PROGRESS_FIELD_COMPLETED:String = "completed"
262
    static let  TABLE_PROGRESS_FIELD_ADDED_ON:String = "added_on"
263
    static let  TABLE_PROGRESS_FIELD_UPDATED_ON:String = "updated_on"
264
 
265
 
266
    static let  TABLE_USER_LOG:String = "tb_user_logs"
267
    static let  TABLE_USER_LOG_FIELD_ID:String = "id"
268
    static let  TABLE_USER_LOG_FIELD_USER_UUID:String = "user_uuid"
269
    static let  TABLE_USER_LOG_FIELD_COMPANY_UUID:String = "company_uuid"
270
    static let  TABLE_USER_LOG_FIELD_TOPIC_UUID:String = "topic_uuid"
271
    static let  TABLE_USER_LOG_FIELD_CAPSULE_UUID:String = "capsule_uuid"
272
    static let  TABLE_USER_LOG_FIELD_SLIDE_UUID:String = "slide_uuid"
273
    static let  TABLE_USER_LOG_FIELD_ACTIVITY:String = "activity"
274
    static let  TABLE_USER_LOG_FIELD_ADDED_ON:String = "added_on"
275
 
276
 
277
    static let  TABLE_QUIZ:String = "tb_quizzes"
278
    static let  TABLE_QUIZ_FIELD_UUID:String = "uuid"
279
    static let  TABLE_QUIZ_FIELD_COMPANY_UUID:String = "company_uuid"
280
    static let  TABLE_QUIZ_FIELD_NAME:String = "name"
281
    static let  TABLE_QUIZ_FIELD_TEXT:String = "text"
282
    static let  TABLE_QUIZ_FIELD_FAILED:String = "failed"
283
    static let  TABLE_QUIZ_FIELD_POINTS:String = "points"
284
    static let  TABLE_QUIZ_FIELD_MINIMUM_POINTS_REQUIRED:String = "minimum_points_required"
285
    static let  TABLE_QUIZ_FIELD_MAX_TIME:String = "max_time"
286
 
287
 
288
    static let  TABLE_QUESTION:String = "tb_questions"
289
    static let  TABLE_QUESTION_FIELD_UUID:String = "uuid"
290
    static let  TABLE_QUESTION_FIELD_QUIZ_UUID:String = "quiz_uuid"
291
    static let  TABLE_QUESTION_FIELD_TEXT:String = "text"
292
    static let  TABLE_QUESTION_FIELD_POINTS:String = "points"
293
    static let  TABLE_QUESTION_FIELD_POSITION:String = "position"
294
    static let  TABLE_QUESTION_FIELD_TYPE:String = "type"
295
 
296
 
297
    static let  TABLE_ANSWER:String = "tb_answers"
298
    static let  TABLE_ANSWER_FIELD_UUID:String = "uuid"
299
    static let  TABLE_ANSWER_FIELD_QUESTION_UUID:String = "question_uuid"
300
    static let  TABLE_ANSWER_FIELD_TEXT: String = "text"
301
    static let  TABLE_ANSWER_FIELD_POINTS: String = "points"
302
    static let  TABLE_ANSWER_FIELD_CORRECT: String = "correct"
303
 
304
    static let TABLE_USER_EXTENDED = "tb_user_extended"
305
    static let TABLE_USER_EXTENDED_FIELD_UUID = "uuid"
306
    static let TABLE_USER_EXTENDED_FIELD_COMPANY_UUID = "company_uuid"
307
    static let TABLE_USER_EXTENDED_FIELD_LABEL = "label"
308
    static let TABLE_USER_EXTENDED_FIELD_VALUE = "value"
309
 
310
 
311
    static let USERLOG_JSON_USER_UUID = "user_uuid"
312
    static let USERLOG_JSON_COMPANY_UUID = "company_uuid"
313
    static let USERLOG_JSON_TOPIC_UUID = "topic_uuid"
314
    static let USERLOG_JSON_CAPSULE_UUID = "capsule_uuid"
315
    static let USERLOG_JSON_SLIDE_UUID = "slide_uuid"
316
    static let USERLOG_JSON_ACTIVITY = "activity"
317
    static let USERLOG_JSON_ADDED_ON = "added_on"
318
 
319
    static let  PROGRESS_JSON_USER_UUID = "user_uuid"
320
    static let  PROGRESS_JSON_COMPANY_UUID = "company_uuid"
321
    static let  PROGRESS_JSON_TOPIC_UUID = "topic_uuid"
322
    static let  PROGRESS_JSON_CAPSULE_UUID = "capsule_uuid"
323
    static let  PROGRESS_JSON_SLIDE_UUID = "slide_uuid"
324
    static let  PROGRESS_JSON_PROGRESS = "progress"
325
    static let  PROGRESS_JSON_TOTAL_SLIDES = "total_slides"
326
    static let  PROGRESS_JSON_VIEW_SLIDES = "view_slides"
327
    static let  PROGRESS_JSON_RETURNING = "returning"
328
    static let  PROGRESS_JSON_RETURNING_AFTER_COMPLETED = "returning_after_completed"
329
    static let  PROGRESS_JSON_COMPLETED = "completed"
330
    static let  PROGRESS_JSON_TYPE = "type"
331
    static let  PROGRESS_JSON_ADDED_ON = "added_on"
332
    static let  PROGRESS_JSON_UPDATED_ON = "updated_on"
333
 
334
 
335
    static let BACKGROUND_TASK_REFRESH = "com.cesams.2getskills.refresh"
336
    static let BACKGROUND_TASK_PROCESS = "com.cesams.2getskills.process"
337
 
338
 
339
 
340
    static  let NOTIFICATION_NAME_INCOMPLETED_SLIDE = Notification.Name("com.cesams.2getskill.notification.incompleted.slide")
341
 
342
    static  let NOTIFICATION_NAME_COMPLETED_SLIDE = Notification.Name("com.cesams.2getskill.notification.completed.slide")
343
 
344
    static  let NOTIFICATION_NAME_CHANGE_PERCENTAJE_COMPLETED_CAPSULE = Notification.Name("com.cesams.2getskill.notification.change.percentaje.completed.capsule")
345
 
346
    static  let NOTIFICATION_NAME_CHANGE_PERCENTAJE_COMPLETED_TOPIC = Notification.Name("notificationChangeCompletedTopic")
347
 
348
    static let NOTIFICATION_NAME_FCM_MESSAGE_ID = Notification.Name("com.cesams.2getskill.notification.fcm.message")
349
 
350
    static let NOTIFICATION_NAME_FCM_MESSAGE_COMMAND = Notification.Name("com.cesams.2getskill.notification.notification.fcm.command")
351
 
352
 
353
 
354
}
355
 
356