fix privacy settings
This commit is contained in:
parent
997ddea9c4
commit
b1d9112806
@ -434,7 +434,7 @@
|
|||||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||||
CODE_SIGN_ENTITLEMENTS = yobble/yobble.entitlements;
|
CODE_SIGN_ENTITLEMENTS = yobble/yobble.entitlements;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 9;
|
CURRENT_PROJECT_VERSION = 11;
|
||||||
DEVELOPMENT_TEAM = V22H44W47J;
|
DEVELOPMENT_TEAM = V22H44W47J;
|
||||||
ENABLE_HARDENED_RUNTIME = YES;
|
ENABLE_HARDENED_RUNTIME = YES;
|
||||||
ENABLE_PREVIEWS = YES;
|
ENABLE_PREVIEWS = YES;
|
||||||
@ -475,7 +475,7 @@
|
|||||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||||
CODE_SIGN_ENTITLEMENTS = yobble/yobble.entitlements;
|
CODE_SIGN_ENTITLEMENTS = yobble/yobble.entitlements;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 9;
|
CURRENT_PROJECT_VERSION = 11;
|
||||||
DEVELOPMENT_TEAM = V22H44W47J;
|
DEVELOPMENT_TEAM = V22H44W47J;
|
||||||
ENABLE_HARDENED_RUNTIME = YES;
|
ENABLE_HARDENED_RUNTIME = YES;
|
||||||
ENABLE_PREVIEWS = YES;
|
ENABLE_PREVIEWS = YES;
|
||||||
|
|||||||
@ -70,35 +70,27 @@ struct EditPrivacyView: View {
|
|||||||
Toggle(NSLocalizedString("Показывать био не-контактам", comment: ""), isOn: $profilePermissions.showBioToNonContacts)
|
Toggle(NSLocalizedString("Показывать био не-контактам", comment: ""), isOn: $profilePermissions.showBioToNonContacts)
|
||||||
Toggle(NSLocalizedString("Показывать сторисы не-контактам", comment: ""), isOn: $profilePermissions.showStoriesToNonContacts)
|
Toggle(NSLocalizedString("Показывать сторисы не-контактам", comment: ""), isOn: $profilePermissions.showStoriesToNonContacts)
|
||||||
|
|
||||||
Picker(NSLocalizedString("Видимость статуса 'был в сети'", comment: ""), selection: $profilePermissions.lastSeenVisibility) {
|
privacyScopePicker(
|
||||||
ForEach(privacyScopeOptions) { scope in
|
title: NSLocalizedString("Видимость статуса 'был в сети'", comment: ""),
|
||||||
Text(scope.title).tag(scope.rawValue)
|
selection: $profilePermissions.lastSeenVisibility
|
||||||
}
|
)
|
||||||
}
|
|
||||||
.pickerStyle(.segmented)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Section(header: Text(NSLocalizedString("Приглашения и звонки", comment: ""))) {
|
Section(header: Text(NSLocalizedString("Приглашения и звонки", comment: ""))) {
|
||||||
Picker(NSLocalizedString("Кто может приглашать в паблики", comment: ""), selection: $profilePermissions.publicInvitePermission) {
|
privacyScopePicker(
|
||||||
ForEach(privacyScopeOptions) { scope in
|
title: NSLocalizedString("Кто может приглашать в паблики", comment: ""),
|
||||||
Text(scope.title).tag(scope.rawValue)
|
selection: $profilePermissions.publicInvitePermission
|
||||||
}
|
)
|
||||||
}
|
|
||||||
.pickerStyle(.segmented)
|
|
||||||
|
|
||||||
Picker(NSLocalizedString("Кто может приглашать в беседы", comment: ""), selection: $profilePermissions.groupInvitePermission) {
|
privacyScopePicker(
|
||||||
ForEach(privacyScopeOptions) { scope in
|
title: NSLocalizedString("Кто может приглашать в беседы", comment: ""),
|
||||||
Text(scope.title).tag(scope.rawValue)
|
selection: $profilePermissions.groupInvitePermission
|
||||||
}
|
)
|
||||||
}
|
|
||||||
.pickerStyle(.segmented)
|
|
||||||
|
|
||||||
Picker(NSLocalizedString("Кто может звонить", comment: ""), selection: $profilePermissions.callPermission) {
|
privacyScopePicker(
|
||||||
ForEach(privacyScopeOptions) { scope in
|
title: NSLocalizedString("Кто может звонить", comment: ""),
|
||||||
Text(scope.title).tag(scope.rawValue)
|
selection: $profilePermissions.callPermission
|
||||||
}
|
)
|
||||||
}
|
|
||||||
.pickerStyle(.segmented)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Section(header: Text(NSLocalizedString("Чаты и хранение", comment: ""))) {
|
Section(header: Text(NSLocalizedString("Чаты и хранение", comment: ""))) {
|
||||||
@ -192,6 +184,24 @@ struct EditPrivacyView: View {
|
|||||||
return "\(secondsString) (≈ \(formattedHours) ч.)"
|
return "\(secondsString) (≈ \(formattedHours) ч.)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ViewBuilder
|
||||||
|
private func privacyScopePicker(title: String, selection: Binding<Int>) -> some View {
|
||||||
|
VStack(alignment: .leading, spacing: 6) {
|
||||||
|
Text(title)
|
||||||
|
.font(.body)
|
||||||
|
.foregroundColor(.primary)
|
||||||
|
|
||||||
|
Picker("", selection: selection) {
|
||||||
|
ForEach(privacyScopeOptions) { scope in
|
||||||
|
Text(scope.title).tag(scope.rawValue)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.pickerStyle(.segmented)
|
||||||
|
}
|
||||||
|
.frame(maxWidth: .infinity, alignment: .leading)
|
||||||
|
.padding(.vertical, 4)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private enum PrivacyScope: Int, CaseIterable, Identifiable {
|
private enum PrivacyScope: Int, CaseIterable, Identifiable {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user