summaryrefslogtreecommitdiffstats
path: root/src/Group.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Group.cpp')
-rw-r--r--src/Group.cpp40
1 files changed, 22 insertions, 18 deletions
diff --git a/src/Group.cpp b/src/Group.cpp
index 448d29d87..5f1f25782 100644
--- a/src/Group.cpp
+++ b/src/Group.cpp
@@ -3,35 +3,39 @@
#include "Group.h"
-void cGroup::AddCommand( std::string a_Command )
+
+
+
+
+void cGroup::AddCommand( AString a_Command )
{
m_Commands[ a_Command ] = true;
}
-void cGroup::AddPermission( std::string a_Permission )
+
+
+
+
+void cGroup::AddPermission( AString a_Permission )
{
m_Permissions[ a_Permission ] = true;
}
-bool cGroup::HasCommand( std::string a_Command )
-{
- if( m_Commands.find("*") != m_Commands.end() ) return true;
-
- CommandMap::iterator itr = m_Commands.find( a_Command );
- if( itr != m_Commands.end() )
- {
- if( itr->second ) return true;
- }
-
- for( GroupList::iterator itr = m_Inherits.begin(); itr != m_Inherits.end(); ++itr )
- {
- if( (*itr)->HasCommand( a_Command ) ) return true;
- }
- return false;
-}
+
+
+
void cGroup::InheritFrom( cGroup* a_Group )
{
m_Inherits.remove( a_Group );
m_Inherits.push_back( a_Group );
+}
+
+
+
+
+
+void cGroup::ClearPermission()
+{
+ m_Permissions.clear();
} \ No newline at end of file