added: winix function: rmuser
changed: UGContainer<> now uses std::list as a storage
(previously it was using std::vector with pointers)
removed: now we don't have the operator[] for UGContainer<>
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@816 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
34
db/db.cpp
34
db/db.cpp
@@ -180,6 +180,32 @@ return DoCommand(query);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Error Db::ChangeUserEmail(long user_id, const std::wstring & email)
|
||||
{
|
||||
query.Clear();
|
||||
query << R("update core.user set(email) = (")
|
||||
<< email
|
||||
<< R(") where id = ")
|
||||
<< user_id
|
||||
<< R(";");
|
||||
|
||||
return DoCommand(query);
|
||||
}
|
||||
|
||||
|
||||
Error Db::RemoveUser(long user_id)
|
||||
{
|
||||
query.Clear();
|
||||
query << R("delete from core.user where id = ")
|
||||
<< user_id
|
||||
<< R(";");
|
||||
|
||||
return DoCommand(query);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//!! wywalic z nazwy 'Subject' nic nie jest robione z tytulem
|
||||
// ta metoda uzywana tez jest w EditParentUrlById()
|
||||
bool Db::AddItemCreateUrlSubject(Item & item)
|
||||
@@ -1579,7 +1605,7 @@ void Db::GetUsers(UGContainer<User> & user_tab)
|
||||
|
||||
log << log2 << "Db: user: id: " << u.id << ", name: " << u.name << ", super_user: " << u.super_user << logend;
|
||||
|
||||
iter = user_tab.PushBack( u );
|
||||
iter = user_tab.PushBack(u);
|
||||
|
||||
if( iter == user_tab.End() )
|
||||
log << log1 << "Db: can't add a user: " << u.name << logend;
|
||||
@@ -1591,8 +1617,8 @@ void Db::GetUsers(UGContainer<User> & user_tab)
|
||||
|
||||
if( !IsNull(r, i, cgroup_id) && group_id!=-1 && iter!=user_tab.End() )
|
||||
{
|
||||
(*iter)->groups.push_back(group_id);
|
||||
log << log3 << "Db: user:" << (*iter)->name << " is a member of group_id: " << group_id << logend;
|
||||
iter->groups.push_back(group_id);
|
||||
log << log3 << "Db: user:" << iter->name << " is a member of group_id: " << group_id << logend;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1645,7 +1671,7 @@ void Db::GetGroups(UGContainer<Group> & group_tab)
|
||||
|
||||
if( !IsNull(r, i, cuser_id) && user_id!=-1 && !group_tab.Empty() )
|
||||
{
|
||||
(*iter)->members.push_back(user_id);
|
||||
iter->members.push_back(user_id);
|
||||
log << log3 << "Db: get group member: user_id: " << user_id << logend;
|
||||
}
|
||||
}
|
||||
|
||||
2
db/db.h
2
db/db.h
@@ -50,6 +50,8 @@ public:
|
||||
Error ChangeUserEnv(long user_id, const PT::Space & space);
|
||||
Error ChangeUserAdminEnv(long user_id, const PT::Space & space);
|
||||
Error ChangeUserStatus(long user_id, int status);
|
||||
Error ChangeUserEmail(long user_id, const std::wstring & email);
|
||||
Error RemoveUser(long user_id);
|
||||
|
||||
Error AddItem(Item & item);
|
||||
Error EditItemById(Item & item, bool with_url = true);
|
||||
|
||||
Reference in New Issue
Block a user