- matches = 0;
- for(it = dict_first(handle_dnrs); it; it = iter_next(it))
- {
- dnr = iter_data(it);
- if(dnr->expires && dnr->expires <= now)
- continue;
- else if(dnr->expires)
- intervalString(buf2, dnr->expires - now, user->handle_info);
-
- if(dnr->set)
- reply("CSMSG_DNR_INFO_SET", dnr->chan_name, intervalString(buf, now - dnr->set, user->handle_info), dnr->setter, (dnr->expires ? buf2 : "never"), dnr->reason);
- else
- reply("CSMSG_DNR_INFO", dnr->chan_name, dnr->setter, (dnr->expires ? buf2 : "never"), dnr->reason);
- matches++;
- }
- for(it = dict_first(plain_dnrs); it; it = iter_next(it))
- {
- dnr = iter_data(it);
- if(dnr->expires && dnr->expires <= now)
- continue;
- else if(dnr->expires)
- intervalString(buf2, dnr->expires - now, user->handle_info);
-
- if(dnr->set)
- reply("CSMSG_DNR_INFO_SET", dnr->chan_name, intervalString(buf, now - dnr->set, user->handle_info), dnr->setter, (dnr->expires ? buf2 : "never"), dnr->reason);
- else
- reply("CSMSG_DNR_INFO", dnr->chan_name, dnr->setter, (dnr->expires ? buf2 : "never"), dnr->reason);
- matches++;
- }
- for(it = dict_first(mask_dnrs); it; it = iter_next(it))
- {
- dnr = iter_data(it);
- if(dnr->expires && dnr->expires <= now)
- continue;
- else if(dnr->expires)
- intervalString(buf2, dnr->expires - now, user->handle_info);
-
- if(dnr->set)
- reply("CSMSG_DNR_INFO_SET", dnr->chan_name, intervalString(buf, now - dnr->set, user->handle_info), dnr->setter, (dnr->expires ? buf2 : "never"), dnr->reason);
- else
- reply("CSMSG_DNR_INFO", dnr->chan_name, dnr->setter, (dnr->expires ? buf2 : "never"), dnr->reason);
- matches++;
- }
-
+ matches = send_dnrs(user, cmd, handle_dnrs);
+ matches += send_dnrs(user, cmd, plain_dnrs);
+ matches += send_dnrs(user, cmd, mask_dnrs);