summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcertus certus@31f1291d-b8d6-0310-a050-a5561fc1590b <certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2004-04-08 19:48:21 +0000
committercertus certus@31f1291d-b8d6-0310-a050-a5561fc1590b <certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2004-04-08 19:48:21 +0000
commita9c609678f1de663b0f662daa43afed499fcd289 (patch)
treee8ce8d06efb867a802e8d6ee0f29bad34d461cc5
parent0197854015f920b67deec7dbb8e6bcc5bb1e7d87 (diff)
BUILD : 1.7.0 (36) BUGS : NOTES : 1. Added "is a services root administrator" to /ns info. 2. Added option for SOs and above to hide their services access status in /ns info.
git-svn-id: svn://svn.anope.org/anope/trunk@36 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@26 5417fbe8-f217-4b02-8779-1006273d7864
-rw-r--r--Changes10
-rw-r--r--Changes.lang4
-rw-r--r--extern.h1
-rw-r--r--lang/de.l17
-rw-r--r--lang/en_us.l11
-rw-r--r--lang/index3
-rw-r--r--nickserv.c36
-rw-r--r--operserv.c12
-rw-r--r--services.h1
-rw-r--r--version.log7
10 files changed, 86 insertions, 16 deletions
diff --git a/Changes b/Changes
index b8dc5b767..06e056b98 100644
--- a/Changes
+++ b/Changes
@@ -1,12 +1,14 @@
Anope Version 1.7.0
--------------------
Provided by Anope Dev. <dev@anope.org>
-2004/04/07 Added -help arguement for command line parameters
-2004/04/04 Added -version argument to return version and build info
-2004/04/04 Fixed moduleAddCommand for a non-existant service
+2004/04/08 Added "is a services root administrator" to /ns info.
+2004/04/08 Added option for SOs and above to hide their services access status in /ns info.
+2004/04/07 Added -help arguement for command line parameters.
+2004/04/04 Added -version argument to return version and build info.
+2004/04/04 Fixed moduleAddCommand for a non-existant service.
2004/04/01 Added memo2mail and /msg memoserv set notify MAIL/NOMAIL.
2004/03/31 Fixed MySQL double encryption if using MD5.
-2004/03/31 Implemented MySQL Phase2 (see docs/MYSQL file)
+2004/03/31 Implemented MySQL Phase2 (see docs/MYSQL file).
2004/03/31 Modules can now add Commands/Messages from outside of AnopeInit.
2004/03/31 Fixed a bug with recersive module callbacks.
2004/03/30 Added channelname to entrymsg.
diff --git a/Changes.lang b/Changes.lang
index 3f8317c7c..b558414a5 100644
--- a/Changes.lang
+++ b/Changes.lang
@@ -9,8 +9,12 @@ Anope Version 1.7.0
MEMO_MAIL_TEXT1
MEMO_MAIL_TEXT2
MEMO_MAIL_TEXT3
+ NICK_INFO_SERVICES_ROOT
+ NICK_SET_HIDE_STATUS_ON
+ NICK_SET_HIDE_STATUS_OFF
*** Mod Strings:
MEMO_SET_NOTIFY_SYNTAX
+ NICK_HELP_SET_HIDE
*** Del Strings:
diff --git a/extern.h b/extern.h
index 6f0a0280e..be43c6bb4 100644
--- a/extern.h
+++ b/extern.h
@@ -676,6 +676,7 @@ E void os_remove_nick(NickCore *nc);
E int is_services_root(User *u);
E int is_services_admin(User *u);
E int is_services_oper(User *u);
+E int nick_is_services_root(NickCore * nc);
E int nick_is_services_admin(NickCore *nc);
E int nick_is_services_oper(NickCore *nc);
diff --git a/lang/de.l b/lang/de.l
index edce6c5cc..8597d2fb2 100644
--- a/lang/de.l
+++ b/lang/de.l
@@ -519,6 +519,10 @@ NICK_SET_HIDE_QUIT_ON
Deine letzte Quit-Message wird jetzt in der %s INFO Anzeige nicht mehr erscheinen.
NICK_SET_HIDE_QUIT_OFF
Deine letzte Quit-Message wird jetzt in der %s INFO Anzeige erscheinen.
+NICK_SET_HIDE_STATUS_ON
+ Dein Services-Zugriffsstatus wird nun in %s INFO Anzeigen versteckt.
+NICK_SET_HIDE_STATUS_OFF
+ Dein Services-Zugriffsstatus wird nicht länger in %s INFO Anzeigen versteckt.
# SET MSG responses
NICK_SET_MSG_SYNTAX
@@ -560,9 +564,11 @@ NICK_INFO_SYNTAX
NICK_INFO_REALNAME
%s ist %s
NICK_INFO_SERVICES_OPER
- %s ist ein Services-Operator.
+ %s ist ein Services Operator.
NICK_INFO_SERVICES_ADMIN
- %s ist ein Services-Admin.
+ %s ist ein Services Administrator.
+NICK_INFO_SERVICES_ROOT
+ %s ist ein Services Root Administrator.
NICK_INFO_ADDRESS
Letzte gesehene Hostmask: %s
NICK_INFO_ADDRESS_ONLINE
@@ -3480,13 +3486,14 @@ NICK_HELP_SET_PRIVATE
abrufen, unabhängig vom Privat-Modus.)
NICK_HELP_SET_HIDE
- Syntax: SET HIDE {EMAIL | USERMASK | QUIT} {ON | OFF}
+ Syntax: SET HIDE {EMAIL | STATUS | USERMASK | QUIT} {ON | OFF}
Erlaubt es dir, bestimmte Informationen in der Ausgabe
von %S INFO zu verstecken.
Du kannst deine eMail-Adresse verstecken (EMAIL), die
- zuletzt gesehene user@host-Maske (USERMASK) und die
- letzte Quit-Nachricht (QUIT).
+ zuletzt gesehene user@host-Maske (USERMASK), dein
+ Services-Zugriffsstatus (STATUS) und die letzte Quit-Nachricht
+ (QUIT).
Der zweite Parameter bestimmt, ob die Information angezeigt
werden soll (OFF) oder nicht (ON).
diff --git a/lang/en_us.l b/lang/en_us.l
index a0803751e..81c431d75 100644
--- a/lang/en_us.l
+++ b/lang/en_us.l
@@ -498,6 +498,10 @@ NICK_SET_HIDE_QUIT_ON
Your last quit message will now be hidden from %s INFO displays.
NICK_SET_HIDE_QUIT_OFF
Your last quit message will now be shown in %s INFO displays.
+NICK_SET_HIDE_STATUS_ON
+ Your services access status will now be hidden from %s INFO displays.
+NICK_SET_HIDE_STATUS_OFF
+ Your services access status will now be shown in %s INFO displays.
# SET MSG responses
NICK_SET_MSG_SYNTAX
@@ -542,6 +546,8 @@ NICK_INFO_SERVICES_OPER
%s is a services operator.
NICK_INFO_SERVICES_ADMIN
%s is a services admin.
+NICK_INFO_SERVICES_ROOT
+ %s is a services root administrator.
NICK_INFO_ADDRESS
Last seen address: %s
NICK_INFO_ADDRESS_ONLINE
@@ -3326,12 +3332,13 @@ NICK_HELP_SET_PRIVATE
information on it using the INFO command.)
NICK_HELP_SET_HIDE
- Syntax: SET HIDE {EMAIL | USERMASK | QUIT} {ON | OFF}
+ Syntax: SET HIDE {EMAIL | STATUS | USERMASK | QUIT} {ON | OFF}
Allows you to prevent certain pieces of information from
being displayed when someone does a %S INFO on your
nick. You can hide your E-mail address (EMAIL), last seen
- user@host mask (USERMASK), and last quit message (QUIT).
+ user@host mask (USERMASK), your services access status
+ (STATUS) and last quit message (QUIT).
The second parameter specifies whether the information should
be displayed (OFF) or hidden (ON).
diff --git a/lang/index b/lang/index
index d89f7cba8..519a75971 100644
--- a/lang/index
+++ b/lang/index
@@ -150,6 +150,8 @@ NICK_SET_HIDE_MASK_ON
NICK_SET_HIDE_MASK_OFF
NICK_SET_HIDE_QUIT_ON
NICK_SET_HIDE_QUIT_OFF
+NICK_SET_HIDE_STATUS_ON
+NICK_SET_HIDE_STATUS_OFF
NICK_SET_MSG_SYNTAX
NICK_SET_MSG_ON
NICK_SET_MSG_OFF
@@ -168,6 +170,7 @@ NICK_INFO_SYNTAX
NICK_INFO_REALNAME
NICK_INFO_SERVICES_OPER
NICK_INFO_SERVICES_ADMIN
+NICK_INFO_SERVICES_ROOT
NICK_INFO_ADDRESS
NICK_INFO_ADDRESS_ONLINE
NICK_INFO_ADDRESS_ONLINE_NOHOST
diff --git a/nickserv.c b/nickserv.c
index 0890494ac..c5311f349 100644
--- a/nickserv.c
+++ b/nickserv.c
@@ -2995,6 +2995,10 @@ static int do_set_hide(User * u, NickCore * nc, char *param)
flag = NI_HIDE_MASK;
onmsg = NICK_SET_HIDE_MASK_ON;
offmsg = NICK_SET_HIDE_MASK_OFF;
+ } else if (stricmp(param, "STATUS") == 0) {
+ flag = NI_HIDE_STATUS;
+ onmsg = NICK_SET_HIDE_STATUS_ON;
+ offmsg = NICK_SET_HIDE_STATUS_OFF;
} else if (stricmp(param, "QUIT") == 0) {
flag = NI_HIDE_QUIT;
onmsg = NICK_SET_HIDE_QUIT_ON;
@@ -3243,10 +3247,34 @@ static int do_info(User * u)
notice_lang(s_NickServ, u, NICK_INFO_REALNAME, na->nick,
na->last_realname);
- if (nick_is_services_admin(na->nc)) /* This will also include the services root(s) */
- notice_lang(s_NickServ, u, NICK_INFO_SERVICES_ADMIN, na->nick);
- else if (nick_is_services_oper(na->nc))
- notice_lang(s_NickServ, u, NICK_INFO_SERVICES_OPER, na->nick);
+ if ((nick_identified(u) && (na->nc == u->na->nc)) || is_servadmin) {
+
+ if (nick_is_services_root(na->nc))
+ notice_lang(s_NickServ, u, NICK_INFO_SERVICES_ROOT,
+ na->nick);
+ else if (nick_is_services_admin(na->nc))
+ notice_lang(s_NickServ, u, NICK_INFO_SERVICES_ADMIN,
+ na->nick);
+ else if (nick_is_services_oper(na->nc))
+ notice_lang(s_NickServ, u, NICK_INFO_SERVICES_OPER,
+ na->nick);
+
+ } else {
+
+ if (nick_is_services_root(na->nc)
+ && !(na->nc->flags & NI_HIDE_STATUS))
+ notice_lang(s_NickServ, u, NICK_INFO_SERVICES_ROOT,
+ na->nick);
+ else if (nick_is_services_admin(na->nc)
+ && !(na->nc->flags & NI_HIDE_STATUS))
+ notice_lang(s_NickServ, u, NICK_INFO_SERVICES_ADMIN,
+ na->nick);
+ else if (nick_is_services_oper(na->nc)
+ && !(na->nc->flags & NI_HIDE_STATUS))
+ notice_lang(s_NickServ, u, NICK_INFO_SERVICES_OPER,
+ na->nick);
+
+ }
if (nick_online) {
diff --git a/operserv.c b/operserv.c
index e9d4d294e..07f76ca8b 100644
--- a/operserv.c
+++ b/operserv.c
@@ -854,6 +854,18 @@ int is_services_oper(User * u)
/*************************************************************************/
+/* Is the given nick a Services root nick? */
+
+int nick_is_services_root(NickCore * nc)
+{
+ if (nc->flags & (NI_SERVICES_ROOT))
+ return 1;
+
+ return 0;
+}
+
+/*************************************************************************/
+
/* Is the given nick a Services admin/root nick? */
int nick_is_services_admin(NickCore * nc)
diff --git a/services.h b/services.h
index 046fdbfd1..624fcd770 100644
--- a/services.h
+++ b/services.h
@@ -309,6 +309,7 @@ struct nickcore_ {
#define NI_ENCRYPTEDPW 0x00004000 /* Nickname password is encrypted */
#define NI_SERVICES_ROOT 0x00008000 /* User is a Services root */
#define NI_MEMO_MAIL 0x00010000 /* User gets email on memo */
+#define NI_HIDE_STATUS 0x00020000 /* Don't show services access status */
/* Languages. Never insert anything in the middle of this list, or
* everybody will start getting the wrong language! If you want to change
diff --git a/version.log b/version.log
index e19eadcbd..5670b1d47 100644
--- a/version.log
+++ b/version.log
@@ -8,11 +8,16 @@
VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="0"
-VERSION_BUILD="35"
+VERSION_BUILD="36"
VERSION_EXTRA=""
# $Log$
#
+# BUILD : 1.7.0 (36)
+# BUGS :
+# NOTES : 1. Added "is a services root administrator" to /ns info. 2. Added option for SOs and above to hide their services
+# access status in /ns info.
+#
# BUILD : 1.7.0 (35)
# BUGS :
# NOTES : Added -help arguement for command line parameter information