From 5525260f78c1fcab1887cdc95ebcc6790fb34b5b Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 13 Jul 2017 20:50:34 +0300 Subject: Allow use different badges for each group in groups.xml --- src/resources/db/groupdb.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/resources/db/groupdb.cpp') diff --git a/src/resources/db/groupdb.cpp b/src/resources/db/groupdb.cpp index c65406841..bd78e117c 100644 --- a/src/resources/db/groupdb.cpp +++ b/src/resources/db/groupdb.cpp @@ -96,6 +96,9 @@ void GroupDb::loadXmlFile(const std::string &fileName, mGroups[id].longName = XML::langProperty(node, "longName", ""); + mGroups[id].badge = XML::langProperty(node, + "badge", + paths.getStringValue("gmbadge")); mGroups[id].showBadge = XML::getBoolProperty(node, "showBadge", false); @@ -142,6 +145,17 @@ bool GroupDb::getShowBadge(const int id) return (*it).second.showBadge; } +const std::string &GroupDb::getBadge(const int id) +{ + GroupInfos::const_iterator it = mGroups.find(id); + if (it == mGroups.end()) + { + reportAlways("Unknown group id requested: %d", id); + return mEmptyGroup.badge; + } + return (*it).second.badge; +} + #ifdef UNITTESTS GroupDb::GroupInfos &GroupDb::getGroups() { -- cgit v1.2.3-70-g09d2