author | Myhailo Danylenko <isbear@ukrpost.net> |
Fri, 05 Mar 2010 19:15:08 +0200 | |
changeset 92 | 5d691423c8a6 |
parent 77 | 8a7f7829f4df |
child 99 | ed4676536ed9 |
permissions | -rw-r--r-- |
77
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
1 |
|
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
2 |
local lm = require 'lm' |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
3 |
local muc = require 'lm.muc' |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
4 |
|
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
5 |
main.command ( 'room-config', |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
6 |
function ( args ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
7 |
local who |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
8 |
if args then |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
9 |
who = args |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
10 |
else |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
11 |
who = main.current_buddy () |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
12 |
end |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
13 |
local conn = lm.connection.bless ( main.connection () ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
14 |
muc.owner_config ( conn, who, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
15 |
function ( form, submit, reject ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
16 |
insert_form ( form, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
17 |
function ( form ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
18 |
submit ( form, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
19 |
function () |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
20 |
main.print_info ( who, 'Room configuratino accepted' ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
21 |
end, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
22 |
function ( mesg ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
23 |
main.print_info ( who, ('Room configuration failed: %s'):format ( mesg ) ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
24 |
end ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
25 |
end, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
26 |
function ( form ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
27 |
reject ( form, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
28 |
function () |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
29 |
main.print_info ( who, 'Room configuration cancelled' ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
30 |
end, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
31 |
function ( mesg ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
32 |
main.print_info ( who, ('Room configuration cancellation failed: %s'):format ( mesg ) ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
33 |
end ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
34 |
end ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
35 |
end, |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
36 |
function ( mesg ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
37 |
main.print_info ( who, ('Room configutarion request failed: %s'):format ( mesg ) ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
38 |
end ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
39 |
end, false, 'jid' ) |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
40 |
|
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
41 |
commands_help['room-config'] = "[room_jid]\n\nRequests room configuration form from server. You must be owner of this room." |
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
42 |
|
8a7f7829f4df
Muc room configuration by owner
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff
changeset
|
43 |
-- vim: se ts=4: -- |