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