refactor: display options menu logic

This commit is contained in:
Aman Harwara
2023-10-19 19:20:55 +05:30
parent c0358882c6
commit a62ffc6cf9
2 changed files with 4 additions and 13 deletions

View File

@@ -93,7 +93,7 @@ const DisplayOptionsMenu: FunctionComponent<DisplayOptionsMenuProps> = ({
: selectedTag.preferences
const [currentMode, setCurrentMode] = useState<PreferenceMode>(selectedTagPreferences ? 'tag' : 'global')
const [preferences, setPreferences] = useState<TagPreferences>({})
const hasSubscription = application.subscriptionController.hasFirstPartySubscriptionOrOfflineRepo()
const hasSubscription = application.subscriptionController.hasFirstPartyOnlineOrOfflineSubscription()
const controlsDisabled = currentMode === 'tag' && !hasSubscription
const isDailyEntry = selectedTagPreferences?.entryMode === 'daily'

View File

@@ -89,20 +89,11 @@ export class SubscriptionController extends AbstractViewController implements In
}
hasFirstPartyOnlineOrOfflineSubscription(): boolean {
if (this.sessions.isSignedIn()) {
if (!this.sessions.isSignedIntoFirstPartyServer()) {
return false
}
return !!this.subscriptions.getOnlineSubscription()
} else {
const offline = this.features.hasFirstPartyOfflineSubscription()
const offline = this.features.hasFirstPartyOfflineSubscription()
if (!this.sessions.isSignedIn() || !this.sessions.isSignedIntoFirstPartyServer()) {
return offline
}
}
hasFirstPartySubscriptionOrOfflineRepo(): boolean {
return this.hasFirstPartyOnlineOrOfflineSubscription() || this.features.hasOfflineRepo()
return !!this.subscriptions.getOnlineSubscription() || offline
}
get usedInvitationsCount(): number {