Added channel::host_in_topic.
This commit is contained in:
parent
ccac85bf9c
commit
45b9f1cbc0
|
@ -16,7 +16,6 @@ Todo list for Shadowircd 6.0
|
||||||
* config options to strip colours and bold and such from user PART and QUIT messages.
|
* config options to strip colours and bold and such from user PART and QUIT messages.
|
||||||
* channel::exemptchanops config option
|
* channel::exemptchanops config option
|
||||||
* nonicks cmode
|
* nonicks cmode
|
||||||
* channel::host_in_topic option (can be a vector for idiots seeing host-in-topic)
|
|
||||||
* host-on-operup: vhost that gets applied to you on oper-up. A surprising number of people want this.
|
* host-on-operup: vhost that gets applied to you on oper-up. A surprising number of people want this.
|
||||||
* change *line duration to support "human-readable" format (ie: 3d6h5m)
|
* change *line duration to support "human-readable" format (ie: 3d6h5m)
|
||||||
|
|
||||||
|
|
|
@ -348,6 +348,7 @@ channel {
|
||||||
kick_on_split_riding = no;
|
kick_on_split_riding = no;
|
||||||
only_ascii_channels = no;
|
only_ascii_channels = no;
|
||||||
cycle_host_change = yes;
|
cycle_host_change = yes;
|
||||||
|
host_in_topic = yes;
|
||||||
resv_forcepart = yes;
|
resv_forcepart = yes;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -768,6 +768,12 @@ channel {
|
||||||
*/
|
*/
|
||||||
cycle_host_change = yes;
|
cycle_host_change = yes;
|
||||||
|
|
||||||
|
/* host_in_topic: Defines whether or not the topicsetter's
|
||||||
|
* host is shown when users request the TOPIC. If this option
|
||||||
|
* is set to no, it will only show the nick of the topicsetter.
|
||||||
|
*/
|
||||||
|
host_in_topic = yes;
|
||||||
|
|
||||||
/* resv_forcepart: force any local users to part a channel
|
/* resv_forcepart: force any local users to part a channel
|
||||||
* when a RESV is issued.
|
* when a RESV is issued.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -237,6 +237,7 @@ struct config_channel_entry
|
||||||
int kick_on_split_riding;
|
int kick_on_split_riding;
|
||||||
int only_ascii_channels;
|
int only_ascii_channels;
|
||||||
int cycle_host_change;
|
int cycle_host_change;
|
||||||
|
int host_in_topic;
|
||||||
int resv_forcepart;
|
int resv_forcepart;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -554,6 +554,12 @@ static struct InfoStruct info_table[] = {
|
||||||
&ConfigChannel.cycle_host_change,
|
&ConfigChannel.cycle_host_change,
|
||||||
"Controls if when a users' host changes, they cycle channels",
|
"Controls if when a users' host changes, they cycle channels",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"host_in_topic",
|
||||||
|
OUTPUT_BOOLEAN_YN,
|
||||||
|
&ConfigChannel.host_in_topic,
|
||||||
|
"Defines whether a topicsetters host or just nick is shown on TOPIC",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"use_except",
|
"use_except",
|
||||||
OUTPUT_BOOLEAN_YN,
|
OUTPUT_BOOLEAN_YN,
|
||||||
|
|
|
@ -117,8 +117,13 @@ m_topic(struct Client *client_p, struct Client *source_p, int parc, const char *
|
||||||
if((chptr->mode.mode & MODE_TOPICLIMIT) == 0 || is_chanop(msptr))
|
if((chptr->mode.mode & MODE_TOPICLIMIT) == 0 || is_chanop(msptr))
|
||||||
{
|
{
|
||||||
char topic_info[USERHOST_REPLYLEN];
|
char topic_info[USERHOST_REPLYLEN];
|
||||||
rb_sprintf(topic_info, "%s!%s@%s",
|
|
||||||
source_p->name, source_p->username, source_p->host);
|
if(ConfigChannel.host_in_topic)
|
||||||
|
rb_sprintf(topic_info, "%s!%s@%s",
|
||||||
|
source_p->name, source_p->username, source_p->host);
|
||||||
|
else
|
||||||
|
rb_strlcpy(topic_info, source_p->name, sizeof(topic_info));
|
||||||
|
|
||||||
set_channel_topic(chptr, parv[2], topic_info, rb_current_time());
|
set_channel_topic(chptr, parv[2], topic_info, rb_current_time());
|
||||||
|
|
||||||
sendto_server(client_p, chptr, CAP_TS6, NOCAPS,
|
sendto_server(client_p, chptr, CAP_TS6, NOCAPS,
|
||||||
|
|
|
@ -2216,6 +2216,7 @@ static struct ConfEntry conf_channel_table[] =
|
||||||
{ "no_join_on_split", CF_YESNO, NULL, 0, &ConfigChannel.no_join_on_split },
|
{ "no_join_on_split", CF_YESNO, NULL, 0, &ConfigChannel.no_join_on_split },
|
||||||
{ "only_ascii_channels", CF_YESNO, NULL, 0, &ConfigChannel.only_ascii_channels },
|
{ "only_ascii_channels", CF_YESNO, NULL, 0, &ConfigChannel.only_ascii_channels },
|
||||||
{ "cycle_host_change", CF_YESNO, NULL, 0, &ConfigChannel.cycle_host_change },
|
{ "cycle_host_change", CF_YESNO, NULL, 0, &ConfigChannel.cycle_host_change },
|
||||||
|
{ "host_in_topic", CF_YESNO, NULL, 0, &ConfigChannel.host_in_topic },
|
||||||
{ "use_except", CF_YESNO, NULL, 0, &ConfigChannel.use_except },
|
{ "use_except", CF_YESNO, NULL, 0, &ConfigChannel.use_except },
|
||||||
{ "use_invex", CF_YESNO, NULL, 0, &ConfigChannel.use_invex },
|
{ "use_invex", CF_YESNO, NULL, 0, &ConfigChannel.use_invex },
|
||||||
{ "use_knock", CF_YESNO, NULL, 0, &ConfigChannel.use_knock },
|
{ "use_knock", CF_YESNO, NULL, 0, &ConfigChannel.use_knock },
|
||||||
|
|
|
@ -756,6 +756,7 @@ set_default_conf(void)
|
||||||
ConfigChannel.max_bans_large = 500;
|
ConfigChannel.max_bans_large = 500;
|
||||||
ConfigChannel.only_ascii_channels = NO;
|
ConfigChannel.only_ascii_channels = NO;
|
||||||
ConfigChannel.cycle_host_change = YES;
|
ConfigChannel.cycle_host_change = YES;
|
||||||
|
ConfigChannel.host_in_topic = YES;
|
||||||
ConfigChannel.burst_topicwho = NO;
|
ConfigChannel.burst_topicwho = NO;
|
||||||
ConfigChannel.kick_on_split_riding = NO;
|
ConfigChannel.kick_on_split_riding = NO;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue