2023-09-03 10:00:12 -07:00
|
|
|
//
|
|
|
|
|
// MyInfoEntityExtension.swift
|
|
|
|
|
// Meshtastic
|
|
|
|
|
//
|
|
|
|
|
// Copyright(c) Garth Vander Houwen 9/3/23.
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
|
|
|
|
|
extension MyInfoEntity {
|
2024-05-29 16:40:07 -05:00
|
|
|
|
2023-09-03 10:00:12 -07:00
|
|
|
var messageList: [MessageEntity] {
|
|
|
|
|
self.value(forKey: "allMessages") as? [MessageEntity] ?? [MessageEntity]()
|
|
|
|
|
}
|
2024-05-29 16:40:07 -05:00
|
|
|
|
2023-09-03 10:00:12 -07:00
|
|
|
var unreadMessages: Int {
|
2024-05-29 16:40:07 -05:00
|
|
|
let unreadMessages = messageList.filter { ($0 as AnyObject).read == false && ($0 as AnyObject).isEmoji == false }
|
2023-09-03 10:00:12 -07:00
|
|
|
return unreadMessages.count
|
|
|
|
|
}
|
2024-04-15 17:31:53 -07:00
|
|
|
var hasAdmin: Bool {
|
2024-05-29 16:40:07 -05:00
|
|
|
let adminChannel = channels?.filter { ($0 as AnyObject).name?.lowercased() == "admin" }
|
2024-04-15 17:31:53 -07:00
|
|
|
return adminChannel?.count ?? 0 > 0
|
|
|
|
|
}
|
2023-09-03 10:00:12 -07:00
|
|
|
}
|