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:
2012-03-09 02:36:25 +00:00
parent 6c2c12fe5e
commit 489310ba1c
51 changed files with 1146 additions and 602 deletions

View File

@@ -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;
}
}

View File

@@ -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);