mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-17 23:18:27 +02:00
feat: small fixes (MESSENGER-7565)
This commit is contained in:
34
bwi/Extentions/MXUser+Username.swift
Normal file
34
bwi/Extentions/MXUser+Username.swift
Normal file
@@ -0,0 +1,34 @@
|
||||
//
|
||||
/*
|
||||
* Copyright (c) 2025 BWI GmbH
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import Foundation
|
||||
import MatrixSDK
|
||||
|
||||
|
||||
// bwi #7576 username is used in several places, create a helper
|
||||
// we need only the username part of the matrix id
|
||||
extension MXUser {
|
||||
func username () -> String? {
|
||||
if let fullID = self.userId {
|
||||
let withoutAt = fullID.hasPrefix("@") ? String(fullID.dropFirst()) : fullID
|
||||
if let username = withoutAt.split(separator: ":").first {
|
||||
return String(username)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
@@ -26,12 +26,9 @@ import MatrixSDK
|
||||
|
||||
var returnValue = false
|
||||
|
||||
if let fullID = session.myUser.userId {
|
||||
let withoutAt = fullID.hasPrefix("@") ? String(fullID.dropFirst()) : fullID
|
||||
if let username = withoutAt.split(separator: ":").first {
|
||||
let ossStatus = SharedKeychain.save(account: "migration_username", value: String(username))
|
||||
returnValue = ossStatus == errSecSuccess
|
||||
}
|
||||
if let username = session.myUser.username() {
|
||||
let ossStatus = SharedKeychain.save(account: "migration_username", value: String(username))
|
||||
returnValue = ossStatus == errSecSuccess
|
||||
}
|
||||
|
||||
return returnValue
|
||||
@@ -40,8 +37,8 @@ import MatrixSDK
|
||||
func storeHomeserver( session: MXSession ) -> Bool {
|
||||
var returnValue = false
|
||||
|
||||
if let displayname = session.matrixRestClient.homeserver {
|
||||
returnValue = SharedKeychain.save(account: "migration_homeserver", value: displayname) == errSecSuccess
|
||||
if let homeserver = session.matrixRestClient.homeserver {
|
||||
returnValue = SharedKeychain.save(account: "migration_homeserver", value: homeserver) == errSecSuccess
|
||||
}
|
||||
|
||||
return returnValue
|
||||
|
||||
@@ -38,13 +38,7 @@ enum SharedKeychain {
|
||||
let data = value.data(using: .utf8)!
|
||||
|
||||
// Delete existing item first
|
||||
let deleteQuery: [String: Any] = [
|
||||
kSecClass as String: kSecClassGenericPassword,
|
||||
kSecAttrAccount as String: account,
|
||||
kSecAttrService as String: SharedKeychainConfig.service,
|
||||
kSecAttrAccessGroup as String: SharedKeychainConfig.sharedGroup
|
||||
]
|
||||
SecItemDelete(deleteQuery as CFDictionary)
|
||||
SharedKeychain.delete(account: account)
|
||||
|
||||
// Add new value
|
||||
let addQuery: [String: Any] = [
|
||||
|
||||
Reference in New Issue
Block a user