MESSENGER-5304 refactoring and english translation

This commit is contained in:
JanNiklas Grabowski
2024-01-24 12:04:18 +01:00
parent 9e1890da78
commit ff4019f2c4
3 changed files with 23 additions and 12 deletions

View File

@@ -593,10 +593,10 @@
"create_room_failed_to_deactivate_federation_for_room_error_text" = "The federation could not be disabled, please try again later.";
"create_room_failed_to_deactivate_federation_alert_dismiss_button" = "Ok";
"room_admin_federation_decision_sheet_title" = "\"%@\" für eine Föderation zulassen?";
"room_admin_federation_decision_sheet_text" = "Hierdurch kann der Raum von externen Organisationen mitgenutzt werden. Dies kann nachträglich in den Einstellungen geändert werden.";
"room_admin_federation_decision_sheet_remind_later_button" = "Remind me later";
"room_admin_federation_decision_sheet_activate_federation_button" = "Federate room";
"room_admin_federation_decision_sheet_title" = "Approve \"%@\" for federation?";
"room_admin_federation_decision_sheet_text" = "This will enable external organizations to access the room. It can be reversed in the room settings afterwards.";
"room_admin_federation_decision_sheet_remind_later_button" = "Remind later";
"room_admin_federation_decision_sheet_activate_federation_button" = "Federrate room";
"room_admin_federation_decision_sheet_deactivate_federation_button" = "Keep room internal";
"room_admin_federation_decision_set_federation_error_alert_title" = "Fail to update";

View File

@@ -8248,14 +8248,24 @@ static CGSize kThreadListBarButtonItemImageSize;
if (!self.wasFederationDecisionSheetShownBefore && BWIBuildSettings.shared.isFederationEnabled && !self.roomDataSource.room.isDirect)
{
MXRoomPowerLevels *powerLevels = self.roomDataSource.roomState.powerLevels;
if ([powerLevels powerLevelOfUserWithUserID:self.mainSession.myUser.userId] == RoomPowerLevelAdmin)
if ([powerLevels powerLevelOfUserWithUserID:self.mainSession.myUser.userId] >= RoomPowerLevelAdmin)
{
[self.roomDataSource.room getCurrentRoomServerACLSettingsWithCompletion:^(NSString *serverACL)
{
if (serverACL == nil) {
self.wasFederationDecisionSheetShownBefore = true;
RoomFederationDecisionSheet *federationDecisionView = [[RoomFederationDecisionSheet alloc] init];
UIViewController *sheetViewController = [federationDecisionView makeViewControllerWithRoom:self.roomDataSource.room roomAvatarImage: ((RoomTitleView*)self.titleView).pictureView.image];
UIImage *roomAvatarImage;
MXKImageView *roomAvatarImageView = ((RoomTitleView*)self.titleView).pictureView;
if (roomAvatarImageView && roomAvatarImageView.image)
{
roomAvatarImage = roomAvatarImageView.image;
}
else
{
roomAvatarImage = [AvatarGenerator generateAvatarForMatrixItem:self.roomDataSource.roomId withDisplayName:self.roomDataSource.room.summary.displayName];
}
UIViewController *sheetViewController = [federationDecisionView makeViewControllerWithRoom:self.roomDataSource.room roomAvatarImage: roomAvatarImage];
sheetViewController.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentViewController:sheetViewController animated:YES completion:nil];
}

View File

@@ -51,14 +51,14 @@ struct RoomFederationDecisionView: View {
@Environment(\.dismiss) var dismissView
@State var isUpdatingServerACLs: Bool = false
@Binding var theme: Theme
@State var showSetServerACLFailedAlert: Bool = false
@State var showSetServerACLErrorAlert: Bool = false
var room: MXRoom
@State var pendingRequest: MXHTTPOperation?
var roomAvatarImage: UIImage
let imageStackScale = 0.30
let imageStackWithShift = 5.0
let imageStackShift = 5.0
let lineWith = 7.0
let spacing = 16.0
@@ -75,13 +75,13 @@ struct RoomFederationDecisionView: View {
.fill(Color(theme.colors.quinaryContent))
.overlay(Circle()
.stroke(Color(theme.colors.background), lineWidth: lineWith))
.offset(x:((getImageSize(width: geo.size.width, height: geo.size.height) * imageStackScale) / imageStackWithShift))
.offset(x:((getImageSize(width: geo.size.width, height: geo.size.height) * imageStackScale) / imageStackShift))
Image(uiImage: roomAvatarImage)
.resizable()
.clipShape(Circle())
.overlay(Circle()
.stroke(Color(theme.colors.background), lineWidth: lineWith))
.offset(x:-((getImageSize(width: geo.size.width, height: geo.size.height) * imageStackScale) / imageStackWithShift))
.offset(x:-((getImageSize(width: geo.size.width, height: geo.size.height) * imageStackScale) / imageStackShift))
}
.frame(width: getImageSize(width: geo.size.width, height: geo.size.height) * imageStackScale, height: getImageSize(width: geo.size.width, height: geo.size.height) * imageStackScale)
@@ -98,9 +98,10 @@ struct RoomFederationDecisionView: View {
}
.frame(minHeight: geo.size.height)
}
.interactiveDismissDisabled()
.frame(width: geo.size.width, height: geo.size.height)
.background(Color(theme.colors.background))
.alert(isPresented: $showSetServerACLFailedAlert) {
.alert(isPresented: $showSetServerACLErrorAlert) {
Alert(title: Text(BWIL10n.roomAdminFederationDecisionSetFederationErrorAlertTitle), message: Text(BWIL10n.roomAdminFederationDecisionSetFederationErrorAlertText), dismissButton: .default(Text("Ok")))
}
}
@@ -182,7 +183,7 @@ struct RoomFederationDecisionView: View {
closeView()
}
else {
showSetServerACLFailedAlert = true
showSetServerACLErrorAlert = true
}
}