From f5848f5176da36e8542fb5cedaf761317f9c07c1 Mon Sep 17 00:00:00 2001 From: cflakes Date: Sun, 7 Feb 2010 18:01:42 +0000 Subject: [PATCH] Added support for changing the "IsAdmin" flag to the admin module. git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1745 726aef4b-f618-498e-8847-2d620e286838 --- modules/admin.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/modules/admin.cpp b/modules/admin.cpp index 1a3f59d5..0d0615ca 100644 --- a/modules/admin.cpp +++ b/modules/admin.cpp @@ -77,7 +77,8 @@ class CAdminMod : public CModule { {"KeepBuffer", boolean}, {"Password", string}, {"JoinTries", integer}, - {"MaxJoins", integer} + {"MaxJoins", integer}, + {"Admin", boolean} }; for (unsigned int i = 0; i != ARRAY_SIZE(vars); ++i) { VarTable.AddRow(); @@ -168,6 +169,8 @@ class CAdminMod : public CModule { PutModule("MaxJoins = " + CString(user->MaxJoins())); else if (var == "jointries") PutModule("JoinTries = " + CString(user->JoinTries())); + else if (var == "admin") + PutModule("Admin = " + CString(user->IsAdmin())); else PutModule("Error: Unknown variable"); } @@ -268,6 +271,15 @@ class CAdminMod : public CModule { user->SetJoinTries(i); PutModule("JoinTries = " + CString(user->JoinTries())); } + else if (var == "admin") { + if(m_pUser->IsAdmin() && user != m_pUser) { + bool b = value.ToBool(); + user->SetAdmin(b); + PutModule("Admin = " + CString(user->IsAdmin())); + } else { + PutModule("Access denied!"); + } + } else PutModule("Error: Unknown variable"); }