Sync with upstream to refix Issue 1946: Unable to view other Group Land info with Admin mode under builds 6xxx+

LL reverted a change they made during viewer-tiger, apparently. Silly LL.
This commit is contained in:
Inusaito Sayori
2015-06-18 23:46:30 -04:00
parent 0965bc576c
commit 2bd2a7a64b

View File

@@ -410,20 +410,49 @@ void LLPanelGroupLandMoney::impl::processGroupLand(LLMessageSystem* msg)
msg->getUUID("QueryData", "OwnerID", owner_id, 0);
msg->getUUID("TransactionData", "TransactionID", trans_id);
S32 total_contribution = 0;
if(owner_id.isNull())
{
// special block which has total contribution
++first_block;
S32 committed = 0;
S32 billable_area = 0;
if(count == 1)
{
msg->getS32("QueryData", "BillableArea", committed, 0);
}
else
{
for(S32 i = first_block; i < count; ++i)
{
msg->getS32("QueryData", "BillableArea", billable_area, i);
committed+=billable_area;
}
}
S32 total_contribution;
msg->getS32("QueryData", "ActualArea", total_contribution, 0);
mPanel.getChild<LLUICtrl>("total_contributed_land_value")->setTextArg("[AREA]", llformat("%d", total_contribution));
mPanel.getChild<LLUICtrl>("total_land_in_use_value")->setTextArg("[AREA]", llformat("%d", committed));
S32 available = total_contribution - committed;
mPanel.getChild<LLUICtrl>("land_available_value")->setTextArg("[AREA]", llformat("%d", available));
if ( mGroupOverLimitTextp && mGroupOverLimitIconp )
{
mGroupOverLimitIconp->setVisible(available < 0);
mGroupOverLimitTextp->setVisible(available < 0);
}
}
if ( trans_id != mTransID ) return;
// This power was removed to make group roles simpler
//if ( !gAgent.hasPowerInGroup(mGroupID, GP_LAND_VIEW_OWNED) ) return;
if (!gAgent.isInGroup(mPanel.mGroupID)) return;
mGroupParcelsp->setCommentText(mEmptyParcelsText);
std::string name;
@@ -436,7 +465,6 @@ void LLPanelGroupLandMoney::impl::processGroupLand(LLMessageSystem* msg)
std::string sim_name;
std::string land_sku;
std::string land_type;
S32 committed = 0;
for(S32 i = first_block; i < count; ++i)
{
@@ -466,7 +494,6 @@ void LLPanelGroupLandMoney::impl::processGroupLand(LLMessageSystem* msg)
S32 region_y = ll_round(global_y) % REGION_WIDTH_UNITS;
std::string location = sim_name + llformat(" (%d, %d)", region_x, region_y);
std::string area;
committed+=billable_area;
if(billable_area == actual_area)
@@ -505,17 +532,6 @@ void LLPanelGroupLandMoney::impl::processGroupLand(LLMessageSystem* msg)
mGroupParcelsp->addElement(row, ADD_SORTED);
}
mPanel.getChild<LLUICtrl>("total_land_in_use_value")->setTextArg("[AREA]", llformat("%d", committed));
S32 available = total_contribution - committed;
mPanel.getChild<LLUICtrl>("land_available_value")->setTextArg("[AREA]", llformat("%d", available));
if ( mGroupOverLimitTextp && mGroupOverLimitIconp )
{
mGroupOverLimitIconp->setVisible(available < 0);
mGroupOverLimitTextp->setVisible(available < 0);
}
}
}