]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-1742 - Make Voicemail use 1 SQL query instead of 4 to get the message count use...
authorcypromis <michal.bielicki@seventhsignal.de>
Mon, 7 Feb 2011 13:04:44 +0000 (14:04 +0100)
committercypromis <michal.bielicki@seventhsignal.de>
Mon, 7 Feb 2011 13:04:44 +0000 (14:04 +0100)
src/mod/applications/mod_voicemail/mod_voicemail.c

index 80b011e1890acd1ab84acb6f6704274ac7f6df05..f868c3a28483547816cb23af09631dbb42acb664 100644 (file)
@@ -1278,7 +1278,9 @@ static void message_count(vm_profile_t *profile, const char *id_in, const char *
        myid = resolve_id(id_in, domain_name, "message-count");
 
        switch_snprintf(sql, sizeof(sql),
-                                       "select read_epoch=0, read_flags, count(read_epoch) from voicemail_msgs where username='%s' and domain='%s' and in_folder='%s' group by read_epoch=0,read_flags;",
+                                       "select 1, read_flags, count(read_epoch) from voicemail_msgs where username='%s' and domain='%s' and in_folder='%s' and read_epoch=0 group by read_flags 
+                                       union 
+                                       select 0, read_flags, count(read_epoch) from voicemail_msgs where username='%s' and domain='%s' and in_folder='%s' and read_epoch<>0 group by read_flags;",     
                                        myid, domain_name, myfolder);
 
        vm_execute_sql_callback(profile, profile->mutex, sql, message_count_callback, &cbt);