diff options
-rw-r--r-- | indra/newview/llfloaterland.cpp | 3 | ||||
-rw-r--r-- | indra/newview/llfloaterregioninfo.cpp | 18 | ||||
-rw-r--r-- | indra/newview/llfloaterregioninfo.h | 1 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_about_land.xml | 48 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/notifications.xml | 11 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_region_estate.xml | 88 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/strings.xml | 10 |
7 files changed, 105 insertions, 74 deletions
diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp index abe9f99914..4352909706 100644 --- a/indra/newview/llfloaterland.cpp +++ b/indra/newview/llfloaterland.cpp @@ -2678,7 +2678,8 @@ void LLPanelLandAccess::refresh_ui() std::string group_name; if (gCacheName->getGroupName(parcel->getGroupID(), group_name)) { - getChildView("GroupCheck")->setEnabled(can_manage_allowed); + bool can_allow_groups = !public_access || (public_access && (getChild<LLUICtrl>("limit_payment")->getValue().asBoolean() ^ getChild<LLUICtrl>("limit_age_verified")->getValue().asBoolean())); + getChildView("GroupCheck")->setEnabled(can_manage_allowed && can_allow_groups); } getChildView("AccessList")->setEnabled(can_manage_allowed); S32 allowed_list_count = parcel->mAccessList.size(); diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index f4bc3302ba..5e6d967334 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -2231,7 +2231,7 @@ bool LLPanelEstateInfo::estateUpdate(LLMessageSystem* msg) BOOL LLPanelEstateInfo::postBuild() { // set up the callbacks for the generic controls - initCtrl("externally_visible_check"); + initCtrl("externally_visible_radio"); initCtrl("allow_direct_teleport"); initCtrl("limit_payment"); initCtrl("limit_age_verified"); @@ -2284,13 +2284,15 @@ BOOL LLPanelEstateInfo::postBuild() childSetAction("message_estate_btn", boost::bind(&LLPanelEstateInfo::onClickMessageEstate, this)); childSetAction("kick_user_from_estate_btn", boost::bind(&LLPanelEstateInfo::onClickKickUser, this)); + getChild<LLUICtrl>("parcel_access_override")->setCommitCallback(boost::bind(&LLPanelEstateInfo::onChangeAccessOverride, this)); + return LLPanelRegionInfo::postBuild(); } void LLPanelEstateInfo::refresh() { // Disable access restriction controls if they make no sense. - bool public_access = getChild<LLUICtrl>("externally_visible_check")->getValue().asBoolean(); + bool public_access = getChild<LLRadioGroup>("externally_visible_radio")->getSelectedIndex(); getChildView("Only Allow")->setEnabled(public_access); getChildView("limit_payment")->setEnabled(public_access); @@ -2311,7 +2313,7 @@ void LLPanelEstateInfo::refreshFromEstate() getChild<LLUICtrl>("estate_name")->setValue(estate_info.getName()); setOwnerName(LLSLURL("agent", estate_info.getOwnerID(), "inspect").getSLURLString()); - getChild<LLUICtrl>("externally_visible_check")->setValue(estate_info.getIsExternallyVisible()); + getChild<LLRadioGroup>("externally_visible_radio")->setSelectedIndex(estate_info.getIsExternallyVisible() ? 1 : 0); getChild<LLUICtrl>("voice_chat_check")->setValue(estate_info.getAllowVoiceChat()); getChild<LLUICtrl>("allow_direct_teleport")->setValue(estate_info.getAllowDirectTeleport()); getChild<LLUICtrl>("limit_payment")->setValue(estate_info.getDenyAnonymous()); @@ -2354,7 +2356,7 @@ bool LLPanelEstateInfo::callbackChangeLindenEstate(const LLSD& notification, con // update model estate_info.setUseFixedSun(false); // we don't support fixed sun estates anymore - estate_info.setIsExternallyVisible(getChild<LLUICtrl>("externally_visible_check")->getValue().asBoolean()); + estate_info.setIsExternallyVisible(getChild<LLRadioGroup>("externally_visible_radio")->getSelectedIndex()); estate_info.setAllowDirectTeleport(getChild<LLUICtrl>("allow_direct_teleport")->getValue().asBoolean()); estate_info.setDenyAnonymous(getChild<LLUICtrl>("limit_payment")->getValue().asBoolean()); estate_info.setDenyAgeUnverified(getChild<LLUICtrl>("limit_age_verified")->getValue().asBoolean()); @@ -2462,6 +2464,14 @@ bool LLPanelEstateInfo::onMessageCommit(const LLSD& notification, const LLSD& re return false; } +void LLPanelEstateInfo::onChangeAccessOverride() +{ + if (!getChild<LLUICtrl>("parcel_access_override")->getValue().asBoolean()) + { + LLNotificationsUtil::add("EstateParcelAccessOverride"); + } +} + LLPanelEstateCovenant::LLPanelEstateCovenant() : mCovenantID(LLUUID::null), diff --git a/indra/newview/llfloaterregioninfo.h b/indra/newview/llfloaterregioninfo.h index dbb0ad05e9..c9d0e51640 100644 --- a/indra/newview/llfloaterregioninfo.h +++ b/indra/newview/llfloaterregioninfo.h @@ -274,6 +274,7 @@ public: void onChangeFixedSun(); void onChangeUseGlobalTime(); + void onChangeAccessOverride(); void onClickEditSky(); void onClickEditSkyHelp(); diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml index a137770e26..535af317d9 100644 --- a/indra/newview/skins/default/xui/en/floater_about_land.xml +++ b/indra/newview/skins/default/xui/en/floater_about_land.xml @@ -1896,49 +1896,37 @@ Only large parcels can be listed in search. layout="topleft" left="8" name="public_access" - label="Allow Public Access (Unchecking this will create ban lines)" + label="Anyone can visit (Unchecking this will create ban lines)" top_pad="10" width="278" /> - <text - type="string" - length="1" - follows="top|left" - height="16" - layout="topleft" - left_delta="20" - name="Only Allow" - top="30" - width="325"> - Allow access only to Residents who: - </text> <check_box follows="top|left" height="16" - label="Have payment Information on File [ESTATE_PAYMENT_LIMIT]" + label="Must be 18+ [ESTATE_AGE_LIMIT]" layout="topleft" - left_delta="0" - name="limit_payment" - tool_tip="Residents must have payment information on file to access this parcel. See the [SUPPORT_SITE] for more information." + left_delta="20" + name="limit_age_verified" + tool_tip="Residents must be age 18 or older to access this parcel. See the [SUPPORT_SITE] for more information." top_pad="4" width="278" /> <check_box follows="top|left" height="16" - label="Are age 18 or older [ESTATE_AGE_LIMIT]" + label="Must have payment info on file [ESTATE_PAYMENT_LIMIT]" layout="topleft" left_delta="0" - name="limit_age_verified" - tool_tip="Residents must be age 18 or older to access this parcel. See the [SUPPORT_SITE] for more information." + name="limit_payment" + tool_tip="Residents must have payment information on file to access this parcel. See the [SUPPORT_SITE] for more information." top_pad="4" width="278" /> <check_box height="16" - label="Allow Group Access: [GROUP]" + label="Allow group [GROUP] with no restrictions" layout="topleft" left="8" name="GroupCheck" tool_tip="Set group in the General tab." - top="89" + top="73" width="278" /> <check_box enabled="false" @@ -1996,6 +1984,18 @@ Only large parcels can be listed in search. name="HoursSpin" top_pad="5" width="200" /> + <text + type="string" + length="1" + follows="top|left" + height="16" + layout="topleft" + left="8" + name="OwnerLimited" + top_pad="5" + width="400"> + (The estate owner may have limited these choices) + </text> <panel name="Allowed_layout_panel" follows="top|left" @@ -2014,7 +2014,7 @@ Only large parcels can be listed in search. name="AllowedText" top="0" width="230"> - Allowed Residents ([COUNT], max [MAX]) + Always allowed ([COUNT], max [MAX]) </text> <name_list column_padding="0" @@ -2063,7 +2063,7 @@ Only large parcels can be listed in search. name="BanCheck" top="0" width="200"> - Banned Residents ([COUNT], max [MAX]) + Always banned ([COUNT], max [MAX]) </text> <name_list column_padding="0" diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index c4190a4940..340a852828 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -4979,6 +4979,17 @@ Are you sure you want to change the Estate Covenant? <notification icon="alertmodal.tga" + name="EstateParcelAccessOverride" + type="alertmodal"> +Unchecking this option may remove restrictions that parcel owners have added to prevent griefing, maintain privacy, or protect underage residents from adult material. Please discuss with your parcel owners as needed. + <tag>confirm</tag> + <usetemplate + name="okbutton" + yestext="OK"/> + </notification> + + <notification + icon="alertmodal.tga" name="RegionEntryAccessBlocked" type="alertmodal"> <tag>fail</tag> diff --git a/indra/newview/skins/default/xui/en/panel_region_estate.xml b/indra/newview/skins/default/xui/en/panel_region_estate.xml index 69e7a7b7a5..72b563dd99 100644 --- a/indra/newview/skins/default/xui/en/panel_region_estate.xml +++ b/indra/newview/skins/default/xui/en/panel_region_estate.xml @@ -82,24 +82,32 @@ <view_border bevel_style="none" follows="top|left" - height="95" + height="100" layout="topleft" left="10" top_pad="5" - width="470" /> - - <check_box - height="20" - label="Allow Public Access" + width="505" /> + <radio_group + height="32" layout="topleft" - left="20" - name="externally_visible_check" + name="externally_visible_radio" top_delta="5" - width="200" /> - + left="20" + width="200"> + <radio_item + height="16" + label="Allow only residents and groups listed below" + layout="topleft" + name="estate_restricted_access" /> + <radio_item + height="16" + label="Anyone can visit" + layout="topleft" + name="estate_public_access" /> + </radio_group> <check_box height="18" - label="Allow Parcel Access Override" + label="Parcel owners can be more restrictive" layout="topleft" left="280" name="parcel_access_override" @@ -140,7 +148,7 @@ layout="topleft" left="20" name="Only Allow" - top_delta="-30" + top_delta="-25" width="278"> Allow access only to Residents who: </text> @@ -173,7 +181,7 @@ height="20" layout="topleft" name="estate_manager_label" - top_pad="30" + top_pad="25" left="10" width="200"> Estate Managers: @@ -188,7 +196,7 @@ name="allow_resident_label" top_delta="0" width="200"> - Allowed Residents: + Always allowed: </text> <!-- Estate Managers box --> @@ -199,7 +207,7 @@ layout="topleft" left="10" top_pad="-5" - width="200" /> + width="235" /> <name_list follows="left|top" height="71" @@ -208,9 +216,9 @@ multi_select="true" name="estate_manager_name_list" top_delta="0" - width="200" /> + width="235" /> - <!-- Allowed Residents box --> + <!-- Always allowed box --> <view_border bevel_style="none" follows="top|left" @@ -218,7 +226,7 @@ layout="topleft" left="280" top_delta="0" - width="200" /> + width="235" /> <name_list follows="left|top" height="71" @@ -227,7 +235,7 @@ multi_select="true" name="allowed_avatar_name_list" top_delta="0" - width="200" /> + width="235" /> <!-- Estate Managers buttons --> <button @@ -238,7 +246,7 @@ left="10" name="add_estate_manager_btn" top_pad="6" - width="97" /> + width="114" /> <button follows="left|top" height="23" @@ -246,9 +254,9 @@ layout="topleft" name="remove_estate_manager_btn" left_pad="6" - width="97" /> + width="114" /> - <!-- Allowed Residents buttons --> + <!-- Always allowed buttons --> <button follows="left|top" height="23" @@ -257,7 +265,7 @@ layout="topleft" name="add_allowed_avatar_btn" top_delta="0" - width="97" /> + width="114" /> <button follows="left|top" height="23" @@ -266,7 +274,7 @@ name="remove_allowed_avatar_btn" left_pad="6" top_delta="0" - width="97" /> + width="114" /> <text type="string" @@ -278,7 +286,7 @@ name="allow_group_label" top_pad="10" width="200"> - Allowed Groups: + Groups always allowed: </text> <text type="string" @@ -290,10 +298,10 @@ name="ban_resident_label" top_delta="0" width="200"> - Banned Residents: + Always banned: </text> - <!-- Allowed Groups box --> + <!-- Groups always allowed box --> <view_border bevel_style="none" follows="top|left" @@ -301,7 +309,7 @@ layout="topleft" left="10" top_pad="-5" - width="200" /> + width="235" /> <name_list follows="left|top" height="71" @@ -310,9 +318,9 @@ multi_select="true" name="allowed_group_name_list" top_delta="0" - width="200" /> + width="235" /> - <!-- Banned Residents box --> + <!-- Always banned box --> <view_border bevel_style="none" follows="top|left" @@ -320,7 +328,7 @@ layout="topleft" left="280" top_delta="0" - width="200" /> + width="235" /> <name_list follows="left|top" height="71" @@ -329,9 +337,9 @@ multi_select="true" name="banned_avatar_name_list" top_delta="0" - width="200" /> + width="235" /> - <!-- Allowed Groups buttons --> + <!-- Groups always allowed buttons --> <button follows="left|top" height="23" @@ -340,7 +348,7 @@ left="10" name="add_allowed_group_btn" top_pad="6" - width="97" /> + width="114" /> <button follows="left|top" height="23" @@ -349,9 +357,9 @@ name="remove_allowed_group_btn" left_pad="6" top_delta="0" - width="97" /> + width="114" /> - <!-- Banned Residents buttons --> + <!-- Always banned buttons --> <button follows="left|top" height="23" @@ -360,7 +368,7 @@ left="280" name="add_banned_avatar_btn" top_delta="0" - width="97" /> + width="114" /> <button follows="left|top" height="23" @@ -369,7 +377,7 @@ name="remove_banned_avatar_btn" top_delta="0" left_pad="6" - width="97" /> + width="114" /> <button follows="left|top" @@ -379,7 +387,7 @@ left="10" name="message_estate_btn" top_pad="20" - width="220" /> + width="235" /> <button follows="left|top" height="23" @@ -388,6 +396,6 @@ left="280" name="kick_user_from_estate_btn" top_delta="0" - width="220" /> + width="235" /> </panel> diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml index b75f631799..bbbf7e3ecd 100644 --- a/indra/newview/skins/default/xui/en/strings.xml +++ b/indra/newview/skins/default/xui/en/strings.xml @@ -2643,12 +2643,12 @@ This feature is currently in Beta. Please add your name to this [http://goo.gl/f <string name="RegionInfoAllEstatesYouManage"> all estates that you manage for [OWNER] </string> - <string name="RegionInfoAllowedResidents">Allowed Residents: ([ALLOWEDAGENTS], max [MAXACCESS])</string> - <string name="RegionInfoAllowedGroups">Allowed Groups: ([ALLOWEDGROUPS], max [MAXACCESS])</string> + <string name="RegionInfoAllowedResidents">Always allowed: ([ALLOWEDAGENTS], max [MAXACCESS])</string> + <string name="RegionInfoAllowedGroups">Groups always allowed: ([ALLOWEDGROUPS], max [MAXACCESS])</string> <string name="RegionInfoEstateManagers">Estate Managers: ([ESTATEMANAGERS], max [MAXMANAGERS])</string> - <string name="RegionInfoBannedResidents">Banned Residents: ([BANNEDAGENTS], max [MAXBANNED])</string> - <string name="RegionInfoListTypeAllowedAgents">Allowed Residents</string> - <string name="RegionInfoListTypeBannedAgents">Banned Residents</string> + <string name="RegionInfoBannedResidents">Always banned: ([BANNEDAGENTS], max [MAXBANNED])</string> + <string name="RegionInfoListTypeAllowedAgents">Always allowed</string> + <string name="RegionInfoListTypeBannedAgents">Always banned</string> <!-- script limits floater --> <string name="ScriptLimitsParcelScriptMemory">Parcel Script Memory</string> |