| 1 | efrain | 1 | //
 | 
        
           |  |  | 2 | //  SlideCardViewModel.swift
 | 
        
           |  |  | 3 | //  twogetskills
 | 
        
           |  |  | 4 | //
 | 
        
           |  |  | 5 | //  Created by Efrain Yanez Recanatini on 5/3/22.
 | 
        
           |  |  | 6 | //
 | 
        
           |  |  | 7 |   | 
        
           |  |  | 8 | import Foundation
 | 
        
           |  |  | 9 |   | 
        
           |  |  | 10 | class SlideCardViewModel: ObservableObject {
 | 
        
           |  |  | 11 |   | 
        
           |  |  | 12 |     @Published var slide = SlideModel()
 | 
        
           |  |  | 13 |     @Published var progressCapsule : Double = 0
 | 
        
           |  |  | 14 |     @Published var completedCapsule : Int = 0
 | 
        
           |  |  | 15 |     @Published var progressTopic : Double = 0
 | 
        
           |  |  | 16 |     @Published var completedTopic : Int = 0
 | 
        
           |  |  | 17 |   | 
        
           |  |  | 18 |     public func fetch(slideUuid: String, userUuid : String)
 | 
        
           |  |  | 19 |     {
 | 
        
           | 17 | efrain | 20 |         let slideDao = SlideDao()
 | 
        
           | 1 | efrain | 21 |         self.slide = slideDao.selectByUuid(uuid: slideUuid)
 | 
        
           |  |  | 22 |         self.fetchProgress(slideUuid: slideUuid, userUuid: userUuid)
 | 
        
           |  |  | 23 |     }
 | 
        
           |  |  | 24 |   | 
        
           |  |  | 25 |     public func fetchProgress(slideUuid: String, userUuid : String)
 | 
        
           |  |  | 26 |     {
 | 
        
           | 17 | efrain | 27 |         let progressDao = ProgressDao()
 | 
        
           | 1 | efrain | 28 |         let progressSlide = progressDao.selectBySlideUuidAndUserUuid(slideUuid: slideUuid, userUuid: userUuid)
 | 
        
           |  |  | 29 |         if progressSlide.id > 0 {
 | 
        
           |  |  | 30 |             self.slide.completed = progressSlide.completed
 | 
        
           |  |  | 31 |   | 
        
           |  |  | 32 |             let progressCapsule = progressDao.selectByCapsuleUuidAndUserUuid(capsuleUuid: progressSlide.capsuleUuid, userUuid: userUuid)
 | 
        
           |  |  | 33 |   | 
        
           |  |  | 34 |             if progressCapsule.id > 0 {
 | 
        
           |  |  | 35 |                 self.progressCapsule = progressCapsule.progress
 | 
        
           |  |  | 36 |                 self.completedCapsule = progressCapsule.completed
 | 
        
           |  |  | 37 |             }
 | 
        
           |  |  | 38 |   | 
        
           |  |  | 39 |             let progressTopic = progressDao.selectByTopicUuidAndUserUuid(topicUuid: progressSlide.topicUuid, userUuid: userUuid)
 | 
        
           |  |  | 40 |   | 
        
           |  |  | 41 |             if progressTopic.id > 0 {
 | 
        
           |  |  | 42 |                 self.progressTopic = progressTopic.progress
 | 
        
           |  |  | 43 |                 self.completedTopic = progressTopic.completed
 | 
        
           |  |  | 44 |             }
 | 
        
           |  |  | 45 |         }
 | 
        
           |  |  | 46 |     }
 | 
        
           |  |  | 47 | }
 |