in shared/src/commonMain/kotlin/org/jetbrains/kotlinconf/ConferenceService.kt [272:292]
fun setFavorite(sessionId: SessionId, favorite: Boolean) {
scope.launch {
val favorites = storage.getFavorites().first().toMutableSet()
if (favorite) favorites.add(sessionId) else favorites.remove(sessionId)
storage.setFavorites(favorites)
if (favorite) {
val session = sessionByIdFlow(sessionId).first()
if (session != null) {
scheduleNotification(
start = session.startsAt,
end = session.endsAt,
sessionId = session.id,
title = session.title,
)
}
} else {
cancelNotifications(sessionId)
}
}
}