diff --git a/WOKA.xcodeproj/project.pbxproj b/WOKA.xcodeproj/project.pbxproj index b917993..d91a26c 100644 --- a/WOKA.xcodeproj/project.pbxproj +++ b/WOKA.xcodeproj/project.pbxproj @@ -85,8 +85,6 @@ 526A43752C36AA4A00AE148F /* GamesListVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 526A43742C36AA4A00AE148F /* GamesListVC.swift */; }; 5272FCE32BDFDB05000ECB1D /* UserDetailsRegisterVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5272FCE22BDFDB05000ECB1D /* UserDetailsRegisterVC.swift */; }; 5272FCE52BDFDC8C000ECB1D /* UserDetailsRegisterVM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5272FCE42BDFDC8C000ECB1D /* UserDetailsRegisterVM.swift */; }; - 527A2BC22C576E980080DF9B /* FirebaseAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = 527A2BC12C576E980080DF9B /* FirebaseAnalytics */; }; - 527A2BC42C576E980080DF9B /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = 527A2BC32C576E980080DF9B /* FirebaseCrashlytics */; }; 527A2BC62C576EAF0080DF9B /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 527A2BC52C576EAF0080DF9B /* GoogleService-Info.plist */; }; 527A2BC82C5777360080DF9B /* VerifyAddressPincodeVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 527A2BC72C5777360080DF9B /* VerifyAddressPincodeVC.swift */; }; 527A2BCA2C57776A0080DF9B /* AddNewAddressVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 527A2BC92C57776A0080DF9B /* AddNewAddressVC.swift */; }; @@ -207,7 +205,6 @@ 52CA28FC2BE11A0400708B49 /* UserIntrestVM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52CA28FB2BE11A0400708B49 /* UserIntrestVM.swift */; }; 52CC38C32BDF812F00B74C3E /* LocalisedElements.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52CC38C22BDF812F00B74C3E /* LocalisedElements.swift */; }; 52CC85542C5BABD40084030E /* WokaFMVM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52CC85532C5BABD40084030E /* WokaFMVM.swift */; }; - 52CCD7B02C1AF0F80078BD65 /* RadioVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52CCD7AF2C1AF0F80078BD65 /* RadioVC.swift */; }; 52D23F112C465E6F003E743A /* LogoutPopupVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52D23F102C465E6F003E743A /* LogoutPopupVC.swift */; }; 52D2F3D82C24043D009E52FF /* ShimmerEffectView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52D2F3D72C24043D009E52FF /* ShimmerEffectView.swift */; }; 52D6A2462C21A29800145908 /* ContinueWatchingDM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52D6A2452C21A29800145908 /* ContinueWatchingDM.swift */; }; @@ -288,6 +285,10 @@ 9C834ED82C1C1F9200B29A9C /* Exo2-Thin.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 9C56E8312BDBC3EF00E4CA14 /* Exo2-Thin.ttf */; }; 9C834EDC2C1C26CD00B29A9C /* HtmlText.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C834EDB2C1C26CD00B29A9C /* HtmlText.swift */; }; 9C8446872C40FC6E003E3E53 /* AVPlayerTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8446862C40FC6E003E3E53 /* AVPlayerTesting.swift */; }; + 9C85A9EC2C5CD5CD0031C365 /* MyListDataTemp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C85A9EB2C5CD5CD0031C365 /* MyListDataTemp.swift */; }; + 9C85A9EF2C5CE1060031C365 /* FirebaseAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = 9C85A9EE2C5CE1060031C365 /* FirebaseAnalytics */; }; + 9C85A9F12C5CE1060031C365 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = 9C85A9F02C5CE1060031C365 /* FirebaseCrashlytics */; }; + 9C85A9F32C5CE1060031C365 /* FirebasePerformance in Frameworks */ = {isa = PBXBuildFile; productRef = 9C85A9F22C5CE1060031C365 /* FirebasePerformance */; }; 9C8C4FAE2C1315410017DD3B /* WebViewVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8C4FAD2C1315410017DD3B /* WebViewVC.swift */; }; 9C8C4FB02C1328060017DD3B /* Disclaimer.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 9C8C4FAF2C1328060017DD3B /* Disclaimer.rtf */; }; 9C9BEEC72BEE1BBF004ECC2F /* CollectionViewCenteredFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C9BEEC62BEE1BBF004ECC2F /* CollectionViewCenteredFlowLayout.swift */; }; @@ -552,7 +553,6 @@ 52CA28FB2BE11A0400708B49 /* UserIntrestVM.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserIntrestVM.swift; sourceTree = ""; }; 52CC38C22BDF812F00B74C3E /* LocalisedElements.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalisedElements.swift; sourceTree = ""; }; 52CC85532C5BABD40084030E /* WokaFMVM.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WokaFMVM.swift; sourceTree = ""; }; - 52CCD7AF2C1AF0F80078BD65 /* RadioVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioVC.swift; sourceTree = ""; }; 52D23F102C465E6F003E743A /* LogoutPopupVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LogoutPopupVC.swift; sourceTree = ""; }; 52D2F3D72C24043D009E52FF /* ShimmerEffectView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShimmerEffectView.swift; sourceTree = ""; }; 52D6A2452C21A29800145908 /* ContinueWatchingDM.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContinueWatchingDM.swift; sourceTree = ""; }; @@ -625,6 +625,7 @@ 9C834ED92C1C20EC00B29A9C /* WOKA.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WOKA.entitlements; sourceTree = ""; }; 9C834EDB2C1C26CD00B29A9C /* HtmlText.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HtmlText.swift; sourceTree = ""; }; 9C8446862C40FC6E003E3E53 /* AVPlayerTesting.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AVPlayerTesting.swift; sourceTree = ""; }; + 9C85A9EB2C5CD5CD0031C365 /* MyListDataTemp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MyListDataTemp.swift; sourceTree = ""; }; 9C8C4FAD2C1315410017DD3B /* WebViewVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebViewVC.swift; sourceTree = ""; }; 9C8C4FAF2C1328060017DD3B /* Disclaimer.rtf */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; path = Disclaimer.rtf; sourceTree = ""; }; 9C9BEEC62BEE1BBF004ECC2F /* CollectionViewCenteredFlowLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionViewCenteredFlowLayout.swift; sourceTree = ""; }; @@ -675,8 +676,9 @@ files = ( 4469E533EC95AC428FE50FB2 /* Pods_WOKA.framework in Frameworks */, 52C83E3F2C493FD700F27563 /* RSKPlaceholderTextView in Frameworks */, - 527A2BC42C576E980080DF9B /* FirebaseCrashlytics in Frameworks */, - 527A2BC22C576E980080DF9B /* FirebaseAnalytics in Frameworks */, + 9C85A9F32C5CE1060031C365 /* FirebasePerformance in Frameworks */, + 9C85A9F12C5CE1060031C365 /* FirebaseCrashlytics in Frameworks */, + 9C85A9EF2C5CE1060031C365 /* FirebaseAnalytics in Frameworks */, 521CB1002C493DB80085BDF8 /* JWPlayerKit in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -1612,7 +1614,6 @@ 52AECA7F2C08BCB6004A7579 /* PlayerVC.swift */, 52BC3BED2C16FBDB002FACA6 /* MoreVC.swift */, 522D655F2C1ACD8C0021E505 /* UserNotificationVC.swift */, - 52CCD7AF2C1AF0F80078BD65 /* RadioVC.swift */, 9C834EC52C1C1D9500B29A9C /* BlogDetailsVC.swift */, 52BFB0642C5B5B4F0038D750 /* BlogsVC.swift */, ); @@ -1780,6 +1781,7 @@ 525327D32BFCC1C900F64283 /* ViewModel */, 525327D42BFCC1CF00F64283 /* Controller */, 9CBCB2A72BE5105A007D7934 /* Home.storyboard */, + 9C85A9EB2C5CD5CD0031C365 /* MyListDataTemp.swift */, ); path = Home; sourceTree = ""; @@ -1863,8 +1865,9 @@ packageProductDependencies = ( 521CB0FF2C493DB80085BDF8 /* JWPlayerKit */, 52C83E3E2C493FD700F27563 /* RSKPlaceholderTextView */, - 527A2BC12C576E980080DF9B /* FirebaseAnalytics */, - 527A2BC32C576E980080DF9B /* FirebaseCrashlytics */, + 9C85A9EE2C5CE1060031C365 /* FirebaseAnalytics */, + 9C85A9F02C5CE1060031C365 /* FirebaseCrashlytics */, + 9C85A9F22C5CE1060031C365 /* FirebasePerformance */, ); productName = WOKA; productReference = 523ED25A2BDA2BC700CFED02 /* WOKA.app */; @@ -1942,7 +1945,7 @@ packageReferences = ( 521CB0FE2C493DB80085BDF8 /* XCRemoteSwiftPackageReference "JWPlayerKit-package" */, 52C83E3D2C493FD700F27563 /* XCRemoteSwiftPackageReference "RSKPlaceholderTextView" */, - 527A2BC02C576E980080DF9B /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */, + 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */, ); productRefGroup = 523ED25B2BDA2BC700CFED02 /* Products */; projectDirPath = ""; @@ -2147,7 +2150,6 @@ 5259542B2BEA292800191286 /* UserRegPostModel.swift in Sources */, 52BFB5352C33DF8A00BAAE15 /* ListenAudioListingDM.swift in Sources */, 52C8B0572BDA57DB003B51D0 /* Constant.swift in Sources */, - 52CCD7B02C1AF0F80078BD65 /* RadioVC.swift in Sources */, 52AECA802C08BCB6004A7579 /* PlayerVC.swift in Sources */, 5202AB012BDFA7900043B7BD /* EmailValidation.swift in Sources */, 52D6A24E2C22B3AB00145908 /* WebSeriesShowListDM.swift in Sources */, @@ -2236,6 +2238,7 @@ 52AF71F22C36B77B00BC5972 /* GamesDetailVC.swift in Sources */, 525861D42C4FCCB500C33C79 /* CartPaymentOptionsVM.swift in Sources */, 52A3F6AF2BECC0690000BB0B /* LinkedChildVM.swift in Sources */, + 9C85A9EC2C5CD5CD0031C365 /* MyListDataTemp.swift in Sources */, 52A6DCB02C4E621800F63C51 /* BadgedBarButtonItem.swift in Sources */, 52C8EC7D2C3536E5002DC35C /* ContinueAudioCell.swift in Sources */, 525954252BE8F01600191286 /* ValueWrapper.swift in Sources */, @@ -2749,14 +2752,6 @@ version = 4.19.1; }; }; - 527A2BC02C576E980080DF9B /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; - requirement = { - kind = upToNextMajorVersion; - minimumVersion = 10.29.0; - }; - }; 52C83E3D2C493FD700F27563 /* XCRemoteSwiftPackageReference "RSKPlaceholderTextView" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/ruslanskorb/RSKPlaceholderTextView.git"; @@ -2765,6 +2760,14 @@ minimumVersion = 8.0.0; }; }; + 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 11.0.0; + }; + }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ @@ -2773,21 +2776,26 @@ package = 521CB0FE2C493DB80085BDF8 /* XCRemoteSwiftPackageReference "JWPlayerKit-package" */; productName = JWPlayerKit; }; - 527A2BC12C576E980080DF9B /* FirebaseAnalytics */ = { - isa = XCSwiftPackageProductDependency; - package = 527A2BC02C576E980080DF9B /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; - productName = FirebaseAnalytics; - }; - 527A2BC32C576E980080DF9B /* FirebaseCrashlytics */ = { - isa = XCSwiftPackageProductDependency; - package = 527A2BC02C576E980080DF9B /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; - productName = FirebaseCrashlytics; - }; 52C83E3E2C493FD700F27563 /* RSKPlaceholderTextView */ = { isa = XCSwiftPackageProductDependency; package = 52C83E3D2C493FD700F27563 /* XCRemoteSwiftPackageReference "RSKPlaceholderTextView" */; productName = RSKPlaceholderTextView; }; + 9C85A9EE2C5CE1060031C365 /* FirebaseAnalytics */ = { + isa = XCSwiftPackageProductDependency; + package = 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; + productName = FirebaseAnalytics; + }; + 9C85A9F02C5CE1060031C365 /* FirebaseCrashlytics */ = { + isa = XCSwiftPackageProductDependency; + package = 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; + productName = FirebaseCrashlytics; + }; + 9C85A9F22C5CE1060031C365 /* FirebasePerformance */ = { + isa = XCSwiftPackageProductDependency; + package = 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; + productName = FirebasePerformance; + }; /* End XCSwiftPackageProductDependency section */ }; rootObject = 523ED2522BDA2BC700CFED02 /* Project object */; diff --git a/WOKA/Audio Books/AudioBookDetailsVC.swift b/WOKA/Audio Books/AudioBookDetailsVC.swift index b602f8f..947583e 100644 --- a/WOKA/Audio Books/AudioBookDetailsVC.swift +++ b/WOKA/Audio Books/AudioBookDetailsVC.swift @@ -7,9 +7,9 @@ import UIKit -protocol ReloadAudioBooksFavLike{ - func updateAudioRows(id : Int, type : FavCellCLick, isFav : Bool? , isLike : Bool? ) -} +//protocol ReloadAudioBooksFavLike{ +// func updateAudioRows(id : Int, type : FavCellCLick, isFav : Bool? , isLike : Bool? ) +//} class AudioBookDetailsVC : UIViewController{ @@ -30,11 +30,12 @@ class AudioBookDetailsVC : UIViewController{ @IBOutlet weak var outerView: UIView! @IBOutlet weak var contentView: UIView! - var delegate : ReloadAudioBooksFavLike? + var delegate : ReloadSeriesFavLike? var audioData : ListenAudioListingDM.AudioDatum? var continueAudioData : ListenAudioListingDM.AudioDatum? + var audioIndex = 0 override func viewDidLoad() { super.viewDidLoad() @@ -69,14 +70,14 @@ class AudioBookDetailsVC : UIViewController{ LikeFavCommonFunc.shareInstance.removeFavourite(postID: showID, postType: postType, categoryID: 0, vc: self) { isDone in self.audioData?.markAsFavourite = false K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .favourite, isFav: false, isLike: nil) + self.delegate?.updateRows(index: self.audioIndex, type: .favourite, isFav: false, isLike: nil, id: showID) self.initView() } }else{ LikeFavCommonFunc.shareInstance.addFavourite(postID: showID, postType: postType, categoryID: 0, vc: self) { isDone in self.audioData?.markAsFavourite = true K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .favourite, isFav: true, isLike: nil) + self.delegate?.updateRows(index: self.audioIndex, type: .favourite, isFav: true, isLike: nil, id: showID) self.initView() } } @@ -89,14 +90,14 @@ class AudioBookDetailsVC : UIViewController{ LikeFavCommonFunc.shareInstance.removeFavourite(postID: showID, postType: postType, categoryID: 0, vc: self) { isDone in self.continueAudioData?.markAsFavourite = false K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .favourite, isFav: false, isLike: nil) + self.delegate?.updateRows(index: self.audioIndex, type: .favourite, isFav: false, isLike: nil, id: showID) self.initView() } }else{ LikeFavCommonFunc.shareInstance.addFavourite(postID: showID, postType: postType, categoryID: 0, vc: self) { isDone in self.continueAudioData?.markAsFavourite = true K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .favourite, isFav: true, isLike: nil) + self.delegate?.updateRows(index: self.audioIndex, type: .favourite, isFav: true, isLike: nil, id: showID) self.initView() } } @@ -119,7 +120,7 @@ class AudioBookDetailsVC : UIViewController{ self.audioData?.likesCount! -= 1 } K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .liked, isFav: nil, isLike: false) + self.delegate?.updateRows(index: self.audioIndex, type: .liked, isFav: nil, isLike: false, id: showID) self.initView() } }else{ @@ -129,7 +130,7 @@ class AudioBookDetailsVC : UIViewController{ self.audioData?.likesCount! += 1 } K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .liked, isFav: nil, isLike: true) + self.delegate?.updateRows(index: self.audioIndex, type: .liked, isFav: nil, isLike: true, id: showID) self.initView() } } @@ -145,7 +146,7 @@ class AudioBookDetailsVC : UIViewController{ self.audioData?.likesCount! -= 1 } K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .liked, isFav: nil, isLike: false) + self.delegate?.updateRows(index: self.audioIndex, type: .liked, isFav: nil, isLike: false, id: showID) self.initView() } }else{ @@ -155,7 +156,7 @@ class AudioBookDetailsVC : UIViewController{ self.audioData?.likesCount! += 1 } K.GVar.reloadMyList = true - self.delegate?.updateAudioRows(id: showID, type: .liked, isFav: nil, isLike: true) + self.delegate?.updateRows(index: self.audioIndex, type: .liked, isFav: nil, isLike: true, id: showID) self.initView() } } diff --git a/WOKA/Audio Books/AudioBookHomeVC.swift b/WOKA/Audio Books/AudioBookHomeVC.swift index f578f2e..55191d8 100644 --- a/WOKA/Audio Books/AudioBookHomeVC.swift +++ b/WOKA/Audio Books/AudioBookHomeVC.swift @@ -90,9 +90,10 @@ class AudioBookHomeVC: UIViewController { // MARK: - Delegate for reload -extension AudioBookHomeVC : ReloadAudioBooksFavLike{ +extension AudioBookHomeVC : ReloadSeriesFavLike{ - func updateAudioRows(id: Int, type: FavCellCLick, isFav: Bool?, isLike: Bool?) { + func updateRows(index: Int, type: FavCellCLick, isFav: Bool?, isLike: Bool?, id: Int?) { + if let isFav{ if let continueDataIndex = vm.continueWatchingData.firstIndex(where:{$0.id == id}) { vm.continueWatchingData[continueDataIndex].markAsFavourite = isFav @@ -127,8 +128,10 @@ extension AudioBookHomeVC : ReloadAudioBooksFavLike{ audioListingTableView.reloadRows(at: [IndexPath(row: audioListDataIndex, section: 0)],with: .none) K.GVar.reloadMyList = true } + } } + } // MARK: - TableView DataSource , Delegates diff --git a/WOKA/Audio Books/AudioBookHomeVM.swift b/WOKA/Audio Books/AudioBookHomeVM.swift index 6200d1d..f66d964 100644 --- a/WOKA/Audio Books/AudioBookHomeVM.swift +++ b/WOKA/Audio Books/AudioBookHomeVM.swift @@ -188,12 +188,20 @@ class AudioBookHomeVM{ case .favourite: guard let isFav else{return} if isFav == true { + // if is fav then remove it LikeFavCommonFunc.shareInstance.removeFavourite(postID: postID, postType: postType, categoryID: 0, vc: self.vc) { [unowned self] isDone in if isDone{ if let showListIndex = audioListData.firstIndex(where: { $0.id == postID }){ audioListData[showListIndex].markAsFavourite = false vc.audioListingTableView.reloadRows(at: [IndexPath(row: showListIndex, section: 0)],with: .none) - K.GVar.reloadMyList = true + + // MyList Update + if MyListDataTemp.shareInstance.isDatafetched{ + if let indexRemove = MyListDataTemp.shareInstance.favListingData?.audioData?.firstIndex(where: {$0.id == postID}){ + MyListDataTemp.shareInstance.favListingData?.audioData?.remove(at: indexRemove) + K.GVar.myListSoftReload = true + } + } } /* @@ -202,6 +210,14 @@ class AudioBookHomeVM{ if let continueWatchingIndex = continueWatchingData.firstIndex(where: { $0.id == postID }){ continueWatchingData[continueWatchingIndex].markAsFavourite = false vc.continueWatchingCV.reloadItems(at: [IndexPath(row: continueWatchingIndex, section: 0)]) + + // MyList Update + if MyListDataTemp.shareInstance.isDatafetched{ + if let indexRemove = MyListDataTemp.shareInstance.favListingData?.audioData?.firstIndex(where: {$0.id == postID}){ + MyListDataTemp.shareInstance.favListingData?.audioData?.remove(at: indexRemove) + K.GVar.myListSoftReload = true + } + } } } } @@ -211,7 +227,13 @@ class AudioBookHomeVM{ if let showListIndex = audioListData.firstIndex(where: { $0.id == postID }){ audioListData[showListIndex].markAsFavourite = true vc.audioListingTableView.reloadRows(at: [IndexPath(row: showListIndex, section: 0)],with: .none) - K.GVar.reloadMyList = true + + // MyList Update + if MyListDataTemp.shareInstance.isDatafetched{ + let audioData = audioListData[showListIndex] + MyListDataTemp.shareInstance.favListingData?.audioData?.append(audioData) + K.GVar.myListSoftReload = true + } } /* @@ -220,7 +242,17 @@ class AudioBookHomeVM{ if let continueWatchingIndex = continueWatchingData.firstIndex(where: { $0.id == postID }){ continueWatchingData[continueWatchingIndex].markAsFavourite = true vc.continueWatchingCV.reloadItems(at: [IndexPath(row: continueWatchingIndex, section: 0)]) + + // MyList Update + if MyListDataTemp.shareInstance.isDatafetched{ + if MyListDataTemp.shareInstance.favListingData?.audioData?.firstIndex(where: {$0.id == postID}) == nil{ + let audioData = continueWatchingData[continueWatchingIndex] + MyListDataTemp.shareInstance.favListingData?.audioData?.append(audioData) + K.GVar.myListSoftReload = true + } + } } + } } } @@ -228,13 +260,13 @@ class AudioBookHomeVM{ case .liked: guard let isLiked else{return} if isLiked{ + // Unlike LikeFavCommonFunc.shareInstance.unlikePost(postID: postID, postType: postType, vc: self.vc) { [unowned self] isDone in if isDone{ if let showListIndex = audioListData.firstIndex(where: { $0.id == postID }){ audioListData[showListIndex].isLiked = false audioListData[showListIndex].likesCount! -= 1 vc.audioListingTableView.reloadRows(at: [IndexPath(row: showListIndex, section: 0)],with: .none) - K.GVar.reloadMyList = true } /* @@ -245,16 +277,26 @@ class AudioBookHomeVM{ continueWatchingData[continueWatchingIndex].likesCount! -= 1 vc.continueWatchingCV.reloadItems(at: [IndexPath(row: continueWatchingIndex, section: 0)]) } + + /* + Check if the data is in continue watching + */ + if let index = MyListDataTemp.shareInstance.favListingData?.audioData?.firstIndex(where: {$0.id == postID}){ + MyListDataTemp.shareInstance.favListingData?.audioData?[index].isLiked = false + MyListDataTemp.shareInstance.favListingData?.audioData?[index].likesCount! -= 1 + + K.GVar.myListSoftReload = true + } } } }else{ + //Like LikeFavCommonFunc.shareInstance.likePost(postID: postID, postType: postType, vc: self.vc){ [unowned self] isDone in if isDone{ if let showListIndex = audioListData.firstIndex(where: { $0.id == postID }){ audioListData[showListIndex].isLiked = true audioListData[showListIndex].likesCount! += 1 vc.audioListingTableView.reloadRows(at: [IndexPath(row: showListIndex, section: 0)],with: .none) - K.GVar.reloadMyList = true } /* @@ -265,6 +307,16 @@ class AudioBookHomeVM{ continueWatchingData[continueWatchingIndex].likesCount! += 1 vc.continueWatchingCV.reloadItems(at: [IndexPath(row: continueWatchingIndex, section: 0)]) } + + /* + Check if the data is in continue watching + */ + if let index = MyListDataTemp.shareInstance.favListingData?.audioData?.firstIndex(where: {$0.id == postID}){ + MyListDataTemp.shareInstance.favListingData?.audioData?[index].isLiked = true + MyListDataTemp.shareInstance.favListingData?.audioData?[index].likesCount! += 1 + + K.GVar.myListSoftReload = true + } } } } diff --git a/WOKA/Audio Books/ContinueAudioCell.xib b/WOKA/Audio Books/ContinueAudioCell.xib index 24a4e4a..ceb58bb 100644 --- a/WOKA/Audio Books/ContinueAudioCell.xib +++ b/WOKA/Audio Books/ContinueAudioCell.xib @@ -39,20 +39,20 @@ - + -