110 lines
1.0 KiB
C++
110 lines
1.0 KiB
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.
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
#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];
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|