-void ClientIgnoreListManager::ignoreListUpdated(const QVariantMap &newMap) {
- if(newMap != initIgnoreList())
- emit ignoreListChanged();
+
+QMap<QString, bool> ClientIgnoreListManager::matchingRulesForHostmask(const QString &hostmask, const QString &network, const QString &channel) const
+{
+ QMap<QString, bool> result;
+ foreach(IgnoreListItem item, ignoreList()) {
+ if (item.type == SenderIgnore && pureMatch(item, hostmask)
+ && ((network.isEmpty() && channel.isEmpty()) || item.scope == GlobalScope || (item.scope == NetworkScope && scopeMatch(item.scopeRule, network))
+ || (item.scope == ChannelScope && scopeMatch(item.scopeRule, channel)))) {
+ result[item.ignoreRule] = item.isActive;
+// qDebug() << "matchingRulesForHostmask found: " << item.ignoreRule << "is active: " << item.isActive;
+ }
+ }
+ return result;