Add search feature for Gotify alerts
This commit is contained in:
@@ -44,11 +44,16 @@ class MessagesProxyModel(QtCore.QSortFilterProxyModel):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.allowed_priorities = set(range(11)) # 0-10
|
||||
self.text_filter = ""
|
||||
|
||||
def set_allowed_priorities(self, priorities: set[int]):
|
||||
self.allowed_priorities = priorities
|
||||
self.invalidateFilter()
|
||||
|
||||
def set_text_filter(self, text: str):
|
||||
self.text_filter = text.lower()
|
||||
self.invalidateFilter()
|
||||
|
||||
def filterAcceptsRow(
|
||||
self, source_row: int, source_parent: QtCore.QModelIndex
|
||||
) -> bool:
|
||||
@@ -58,4 +63,9 @@ class MessagesProxyModel(QtCore.QSortFilterProxyModel):
|
||||
priority = message.priority if message.priority is not None else 0
|
||||
if self.allowed_priorities and priority not in self.allowed_priorities:
|
||||
return False
|
||||
if self.text_filter:
|
||||
title = (message.title or "").lower()
|
||||
msg = message.message.lower()
|
||||
if self.text_filter not in title and self.text_filter not in msg:
|
||||
return False
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user