X-Git-Url: https://jfr.im/git/irc/evilnet/x3.git/blobdiff_plain/30874d6682a37bc1d8f3d76fd90afde6a0f3fce7..HEAD:/src/mod-snoop.c diff --git a/src/mod-snoop.c b/src/mod-snoop.c index 15b5720..4eb3969 100644 --- a/src/mod-snoop.c +++ b/src/mod-snoop.c @@ -286,15 +286,16 @@ snoop_channel_mode(struct userNode *who, struct chanNode *channel, char **modes, static void snoop_conf_read(void) { dict_t node; - char *str; + char *str, *modes; node = conf_get_data("modules/snoop", RECDB_OBJECT); if (!node) return; str = database_get_data(node, "channel", RECDB_QSTRING); + modes = database_get_data(node, "channel_modes", RECDB_QSTRING); if (!str) return; - snoop_cfg.channel = AddChannel(str, now, "+sntim", NULL, NULL); + snoop_cfg.channel = AddChannel(str, now, (modes ? modes : "+sntim"), NULL, NULL); if (!snoop_cfg.channel) return; str = database_get_data(node, "show_bursts", RECDB_QSTRING); @@ -315,10 +316,10 @@ snoop_init(void) { reg_exit_func(snoop_cleanup, NULL); conf_register_reload(snoop_conf_read); reg_nick_change_func(snoop_nick_change, NULL); - reg_join_func(snoop_join, NULL); + reg_join_func_pos(snoop_join, NULL, EH_ADD_HEAD); reg_part_func(snoop_part, NULL); reg_kick_func(snoop_kick, NULL); - reg_new_user_func(snoop_new_user, NULL); + reg_new_user_func_pos(snoop_new_user, NULL, EH_ADD_HEAD); reg_del_user_func(snoop_del_user, NULL); reg_auth_func(snoop_auth, NULL); reg_channel_mode_func(snoop_channel_mode, NULL);