summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/modules/nickserv.h97
-rw-r--r--include/modules/nickserv/account.h83
-rw-r--r--include/modules/nickserv/nick.h60
3 files changed, 146 insertions, 94 deletions
diff --git a/include/modules/nickserv.h b/include/modules/nickserv.h
index ef06bcb0c..f8d1567ef 100644
--- a/include/modules/nickserv.h
+++ b/include/modules/nickserv.h
@@ -23,6 +23,9 @@
#include "service.h"
#include "serialize.h"
+#include "nickserv/nick.h"
+#include "nickserv/account.h"
+
namespace NickServ
{
class Nick;
@@ -134,100 +137,6 @@ namespace NickServ
};
}
- /* A registered nickname.
- * It matters that Base is here before Extensible (it is inherited by Serializable)
- */
- class CoreExport Nick : public Serialize::Object
- {
- protected:
- using Serialize::Object::Object;
-
- public:
- static constexpr const char *const NAME = "nick";
-
- virtual Anope::string GetNick() anope_abstract;
- virtual void SetNick(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetLastQuit() anope_abstract;
- virtual void SetLastQuit(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetLastRealname() anope_abstract;
- virtual void SetLastRealname(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetLastUsermask() anope_abstract;
- virtual void SetLastUsermask(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetLastRealhost() anope_abstract;
- virtual void SetLastRealhost(const Anope::string &) anope_abstract;
-
- virtual time_t GetTimeRegistered() anope_abstract;
- virtual void SetTimeRegistered(const time_t &) anope_abstract;
-
- virtual time_t GetLastSeen() anope_abstract;
- virtual void SetLastSeen(const time_t &) anope_abstract;
-
- virtual Account *GetAccount() anope_abstract;
- virtual void SetAccount(Account *acc) anope_abstract;
- };
-
- /* A registered account. Each account must have a Nick with the same nick as the
- * account's display.
- * It matters that Base is here before Extensible (it is inherited by Serializable)
- */
- class CoreExport Account : public Serialize::Object
- {
- public:
- static constexpr const char *const NAME = "account";
-
- /* Set if this user is a services operattor. o->ot must exist. */
- Serialize::Reference<Oper> o;
-
- /* Unsaved data */
-
- /* Last time an email was sent to this user */
- time_t lastmail = 0;
- /* Users online now logged into this account */
- std::vector<User *> users;
-
- protected:
- using Serialize::Object::Object;
-
- public:
- virtual Anope::string GetDisplay() anope_abstract;
- virtual void SetDisplay(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetPassword() anope_abstract;
- virtual void SetPassword(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetEmail() anope_abstract;
- virtual void SetEmail(const Anope::string &) anope_abstract;
-
- virtual Anope::string GetLanguage() anope_abstract;
- virtual void SetLanguage(const Anope::string &) anope_abstract;
-
- /** Changes the display for this account
- * @param na The new display, must be grouped to this account.
- */
- virtual void SetDisplay(Nick *na) anope_abstract;
-
- /** Checks whether this account is a services oper or not.
- * @return True if this account is a services oper, false otherwise.
- */
- virtual bool IsServicesOper() const anope_abstract;
-
- /** Is the given user on this accounts access list?
- *
- * @param u The user
- *
- * @return true if the user is on the access list
- */
- virtual bool IsOnAccess(User *u) anope_abstract;
-
- virtual MemoServ::MemoInfo *GetMemos() anope_abstract;
-
- virtual unsigned int GetChannelCount() anope_abstract;
- };
-
/* A request to check if an account/password is valid. These can exist for
* extended periods due to the time some authentication modules take.
*/
diff --git a/include/modules/nickserv/account.h b/include/modules/nickserv/account.h
new file mode 100644
index 000000000..c5717cf91
--- /dev/null
+++ b/include/modules/nickserv/account.h
@@ -0,0 +1,83 @@
+/*
+ * Anope IRC Services
+ *
+ * Copyright (C) 2011-2016 Anope Team <team@anope.org>
+ *
+ * This file is part of Anope. Anope is free software; you can
+ * redistribute it and/or modify it under the terms of the GNU
+ * General Public License as published by the Free Software
+ * Foundation, version 2.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, see see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+namespace NickServ
+{
+
+/* A registered account. Each account must have a Nick with the same nick as the
+ * account's display.
+ * It matters that Base is here before Extensible (it is inherited by Serializable)
+ */
+class CoreExport Account : public Serialize::Object
+{
+ public:
+ static constexpr const char *const NAME = "account";
+
+ /* Set if this user is a services operattor. o->ot must exist. */
+ Serialize::Reference<Oper> o;
+
+ /* Unsaved data */
+
+ /* Last time an email was sent to this user */
+ time_t lastmail = 0;
+ /* Users online now logged into this account */
+ std::vector<User *> users;
+
+ protected:
+ using Serialize::Object::Object;
+
+ public:
+ virtual Anope::string GetDisplay() anope_abstract;
+ virtual void SetDisplay(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetPassword() anope_abstract;
+ virtual void SetPassword(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetEmail() anope_abstract;
+ virtual void SetEmail(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetLanguage() anope_abstract;
+ virtual void SetLanguage(const Anope::string &) anope_abstract;
+
+ /** Changes the display for this account
+ * @param na The new display, must be grouped to this account.
+ */
+ virtual void SetDisplay(Nick *na) anope_abstract;
+
+ /** Checks whether this account is a services oper or not.
+ * @return True if this account is a services oper, false otherwise.
+ */
+ virtual bool IsServicesOper() const anope_abstract;
+
+ /** Is the given user on this accounts access list?
+ *
+ * @param u The user
+ *
+ * @return true if the user is on the access list
+ */
+ virtual bool IsOnAccess(User *u) anope_abstract;
+
+ virtual MemoServ::MemoInfo *GetMemos() anope_abstract;
+
+ virtual unsigned int GetChannelCount() anope_abstract;
+};
+
+} // namespace NickServ \ No newline at end of file
diff --git a/include/modules/nickserv/nick.h b/include/modules/nickserv/nick.h
new file mode 100644
index 000000000..604bc02d6
--- /dev/null
+++ b/include/modules/nickserv/nick.h
@@ -0,0 +1,60 @@
+/*
+ * Anope IRC Services
+ *
+ * Copyright (C) 2011-2016 Anope Team <team@anope.org>
+ *
+ * This file is part of Anope. Anope is free software; you can
+ * redistribute it and/or modify it under the terms of the GNU
+ * General Public License as published by the Free Software
+ * Foundation, version 2.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, see see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+namespace NickServ
+{
+
+/* A registered nickname.
+ */
+class CoreExport Nick : public Serialize::Object
+{
+ protected:
+ using Serialize::Object::Object;
+
+ public:
+ static constexpr const char *const NAME = "nick";
+
+ virtual Anope::string GetNick() anope_abstract;
+ virtual void SetNick(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetLastQuit() anope_abstract;
+ virtual void SetLastQuit(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetLastRealname() anope_abstract;
+ virtual void SetLastRealname(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetLastUsermask() anope_abstract;
+ virtual void SetLastUsermask(const Anope::string &) anope_abstract;
+
+ virtual Anope::string GetLastRealhost() anope_abstract;
+ virtual void SetLastRealhost(const Anope::string &) anope_abstract;
+
+ virtual time_t GetTimeRegistered() anope_abstract;
+ virtual void SetTimeRegistered(const time_t &) anope_abstract;
+
+ virtual time_t GetLastSeen() anope_abstract;
+ virtual void SetLastSeen(const time_t &) anope_abstract;
+
+ virtual Account *GetAccount() anope_abstract;
+ virtual void SetAccount(Account *acc) anope_abstract;
+};
+
+} // namespace NickServ \ No newline at end of file