src/global.h (MESSAGE_RECIPIENT_ANNOUNCE): Remove.
src/global.c (KEY_ANNOUNCEMENTS_DEFAULT): Remove.
(global_conf): Remove announcements_default field.
(message_create): Do not recognize "announce[ment]" target.
(messageType): Remove MESSAGE_RECIPIENT_ANNOUNCE condition.
(message_send): Remove MESSAGE_RECIPIENT_ANNOUNCE condition.
(cmd_notice): Do not recognize "announce[ment]" target.
(global_conf_read): Do not look up announcements_default key.
src/global.help (TARGET): Remove ANNOUNCEMENT target.
src/nickserv.h (struct handle_info): Remove announcements field.
src/nickserv.c (KEY_ANNOUNCEMENTS): Remove.
("NSMSG_INVALID_ANNOUNCE"): Remove.
("NSMSG_SET_ANNOUNCEMENTS"): Remove.
(register_handle): Do not assign to hi->announcements.
(set_list): Remove ANNOUNCEMENTS from the default list.
(opt_announcements): Remove.
(nickserv_saxdb_write): Remove announcements code.
(nickserv_db_read_handle): Remove announcements code.
(init_nickserv): Do not register opt_announcements function.
nickserv.help (SET): Remove ANNOUNCEMENTS option.
/* Global options */
#define KEY_DB_BACKUP_FREQ "db_backup_freq"
-#define KEY_ANNOUNCEMENTS_DEFAULT "announcements_default"
#define KEY_NICK "nick"
/* Message data */
static struct
{
unsigned long db_backup_frequency;
- unsigned int announcements_default : 1;
} global_conf;
#define global_notice(target, format...) send_message(target , global , ## format)
flags |= MESSAGE_RECIPIENT_STAFF;
} else if(!irccasecmp(argv[i], "channels")) {
flags |= MESSAGE_RECIPIENT_CHANNELS;
- } else if(!irccasecmp(argv[i], "announcement") || !irccasecmp(argv[i], "announce")) {
- flags |= MESSAGE_RECIPIENT_ANNOUNCE;
} else {
global_notice(user, "GMSG_INVALID_TARGET", argv[i]);
return NULL;
{
return "staff";
}
- else if(message->flags & MESSAGE_RECIPIENT_ANNOUNCE)
- {
- return "announcement";
- }
else if(message->flags & MESSAGE_RECIPIENT_OPERS)
{
return "opers";
{
struct userNode *user;
unsigned long n;
- dict_iterator_t it;
if(message->flags & MESSAGE_RECIPIENT_CHANNELS)
{
return;
}
- if(message->flags & MESSAGE_RECIPIENT_ANNOUNCE)
- {
- char announce;
-
- for (it = dict_first(clients); it; it = iter_next(it)) {
- user = iter_data(it);
- if (user->uplink == self) continue;
- announce = user->handle_info ? user->handle_info->announcements : '?';
- if (announce == 'n') continue;
- if ((announce == '?') && !global_conf.announcements_default) continue;
- notice_target(user->nick, message);
- }
- }
-
if(message->flags & MESSAGE_RECIPIENT_OPERS)
{
for(n = 0; n < curr_opers.used; n++)
target = MESSAGE_RECIPIENT_OPERS;
} else if(!irccasecmp(argv[1], "staff") || !irccasecmp(argv[1], "privileged")) {
target |= MESSAGE_RECIPIENT_HELPERS | MESSAGE_RECIPIENT_OPERS;
- } else if(!irccasecmp(argv[1], "announcement") || !irccasecmp(argv[1], "announce")) {
- target |= MESSAGE_RECIPIENT_ANNOUNCE;
} else if(!irccasecmp(argv[1], "channels")) {
target = MESSAGE_RECIPIENT_CHANNELS;
} else {
str = database_get_data(conf_node, KEY_DB_BACKUP_FREQ, RECDB_QSTRING);
global_conf.db_backup_frequency = str ? ParseInterval(str) : 7200;
- str = database_get_data(conf_node, KEY_ANNOUNCEMENTS_DEFAULT, RECDB_QSTRING);
- global_conf.announcements_default = str ? enabled_string(str) : 1;
str = database_get_data(conf_node, KEY_NICK, RECDB_QSTRING);
if(global && str)
#define MESSAGE_RECIPIENT_HELPERS 0x002
#define MESSAGE_RECIPIENT_OPERS 0x004
#define MESSAGE_RECIPIENT_CHANNELS 0x008
-#define MESSAGE_RECIPIENT_ANNOUNCE 0x040
#define MESSAGE_OPTION_SOURCELESS 0x010
#define MESSAGE_OPTION_IMMEDIATE 0x020
"TARGET" ("$bTARGET$b",
"$bTarget$b is used as a sub-command in many commands. It's values are:",
"$bUSERS$b: The message will be sent to all users on the network including opers and helpers, but not channels.",
- "$bANNOUNCEMENT$b: The message will be sent to all users who are configured to receive community announcements.",
"$bHELPERS$b: The message will be sent to helpers only.",
"$bOPERS$b: The message will be sent to opers only.",
"$bSTAFF$b: The message will be sent to helpers and opers.",
#define KEY_ALLOWAUTH "allowauth"
#define KEY_EPITHET "epithet"
#define KEY_TABLE_WIDTH "table_width"
-#define KEY_ANNOUNCEMENTS "announcements"
#define KEY_MAXLOGINS "maxlogins"
#define KEY_FAKEHOST "fakehost"
#define KEY_NOTES "notes"
{ "NSMSG_CLONE_AUTH", "Warning: %s (%s@%s) authed to your account." },
{ "NSMSG_SETTING_LIST", "$b$N account settings:$b" },
{ "NSMSG_INVALID_OPTION", "$b%s$b is an invalid account setting." },
- { "NSMSG_INVALID_ANNOUNCE", "$b%s$b is an invalid announcements value." },
{ "NSMSG_SET_INFO", "$bINFO: $b%s" },
{ "NSMSG_SET_WIDTH", "$bWIDTH: $b%d" },
{ "NSMSG_SET_TABLEWIDTH", "$bTABLEWIDTH: $b%d" },
{ "NSMSG_SET_COLOR", "$bCOLOR: $b%s" },
{ "NSMSG_SET_PRIVMSG", "$bPRIVMSG: $b%s" },
{ "NSMSG_SET_STYLE", "$bSTYLE: $b%s" },
- { "NSMSG_SET_ANNOUNCEMENTS", "$bANNOUNCEMENTS: $b%s" },
{ "NSMSG_SET_PASSWORD", "$bPASSWORD: $b%s" },
{ "NSMSG_SET_FLAGS", "$bFLAGS: $b%s" },
{ "NSMSG_SET_EMAIL", "$bEMAIL: $b%s" },
hi = calloc(1, sizeof(*hi));
hi->userlist_style = HI_DEFAULT_STYLE;
- hi->announcements = '?';
hi->handle = strdup(handle);
safestrncpy(hi->passwd, passwd, sizeof(hi->passwd));
hi->infoline = NULL;
unsigned int i;
char *set_display[] = {
"INFO", "WIDTH", "TABLEWIDTH", "COLOR", "PRIVMSG", "STYLE",
- "EMAIL", "ANNOUNCEMENTS", "MAXLOGINS", "LANGUAGE"
+ "EMAIL", "MAXLOGINS", "LANGUAGE"
};
send_message(user, nickserv, "NSMSG_SETTING_LIST");
return 1;
}
-static OPTION_FUNC(opt_announcements)
-{
- const char *choice;
-
- if (argc > 1) {
- if (enabled_string(argv[1]))
- hi->announcements = 'y';
- else if (disabled_string(argv[1]))
- hi->announcements = 'n';
- else if (!strcmp(argv[1], "?") || !irccasecmp(argv[1], "default"))
- hi->announcements = '?';
- else {
- send_message(user, nickserv, "NSMSG_INVALID_ANNOUNCE", argv[1]);
- return 0;
- }
- }
-
- switch (hi->announcements) {
- case 'y': choice = user_find_message(user, "MSG_ON"); break;
- case 'n': choice = user_find_message(user, "MSG_OFF"); break;
- case '?': choice = "default"; break;
- default: choice = "unknown"; break;
- }
- send_message(user, nickserv, "NSMSG_SET_ANNOUNCEMENTS", choice);
- return 1;
-}
-
static OPTION_FUNC(opt_password)
{
if (!override) {
assert(hi->id);
#endif
saxdb_start_record(ctx, iter_key(it), 0);
- if (hi->announcements != '?') {
- flags[0] = hi->announcements;
- flags[1] = 0;
- saxdb_write_string(ctx, KEY_ANNOUNCEMENTS, flags);
- }
if (hi->cookie) {
struct handle_cookie *cookie = hi->cookie;
char *type;
}
str = database_get_data(obj, KEY_USERLIST_STYLE, RECDB_QSTRING);
hi->userlist_style = str ? str[0] : HI_STYLE_ZOOT;
- str = database_get_data(obj, KEY_ANNOUNCEMENTS, RECDB_QSTRING);
- hi->announcements = str ? str[0] : '?';
str = database_get_data(obj, KEY_SCREEN_WIDTH, RECDB_QSTRING);
hi->screen_width = str ? strtoul(str, NULL, 0) : 0;
str = database_get_data(obj, KEY_TABLE_WIDTH, RECDB_QSTRING);
dict_insert(nickserv_opt_dict, "TITLE", opt_title);
dict_insert(nickserv_opt_dict, "FAKEHOST", opt_fakehost);
}
- dict_insert(nickserv_opt_dict, "ANNOUNCEMENTS", opt_announcements);
dict_insert(nickserv_opt_dict, "MAXLOGINS", opt_maxlogins);
dict_insert(nickserv_opt_dict, "LANGUAGE", opt_language);
dict_insert(nickserv_opt_dict, "KARMA", opt_karma);
unsigned short screen_width;
unsigned short table_width;
unsigned char userlist_style;
- unsigned char announcements;
unsigned char maxlogins;
char passwd[MD5_CRYPT_LENGTH+1];
char last_quit_host[USERLEN+HOSTLEN+2];
"/services/nickserv/email_enabled && /services/nickserv/disable_nicks" (
"/msg $N SET [<setting> [value]]",
"Changes your account settings for srvx. Settings are:",
- "$bANNOUNCEMENTS$b: Indicates whether you wish to receive community announcements via the $G service.",
"$bCOLOR$b: If set, $b$N$b and $b$C$b will use $bbold$b and $uunderlines$u in text they send you.",
"$bEMAIL$b: Sets (or changes) your email address.",
"$bINFO$b: Your infoline for $b$N$b (which can be viewed with the $baccountinfo$b command).",
"/services/nickserv/email_enabled && !/services/nickserv/disable_nicks" (
"/msg $N SET [<setting> [value]]",
"Changes your account settings for srvx. Settings are:",
- "$bANNOUNCEMENTS$b: Indicates whether you wish to receive community announcements via the $G service.",
"$bCOLOR$b: If set, $b$N$b and $b$C$b will use $bbold$b and $uunderlines$u in text they send you.",
"$bEMAIL$b: Sets (or changes) your email address.",
"$bINFO$b: Your infoline for $b$N$b (which can be viewed with the $baccountinfo$b command).",
"!/services/nickserv/email_enabled && /services/nickserv/disable_nicks" (
"/msg $N SET [<setting> [value]]",
"Changes your account settings for srvx. Settings are:",
- "$bANNOUNCEMENTS$b: Indicates whether you wish to receive community announcements via the $G service.",
"$bCOLOR$b: If set, $b$N$b and $b$C$b will use $bbold$b and $uunderlines$u in text they send you.",
"$bINFO$b: Your infoline for $b$N$b (which can be viewed with the $baccountinfo$b command).",
"$bLANGUAGE$b: Your preferred language for private messages from the services.",
"!/services/nickserv/email_enabled && !/services/nickserv/disable_nicks" (
"/msg $N SET [<setting> [value]]",
"Changes your account settings for srvx. Settings are:",
- "$bANNOUNCEMENTS$b: Indicates whether you wish to receive community announcements via the $G service.",
"$bCOLOR$b: If set, $b$N$b and $b$C$b will use $bbold$b and $uunderlines$u in text they send you.",
"$bINFO$b: Your infoline for $b$N$b (which can be viewed with the $baccountinfo$b command).",
"$bLANGUAGE$b: Your preferred language for private messages from the services.",