aboutsummaryrefslogtreecommitdiff
path: root/src/mod_offline_odbc.erl
diff options
context:
space:
mode:
authorBadlop <badlop@process-one.net>2010-01-12 12:02:50 +0000
committerBadlop <badlop@process-one.net>2010-01-12 12:02:50 +0000
commitee77257d41e8c4dc45ccf8c5bb4963e887786ef0 (patch)
tree254285d514c161ae9980e2a27f6a4bd0cb863891 /src/mod_offline_odbc.erl
parentfix headers (EJAB-1091), (EJAB-1092), (EJAB-1093) (thanks to Karim Gemayel) (diff)
Support in user list page of WebAdmin when mod_offline is disabled (EJAB-377)
SVN Revision: 2877
Diffstat (limited to '')
-rw-r--r--src/mod_offline_odbc.erl16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/mod_offline_odbc.erl b/src/mod_offline_odbc.erl
index d7bbd3bf3..7f37340ad 100644
--- a/src/mod_offline_odbc.erl
+++ b/src/mod_offline_odbc.erl
@@ -38,6 +38,7 @@
pop_offline_messages/3,
get_sm_features/5,
remove_user/2,
+ get_queue_length/2,
webadmin_page/3,
webadmin_user/4,
webadmin_user_parse_query/5]).
@@ -479,11 +480,8 @@ user_queue_parse_query(Username, LServer, Query) ->
us_to_list({User, Server}) ->
jlib:jid_to_string({User, Server, ""}).
-webadmin_user(Acc, User, Server, Lang) ->
- LUser = jlib:nodeprep(User),
- LServer = jlib:nameprep(Server),
- Username = ejabberd_odbc:escape(LUser),
- QueueLen = case catch ejabberd_odbc:sql_query(
+get_queue_length(Username, LServer) ->
+ case catch ejabberd_odbc:sql_query(
LServer,
["select count(*) from spool"
" where username='", Username, "';"]) of
@@ -491,7 +489,13 @@ webadmin_user(Acc, User, Server, Lang) ->
SCount;
_ ->
0
- end,
+ end.
+
+webadmin_user(Acc, User, Server, Lang) ->
+ LUser = jlib:nodeprep(User),
+ LServer = jlib:nameprep(Server),
+ Username = ejabberd_odbc:escape(LUser),
+ QueueLen = get_queue_length(Username, LServer),
FQueueLen = [?AC("queue/", QueueLen)],
Acc ++ [?XCT("h3", "Offline Messages:")] ++ FQueueLen ++ [?C(" "), ?INPUTT("submit", "removealloffline", "Remove All Offline Messages")].