added: privileges (user, groups, permissions)

(not finished yet)
       classes: User, Group, Users, Groups, UGContainer
changed: Dir class into Dirs


git-svn-id: svn://ttmath.org/publicrep/cmslu/trunk@467 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2008-12-21 21:17:09 +00:00
parent 86f28faf8d
commit 55cd813141
29 changed files with 1520 additions and 121 deletions

110
core/users.cpp Executable file
View File

@@ -0,0 +1,110 @@
/*
* This file is a part of CMSLU -- Content Management System like Unix
* and is not publicly distributed
*
* Copyright (c) 2008, Tomasz Sowa
* All rights reserved.
*
*/
#include "users.h"
Users::Users()
{
Clear();
}
void Users::Clear()
{
table.Clear();
}
void Users::ReadUsers()
{
Clear();
db.GetUsers(table);
}
User * Users::GetUser(long user_id)
{
Table::Iterator i = table.FindId(user_id);
if( i == table.End() )
return 0;
return &(*i);
}
User * Users::GetUser(const std::string & name)
{
Table::Iterator i = table.FindName(name);
if( i == table.End() )
return 0;
return &(*i);
}
long Users::GetUserId(const std::string & name)
{
User * puser = GetUser(name);
if( !puser )
return -1;
return puser->id;
}
Users::Iterator Users::Begin()
{
return table.Begin();
}
Users::Iterator Users::End()
{
return table.End();
}
Users::SizeType Users::Size()
{
return table.Size();
}
User & Users::operator[](Users::SizeType pos)
{
return table[pos];
}