summary refs log tree commit diff stats
path: root/src/common
diff options
context:
space:
mode:
authorDiogo Sousa <diogogsousa@gmail.com>2013-06-24 20:13:18 +0100
committerDiogo Sousa <diogogsousa@gmail.com>2013-06-28 16:15:15 +0100
commitdcdb11a78bace7bb4ec36e3c79ea8418a7f4ccfd (patch)
tree8240c155ec7954926a42f513f0324add7fb05675 /src/common
parentaef9e3922e6f6557b156ba6c1fc9e2b0a03db316 (diff)
Added preferences options to enable the server-time extension when available.
(Internationalization messages missing.)
Diffstat (limited to 'src/common')
-rw-r--r--src/common/cfgfiles.c2
-rw-r--r--src/common/hexchat.h1
-rw-r--r--src/common/inbound.c10
3 files changed, 7 insertions, 6 deletions
diff --git a/src/common/cfgfiles.c b/src/common/cfgfiles.c
index 20f1e848..008a0787 100644
--- a/src/common/cfgfiles.c
+++ b/src/common/cfgfiles.c
@@ -507,6 +507,7 @@ const struct prefs vars[] =
 
 	{"irc_auto_rejoin", P_OFFINT (hex_irc_auto_rejoin), TYPE_BOOL},
 	{"irc_ban_type", P_OFFINT (hex_irc_ban_type), TYPE_INT},
+	{"irc_cap_server_time", P_OFFINT (hex_irc_cap_server_time), TYPE_BOOL},
 	{"irc_conf_mode", P_OFFINT (hex_irc_conf_mode), TYPE_BOOL},
 	{"irc_extra_hilight", P_OFFSET (hex_irc_extra_hilight), TYPE_STR},
 	{"irc_hide_version", P_OFFINT (hex_irc_hide_version), TYPE_BOOL},
@@ -748,6 +749,7 @@ load_default_config(void)
 	prefs.hex_text_thin_sep = 1;
 	prefs.hex_text_wordwrap = 1;
 	prefs.hex_url_grabber = 1;
+	prefs.hex_irc_cap_server_time = 0;
 
 	/* NUMBERS */
 	prefs.hex_away_size_max = 300;
diff --git a/src/common/hexchat.h b/src/common/hexchat.h
index ca9f9c44..074d5a22 100644
--- a/src/common/hexchat.h
+++ b/src/common/hexchat.h
@@ -215,6 +215,7 @@ struct hexchatprefs
 	unsigned int hex_irc_wallops;
 	unsigned int hex_irc_who_join;
 	unsigned int hex_irc_whois_front;
+	unsigned int hex_irc_cap_server_time;
 	unsigned int hex_net_auto_reconnect;
 	unsigned int hex_net_auto_reconnectonfail;
 	unsigned int hex_net_proxy_auth;
diff --git a/src/common/inbound.c b/src/common/inbound.c
index 8547a70a..2645c438 100644
--- a/src/common/inbound.c
+++ b/src/common/inbound.c
@@ -1665,14 +1665,12 @@ inbound_cap_ls (server *serv, char *nick, char *extensions_str,
 		 */
 		if (!strcmp (extension, "znc.in/server-time"))
 		{
-			strcat (buffer, "znc.in/server-time");
-			strcat (buffer, " ");
+			strcat (buffer, "znc.in/server-time ");
 		}
-		else if (!strcmp (extension, "server-time"))
+		if (prefs.hex_irc_cap_server_time
+			 && !strcmp (extension, "server-time"))
 		{
-			/* ignore. it is best to have server-time explicitly enabled or have
-			 * a option in the preferences (or per server).
-			 */
+			strcat (buffer, "server-time ");
 		}
 		
 		/* if the SASL password is set AND auth mode is set to SASL, request SASL auth */