diff options
-rw-r--r-- | modules/commands/ns_alist.cpp | 6 | ||||
-rw-r--r-- | modules/extra/webcpanel/pages/chanserv/utils.cpp | 10 |
2 files changed, 16 insertions, 0 deletions
diff --git a/modules/commands/ns_alist.cpp b/modules/commands/ns_alist.cpp index 2d7b02cfd..d9e91af52 100644 --- a/modules/commands/ns_alist.cpp +++ b/modules/commands/ns_alist.cpp @@ -13,6 +13,11 @@ class CommandNSAList : public Command { + static bool ChannelSort(ChannelInfo *ci1, ChannelInfo *ci2) + { + return ci::less()(ci1->name, ci2->name); + } + public: CommandNSAList(Module *creator) : Command(creator, "nickserv/alist", 0, 2) { @@ -46,6 +51,7 @@ class CommandNSAList : public Command std::deque<ChannelInfo *> queue; nc->GetChannelReferences(queue); + std::sort(queue.begin(), queue.end(), ChannelSort); if (queue.empty()) { diff --git a/modules/extra/webcpanel/pages/chanserv/utils.cpp b/modules/extra/webcpanel/pages/chanserv/utils.cpp index 71d44ef6e..b0edece9f 100644 --- a/modules/extra/webcpanel/pages/chanserv/utils.cpp +++ b/modules/extra/webcpanel/pages/chanserv/utils.cpp @@ -7,6 +7,14 @@ #include "../../webcpanel.h" +namespace +{ + bool ChannelSort(ChannelInfo *ci1, ChannelInfo *ci2) + { + return ci::less()(ci1->name, ci2->name); + } +} + namespace WebCPanel { @@ -17,6 +25,8 @@ void BuildChanList(NickAlias *na, TemplateFileServer::Replacements &replacements { std::deque<ChannelInfo *> queue; na->nc->GetChannelReferences(queue); + std::sort(queue.begin(), queue.end(), ChannelSort); + for (unsigned i = 0; i < queue.size(); ++i) { ChannelInfo *ci = queue[i]; |