54 lines
668 B
C
54 lines
668 B
C
|
/*
|
||
|
* 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.
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
#ifndef headerfileuser
|
||
|
#define headerfileuser
|
||
|
|
||
|
#include <string>
|
||
|
#include <vector>
|
||
|
|
||
|
struct User
|
||
|
{
|
||
|
long id;
|
||
|
std::string name;
|
||
|
bool super_user;
|
||
|
std::vector<long> groups;
|
||
|
|
||
|
User()
|
||
|
{
|
||
|
Clear();
|
||
|
}
|
||
|
|
||
|
|
||
|
void Clear()
|
||
|
{
|
||
|
id = -1;
|
||
|
name.clear();
|
||
|
super_user = false;
|
||
|
groups.clear();
|
||
|
}
|
||
|
|
||
|
|
||
|
bool IsMemberOf(long group)
|
||
|
{
|
||
|
std::vector<long>::iterator i;
|
||
|
|
||
|
for(i=groups.begin() ; i!=groups.end() ; ++i)
|
||
|
if( *i == group )
|
||
|
return true;
|
||
|
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif
|