summaryrefslogtreecommitdiff
path: root/modules/database
diff options
context:
space:
mode:
authorDukePyrolator <DukePyrolator@anope.org>2011-08-11 22:21:40 +0200
committerDukePyrolator <DukePyrolator@anope.org>2011-08-11 22:21:40 +0200
commitc2780e1de47b4aead8ca5e2c7a7675ea987a9bb4 (patch)
tree30a58f896a582cbf0278c486a8f1b200ef35bb32 /modules/database
parent4e1f54ff9c9da71b657e024e67fc0966e7a82825 (diff)
Added a separate field for last seen realhost to ns_info, shown to services admins only
Diffstat (limited to 'modules/database')
-rw-r--r--modules/database/db_mysql.cpp4
-rw-r--r--modules/database/db_mysql_live.cpp1
-rw-r--r--modules/database/db_plain.cpp4
3 files changed, 8 insertions, 1 deletions
diff --git a/modules/database/db_mysql.cpp b/modules/database/db_mysql.cpp
index 6d138c0b9..12972aad5 100644
--- a/modules/database/db_mysql.cpp
+++ b/modules/database/db_mysql.cpp
@@ -244,6 +244,7 @@ class DBMySQL : public Module
na->last_quit = r.Get(i, "last_quit");
na->last_realname = r.Get(i, "last_realname");
na->last_usermask = r.Get(i, "last_usermask");
+ na->last_realhost = r.Get(i, "last_realhost");
na->time_registered = r.Get(i, "time_registered").is_pos_number_only() ? convertTo<time_t>(r.Get(i, "time_registered")) : Anope::CurTime;
na->last_seen = r.Get(i, "last_seen").is_pos_number_only() ? convertTo<time_t>(r.Get(i, "last_seen")) : Anope::CurTime;
@@ -943,11 +944,12 @@ class DBMySQL : public Module
void InsertAlias(NickAlias *na)
{
- SQLQuery query("INSERT INTO `anope_ns_alias` (nick, last_quit, last_realname, last_usermask, time_registered, last_seen, flags, display) VALUES(@nick, @last_quit, @last_realname, @last_usermask, @time_registered, @last_seen, @flags, @display) ON DUPLICATE KEY UPDATE last_quit=VALUES(last_quit), last_realname=VALUES(last_realname), last_usermask=VALUES(last_usermask), time_registered=VALUES(time_registered), last_seen=VALUES(last_seen), flags=VALUES(flags), display=VALUES(display)");
+ SQLQuery query("INSERT INTO `anope_ns_alias` (nick, last_quit, last_realname, last_usermask, last_realhost, time_registered, last_seen, flags, display) VALUES(@nick, @last_quit, @last_realname, @last_usermask, @last_realhost, @time_registered, @last_seen, @flags, @display) ON DUPLICATE KEY UPDATE last_quit=VALUES(last_quit), last_realname=VALUES(last_realname), last_usermask=VALUES(last_usermask), last_realhost=VALUES(last_realhost), time_registered=VALUES(time_registered), last_seen=VALUES(last_seen), flags=VALUES(flags), display=VALUES(display)");
query.setValue("nick", na->nick);
query.setValue("last_quit", na->last_quit);
query.setValue("last_realname", na->last_realname);
query.setValue("last_usermask", na->last_usermask);
+ query.setValue("last_realhost", na->last_realhost);
query.setValue("time_registered", na->time_registered);
query.setValue("last_seen", na->last_seen);
query.setValue("flags", ToString(na->ToString()));
diff --git a/modules/database/db_mysql_live.cpp b/modules/database/db_mysql_live.cpp
index ecfdc70d1..07b9b037c 100644
--- a/modules/database/db_mysql_live.cpp
+++ b/modules/database/db_mysql_live.cpp
@@ -88,6 +88,7 @@ static void NickInfoUpdate(const SQLResult &res)
na->last_quit = res.Get(0, "last_quit");
na->last_realname = res.Get(0, "last_realname");
na->last_usermask = res.Get(0, "last_usermask");
+ na->last_realhost = res.Get(0, "last_realhost");
na->time_registered = convertTo<time_t>(res.Get(0, "time_registered"));
na->last_seen = convertTo<time_t>(res.Get(0, "last_seen"));
na->ClearFlags();
diff --git a/modules/database/db_plain.cpp b/modules/database/db_plain.cpp
index 75b327223..c113688ee 100644
--- a/modules/database/db_plain.cpp
+++ b/modules/database/db_plain.cpp
@@ -495,6 +495,8 @@ class DBPlain : public Module
{
if (key.equals_ci("LAST_USERMASK"))
na->last_usermask = params[0];
+ else if (key.equals_ci("LAST_REALHOST"))
+ na->last_realhost = params[0];
else if (key.equals_ci("LAST_REALNAME"))
na->last_realname = params[0];
else if (key.equals_ci("LAST_QUIT"))
@@ -751,6 +753,8 @@ class DBPlain : public Module
db_buffer << "NA " << na->nc->display << " " << na->nick << " " << na->time_registered << " " << na->last_seen << endl;
if (!na->last_usermask.empty())
db_buffer << "MD LAST_USERMASK " << na->last_usermask << endl;
+ if (!na->last_realhost.empty())
+ db_buffer << "MD LAST_REALHOST " << na->last_realhost << endl;
if (!na->last_realname.empty())
db_buffer << "MD LAST_REALNAME :" << na->last_realname << endl;
if (!na->last_quit.empty())