def _markVisited(self, tabIdx, model): if not self.__proxyMissionsPage or self.__proxyMissionsPage.getCurrentTabAlias( ) != QUESTS_ALIASES.MISSIONS_PREMIUM_VIEW_PY_ALIAS: return seenQuests = [] if tabIdx == DailyTabs.QUESTS: dailyQuests = self.eventsCache.getDailyQuests().values() seenQuests = dailyQuests elif tabIdx == DailyTabs.PREMIUM_MISSIONS: if _isPremiumPlusAccount(): premiumQuests = self.eventsCache.getPremiumQuests().values() seenQuests = premiumQuests with settings.dailyQuestSettings() as dq: if isPremiumQuestsEnable( ) and not dq.premMissionsTabDiscovered: dq.onPremMissionsTabDiscovered() model.setPremMissionsTabDiscovered( dq.premMissionsTabDiscovered) for seenQuest in seenQuests: self.eventsCache.questsProgress.markQuestProgressAsViewed( seenQuest.getID()) if isEpicQuestEnabled(): epicQuest = self.eventsCache.getDailyEpicQuest() if epicQuest: seenQuests.append(epicQuest) dqToken = first( (token for token in epicQuest.accountReqs.getTokens() if token.isDailyQuest())) if dqToken: self.itemsCache.items.tokens.markTokenProgressAsViewed( dqToken.getID()) settings.visitEventsGUI(seenQuests) self.__updateMissionsNotification()
def __setCurrentTab(self, tabIdx, model): model.setCurrentTabIdx(tabIdx) self._markVisited(tabIdx, model) with settings.dailyQuestSettings() as dq: dq.setLastVisitedDQTab(tabIdx)