degesch: stubplement /server

This commit is contained in:
Přemysl Eric Janouch 2015-07-04 22:28:59 +02:00
parent bda1239a33
commit 0ecd297c6f
1 changed files with 36 additions and 0 deletions

View File

@ -7084,6 +7084,38 @@ handle_command_disconnect (struct handler_args *a)
return true;
}
static void
show_servers_list (struct app_context *ctx)
{
log_global_indent (ctx, "");
log_global_indent (ctx, "Servers list:");
struct str_map_iter iter;
str_map_iter_init (&iter, &ctx->servers);
struct server *s;
while ((s = str_map_iter_next (&iter)))
log_global_indent (ctx, " #s", s->name);
}
static bool
handle_command_server (struct handler_args *a)
{
struct app_context *ctx = a->ctx;
char *action = cut_word (&a->arguments);
bool result = true;
if (!strcasecmp_ascii (action, "list"))
show_servers_list (ctx);
else if (!strcasecmp_ascii (action, "add"))
; // TODO: <name>
else if (!strcasecmp_ascii (action, "remove"))
; // TODO: <name>
else if (!strcasecmp_ascii (action, "rename"))
; // TODO: <old> <new>
else
result = false;
return result;
}
static bool
handle_command_names (struct handler_args *a)
{
@ -7275,12 +7307,16 @@ g_command_handlers[] =
"<user>... [<channel>]",
handle_command_invite, HANDLER_SERVER | HANDLER_CHANNEL_LAST },
{ "server", "Manage servers",
"list | add <name> | delete <name> | rename <old> <new>",
handle_command_server, 0 },
{ "connect", "Connect to the server",
"[<server>]",
handle_command_connect, 0 },
{ "disconnect", "Disconnect from the server",
"[<server> [<reason>]]",
handle_command_disconnect, 0 },
{ "list", "List channels and their topic",
"[<channel>[,<channel>...]] [<target>]",
handle_command_list, HANDLER_SERVER },