1 local t_insert, t_concat = table.insert, table.concat; |
1 local t_insert, t_concat = table.insert, table.concat; |
|
2 local vcard_to_text = require"util.vcard".to_text; |
2 |
3 |
3 return function (opts, arg) |
4 return function (opts, arg) |
4 if opts.short_help then |
5 if opts.short_help then |
5 print("Fetch someones vCard or set your own"); |
6 print("Fetch someones vCard or set your own"); |
6 return; |
7 return; |
10 end |
11 end |
11 local function on_connect(conn) |
12 local function on_connect(conn) |
12 conn:add_plugin("vcard"); |
13 conn:add_plugin("vcard"); |
13 if not opts.set then -- get |
14 if not opts.set then -- get |
14 conn:get_vcard(arg[1], function(vCard) |
15 conn:get_vcard(arg[1], function(vCard) |
15 print(vCard and vCard._text or "No vCard returned") |
16 print(vCard and vcard_to_text(vCard) or "No vCard returned") |
16 conn:close(); |
17 conn:close(); |
17 end); |
18 end); |
18 else |
19 else |
19 conn:set_vcard(opts.stdin and io.stdin:read"*a" |
20 conn:set_vcard(opts.stdin and io.stdin:read"*a" |
20 or (opts.file and io.open(opts.file):read"*a") or arg[1], |
21 or (opts.file and io.open(opts.file):read"*a") or arg[1], |