]> granicus.if.org Git - ejabberd/commitdiff
Add support to delete content and delete table.
authorBadlop <badlop@process-one.net>
Thu, 23 Jul 2009 15:23:02 +0000 (15:23 +0000)
committerBadlop <badlop@process-one.net>
Thu, 23 Jul 2009 15:23:02 +0000 (15:23 +0000)
SVN Revision: 2388

src/web/ejabberd_web_admin.erl

index c24aa6a7ce54bc0f0b3c703012deaa9ee00652a4..cc5ee59ab2d31d704f99a83035b769fc7f9b662b 100644 (file)
@@ -2196,7 +2196,9 @@ db_storage_select(ID, Opt, Lang) ->
           end, [{ram_copies, "RAM copy"},
                 {disc_copies, "RAM and disc copy"},
                 {disc_only_copies, "Disc only copy"},
-                {unknown, "Remote copy"}])).
+                {unknown, "Remote copy"},
+                {delete_content, "Delete content"},
+                {delete_table, "Delete table"}])).
 
 node_db_parse_query(_Node, _Tables, [{nokey,[]}]) ->
     nothing;
@@ -2211,11 +2213,17 @@ node_db_parse_query(Node, Tables, Query) ->
                                 "ram_copies" -> ram_copies;
                                 "disc_copies" -> disc_copies;
                                 "disc_only_copies" -> disc_only_copies;
+                                "delete_content" -> delete_content;
+                                "delete_table" -> delete_table;
                                 _ -> false
                             end,
                      if
                          Type == false ->
                              ok;
+                         Type == delete_content ->
+                             mnesia:clear_table(Table);
+                         Type == delete_table ->
+                             mnesia:delete_table(Table);
                          Type == unknown ->
                              mnesia:del_table_copy(Table, Node);
                          true ->