MAINT-3957 FIXED Group owner issue

Mnikolenko ProductEngine 2014-04-28 11:48:11 +03:00
parent b1cffda8f3
commit cd7e7e9603
2 changed files with 17 additions and 10 deletions

View File

@ -1768,7 +1768,7 @@ LLPanelGroupRolesSubTab::LLPanelGroupRolesSubTab()
mMemberVisibleCheck(NULL),
mDeleteRoleButton(NULL),
mCreateRoleButton(NULL),
mFirstOpen(TRUE),
mHasRoleChange(FALSE)
{
}
@ -1870,6 +1870,7 @@ void LLPanelGroupRolesSubTab::deactivate()
lldebugs << "LLPanelGroupRolesSubTab::deactivate()" << llendl;
LLPanelGroupSubTab::deactivate();
mFirstOpen = FALSE;
}
bool LLPanelGroupRolesSubTab::needsApply(std::string& mesg)
@ -1887,7 +1888,7 @@ bool LLPanelGroupRolesSubTab::apply(std::string& mesg)
lldebugs << "LLPanelGroupRolesSubTab::apply()" << llendl;
saveRoleChanges(true);
mFirstOpen = FALSE;
LLGroupMgr::getInstance()->sendGroupRoleChanges(mGroupID);
notifyObservers();
@ -2024,14 +2025,17 @@ void LLPanelGroupRolesSubTab::update(LLGroupChange gc)
}
}
if (!gdatap || !gdatap->isMemberDataComplete())
if(!mFirstOpen)
{
LLGroupMgr::getInstance()->sendCapGroupMembersRequest(mGroupID);
}
if (!gdatap || !gdatap->isRoleMemberDataComplete())
{
LLGroupMgr::getInstance()->sendGroupRoleMembersRequest(mGroupID);
if (!gdatap || !gdatap->isMemberDataComplete())
{
LLGroupMgr::getInstance()->sendCapGroupMembersRequest(mGroupID);
}
if (!gdatap || !gdatap->isRoleMemberDataComplete())
{
LLGroupMgr::getInstance()->sendGroupRoleMembersRequest(mGroupID);
}
}
if ((GC_ROLE_MEMBER_DATA == gc || GC_MEMBER_DATA == gc)
@ -2662,7 +2666,7 @@ void LLPanelGroupRoles::setGroupID(const LLUUID& id)
if(mSubTabContainer)
mSubTabContainer->selectTab(1);
group_roles_tab->mFirstOpen = TRUE;
activate();
}

View File

@ -259,6 +259,9 @@ public:
void saveRoleChanges(bool select_saved_role);
virtual void setGroupID(const LLUUID& id);
BOOL mFirstOpen;
protected:
void handleActionCheck(LLUICtrl* ctrl, bool force);
LLSD createRoleItem(const LLUUID& role_id, std::string name, std::string title, S32 members);