diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/commands/ns_info.cpp | 3 | ||||
-rw-r--r-- | modules/pseudoclients/nickserv.cpp | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/modules/commands/ns_info.cpp b/modules/commands/ns_info.cpp index 8fc5aa639..1800ac440 100644 --- a/modules/commands/ns_info.cpp +++ b/modules/commands/ns_info.cpp @@ -42,7 +42,10 @@ class CommandNSInfo : public Command /* Is the real owner of the nick we're looking up online? -TheShadow */ User *u2 = User::Find(na->nick); if (u2 && u2->Account() == na->nc) + { nick_online = true; + na->last_seen = Anope::CurTime; + } if (has_auspex || na->nc == source.GetAccount()) show_hidden = true; diff --git a/modules/pseudoclients/nickserv.cpp b/modules/pseudoclients/nickserv.cpp index c57039bee..9b9d8d513 100644 --- a/modules/pseudoclients/nickserv.cpp +++ b/modules/pseudoclients/nickserv.cpp @@ -497,7 +497,7 @@ class NickServCore : public Module, public NickServService ++it; User *u = User::Find(na->nick); - if (u && (na->nc->HasExt("NS_SECURE") ? u->IsIdentified(true) : u->IsRecognized())) + if (u && (u->IsIdentified(true) || u->IsRecognized())) na->last_seen = Anope::CurTime; bool expire = false; @@ -521,7 +521,7 @@ class NickServCore : public Module, public NickServService if (!na->nc->HasExt("UNCONFIRMED")) { time_t nickserv_expire = Config->GetModule(this)->Get<time_t>("expire"); - if (!na->HasExt("NS_NO_EXPIRE") && nickserv_expire && !Anope::NoExpire) + if (!na->HasExt("NS_NO_EXPIRE") && nickserv_expire && !Anope::NoExpire && na->last_seen != Anope::CurTime) info[_("Expires")] = Anope::strftime(na->last_seen + nickserv_expire); } else |