|
@@ -2,9 +2,7 @@ import Foundation
|
|
|
import UIKit
|
|
|
|
|
|
class AvatarHelper {
|
|
|
-
|
|
|
- static let groupTemplate: NSString = "group_chat_avatar_%1$@.jpg"
|
|
|
- static let selfAvatarFile = "contact_avatar_self.jpg"
|
|
|
+ static let tmpFile = "tempAvatar.jpg"
|
|
|
private static let avatarPath = "avatars"
|
|
|
|
|
|
enum FileError: Error {
|
|
@@ -13,32 +11,31 @@ class AvatarHelper {
|
|
|
|
|
|
static func saveSelfAvatarImage(image: UIImage) {
|
|
|
do {
|
|
|
- let avatarFile = try saveAvatarImageToFile(image: image, fileName: selfAvatarFile)
|
|
|
+ let avatarFile = try saveAvatarImageToFile(image: image)
|
|
|
DcConfig.selfavatar = avatarFile.path
|
|
|
- //deleteAvatarFile(avatarFile)
|
|
|
+ deleteAvatarFile(avatarFile)
|
|
|
} catch let error {
|
|
|
logger.error("Error saving Image: \(error.localizedDescription)")
|
|
|
}
|
|
|
}
|
|
|
|
|
|
static func saveChatAvatar(dcContext: DcContext, image: UIImage, for chatId: Int) {
|
|
|
- let formattedGroupFileName = NSString.init(format: groupTemplate, "\(chatId)")
|
|
|
do {
|
|
|
- let groupFileName = try saveAvatarImageToFile(image: image, fileName: formattedGroupFileName as String)
|
|
|
+ let groupFileName = try saveAvatarImageToFile(image: image)
|
|
|
dcContext.saveChatAvatarImage(chatId: chatId, path: groupFileName.path)
|
|
|
- //deleteAvatarFile(groupFileName)
|
|
|
+ deleteAvatarFile(groupFileName)
|
|
|
} catch let error {
|
|
|
logger.error("Error saving Image: \(error.localizedDescription)")
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
- private static func saveAvatarImageToFile(image: UIImage, fileName: String) throws -> URL {
|
|
|
+ private static func saveAvatarImageToFile(image: UIImage) throws -> URL {
|
|
|
if let data = image.jpegData(compressionQuality: 1.0) {
|
|
|
let filemanager = FileManager.default
|
|
|
let docDir = filemanager.urls(for: .documentDirectory, in: .userDomainMask)[0]
|
|
|
let avatarDir = docDir.appendingPathComponent(avatarPath)
|
|
|
- let avatarFile = avatarDir.appendingPathComponent(selfAvatarFile)
|
|
|
+ let avatarFile = avatarDir.appendingPathComponent(tmpFile)
|
|
|
|
|
|
if !filemanager.fileExists(atPath: avatarDir.path) {
|
|
|
try filemanager.createDirectory(atPath: avatarDir.path, withIntermediateDirectories: false)
|