Added cmd_statuses validation tests
This commit is contained in:
@@ -755,13 +755,24 @@ static struct cmd_t command_defs[] =
|
||||
|
||||
|
||||
{ "/statuses",
|
||||
cmd_statuses, parse_args, 1, 1, &cons_statuses_setting,
|
||||
{ "/statuses on|off", "Set notifications for status messages.",
|
||||
{ "/statuses on|off",
|
||||
"----------------",
|
||||
"Show status updates from contacts, such as online/offline/away etc.",
|
||||
"When disabled, status updates are not displayed.",
|
||||
"The default is 'on'.",
|
||||
cmd_statuses, parse_args, 2, 2, &cons_statuses_setting,
|
||||
{ "/statuses console|chat|muc setting", "Set preferences for presence change messages.",
|
||||
{ "/statuses console|chat|muc setting",
|
||||
"----------------------------------",
|
||||
"Configure how presence changes are displayed in various windows.",
|
||||
"Settings for the console:",
|
||||
"all - Show all presence changes in the console",
|
||||
"online - Show only when contacts log in/out.",
|
||||
"none - Don't show any presence changes in the console.",
|
||||
"Settings for chat windows:",
|
||||
"all - Show all presence changes in the contact's chat window if one is open.",
|
||||
"online - Show only when contacts log in/out.",
|
||||
"none - Don't show any presence changes in the chat windows.",
|
||||
"Settings for chat room windows:",
|
||||
"on - Show presence changes in chat rooms.",
|
||||
"off - Do not show presence changes in chat rooms (user entering/leaving are still displayed).",
|
||||
"The defaults are:",
|
||||
"console - all, chat - all, muc - on.",
|
||||
NULL } } },
|
||||
|
||||
{ "/away",
|
||||
|
||||
@@ -2253,8 +2253,27 @@ cmd_priority(gchar **args, struct cmd_help_t help)
|
||||
gboolean
|
||||
cmd_statuses(gchar **args, struct cmd_help_t help)
|
||||
{
|
||||
return _cmd_set_boolean_preference(args[0], help,
|
||||
"Status notifications", PREF_STATUSES);
|
||||
if (strcmp(args[0], "console") != 0 &&
|
||||
strcmp(args[0], "chat") != 0 &&
|
||||
strcmp(args[0], "muc") != 0) {
|
||||
cons_show("Usage: %s", help.usage);
|
||||
}
|
||||
|
||||
if (strcmp(args[0], "console") == 0 || strcmp(args[0], "chat") == 0) {
|
||||
if (strcmp(args[1], "all") != 0 &&
|
||||
strcmp(args[1], "online") != 0 &&
|
||||
strcmp(args[1], "none") != 0) {
|
||||
cons_show("Usage: %s", help.usage);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (strcmp(args[0], "muc") == 0) {
|
||||
if (strcmp(args[1], "on") != 0 && strcmp(args[1], "off") != 0) {
|
||||
cons_show("Usage: %s", help.usage);
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
|
||||
Reference in New Issue
Block a user