diff mcabber/mcabber/commands.c @ 2120:8aa5e80aebce

add option 'show_room_occupants_count'
author sh!zeeg <shizeeque@gmail.com>
date Tue, 13 May 2014 20:24:51 +0400
parents 332818e5daa1
children 9c791e2a437a
line wrap: on
line diff
--- a/mcabber/mcabber/commands.c	Sun May 11 18:02:41 2014 +0200
+++ b/mcabber/mcabber/commands.c	Tue May 13 20:24:51 2014 +0400
@@ -2074,10 +2074,12 @@
   strncpy(buffer, "Room members:", 127);
   scr_WriteIncomingMessage(bjid, buffer, 0, HBB_PREFIX_INFO, 0);
 
+  int cnt = 0;
   resources = buddy_getresources(bud);
   for (p_res = resources ; p_res ; p_res = g_slist_next(p_res)) {
     enum imstatus rstatus;
     const char *rst_msg;
+    cnt++;
 
     rstatus = buddy_getstatus(bud, p_res->data);
     rst_msg = buddy_getstatusmsg(bud, p_res->data);
@@ -2124,6 +2126,12 @@
     }
     g_free(p_res->data);
   }
+  
+  if (settings_opt_get_int("show_room_occupants_count")) {
+    snprintf(buffer, 4095, "Total: %d", cnt);
+    scr_WriteIncomingMessage(bjid, buffer, 0, HBB_PREFIX_INFO, 0);
+  }
+  
   g_slist_free(resources);
   g_free(buffer);
 }