diff options
8 files changed, 36 insertions, 7 deletions
diff --git a/OpenSim/Data/MySQL/Resources/015_RegionStore.sql b/OpenSim/Data/MySQL/Resources/015_RegionStore.sql new file mode 100644 index 0000000..6d4f9f3 --- /dev/null +++ b/OpenSim/Data/MySQL/Resources/015_RegionStore.sql | |||
@@ -0,0 +1,6 @@ | |||
1 | begin; | ||
2 | |||
3 | alter table estate_settings add column DenyMinors tinyint not null; | ||
4 | |||
5 | commit; | ||
6 | |||
diff --git a/OpenSim/Data/SQLite/Resources/008_RegionStore.sql b/OpenSim/Data/SQLite/Resources/008_RegionStore.sql new file mode 100644 index 0000000..28bfbf5 --- /dev/null +++ b/OpenSim/Data/SQLite/Resources/008_RegionStore.sql | |||
@@ -0,0 +1,6 @@ | |||
1 | begin; | ||
2 | |||
3 | alter table estate_settings add column DenyMinors tinyint not null default 0; | ||
4 | |||
5 | commit; | ||
6 | |||
diff --git a/OpenSim/Framework/EstateSettings.cs b/OpenSim/Framework/EstateSettings.cs index 31655f4..8a00f9d 100644 --- a/OpenSim/Framework/EstateSettings.cs +++ b/OpenSim/Framework/EstateSettings.cs | |||
@@ -231,6 +231,14 @@ namespace OpenSim.Framework | |||
231 | set { m_EstateOwner = value; } | 231 | set { m_EstateOwner = value; } |
232 | } | 232 | } |
233 | 233 | ||
234 | private bool m_DenyMinors = false; | ||
235 | |||
236 | public bool DenyMinors | ||
237 | { | ||
238 | get { return m_DenyMinors; } | ||
239 | set { m_DenyMinors = value; } | ||
240 | } | ||
241 | |||
234 | // All those lists... | 242 | // All those lists... |
235 | // | 243 | // |
236 | private List<LLUUID> l_EstateManagers = new List<LLUUID>(); | 244 | private List<LLUUID> l_EstateManagers = new List<LLUUID>(); |
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index 18e187b..8d50c30 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -642,7 +642,7 @@ namespace OpenSim.Framework | |||
642 | 642 | ||
643 | void SendRegionInfoToEstateMenu(RegionInfoForEstateMenuArgs args); | 643 | void SendRegionInfoToEstateMenu(RegionInfoForEstateMenuArgs args); |
644 | void SendEstateCovenantInformation(LLUUID covenant); | 644 | void SendEstateCovenantInformation(LLUUID covenant); |
645 | void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant); | 645 | void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail); |
646 | 646 | ||
647 | void SendLandProperties(IClientAPI remote_client, int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags); | 647 | void SendLandProperties(IClientAPI remote_client, int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags); |
648 | void SendLandAccessListData(List<LLUUID> avatars, uint accessFlag, int localLandID); | 648 | void SendLandAccessListData(List<LLUUID> avatars, uint accessFlag, int localLandID); |
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 2800cc4..4e9b1ae 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -2657,15 +2657,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
2657 | this.OutPacket(einfopack, ThrottleOutPacketType.Task); | 2657 | this.OutPacket(einfopack, ThrottleOutPacketType.Task); |
2658 | } | 2658 | } |
2659 | 2659 | ||
2660 | public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant) | 2660 | public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail) |
2661 | { | 2661 | { |
2662 | EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket(); | 2662 | EstateOwnerMessagePacket packet = new EstateOwnerMessagePacket(); |
2663 | packet.MethodData.Invoice = invoice; | 2663 | packet.MethodData.Invoice = invoice; |
2664 | packet.AgentData.TransactionID = LLUUID.Random(); | 2664 | packet.AgentData.TransactionID = LLUUID.Random(); |
2665 | packet.MethodData.Method = Helpers.StringToField("estateupdateinfo"); | 2665 | packet.MethodData.Method = Helpers.StringToField("estateupdateinfo"); |
2666 | EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[9]; | 2666 | EstateOwnerMessagePacket.ParamListBlock[] returnblock = new EstateOwnerMessagePacket.ParamListBlock[10]; |
2667 | 2667 | ||
2668 | for (int i = 0; i < 9; i++) | 2668 | for (int i = 0; i < 10; i++) |
2669 | { | 2669 | { |
2670 | returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock(); | 2670 | returnblock[i] = new EstateOwnerMessagePacket.ParamListBlock(); |
2671 | } | 2671 | } |
@@ -2681,6 +2681,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
2681 | returnblock[6].Parameter = Helpers.StringToField(covenant.ToString()); | 2681 | returnblock[6].Parameter = Helpers.StringToField(covenant.ToString()); |
2682 | returnblock[7].Parameter = Helpers.StringToField("1160895077"); // what is this? | 2682 | returnblock[7].Parameter = Helpers.StringToField("1160895077"); // what is this? |
2683 | returnblock[8].Parameter = Helpers.StringToField("1"); // what is this? | 2683 | returnblock[8].Parameter = Helpers.StringToField("1"); // what is this? |
2684 | returnblock[9].Parameter = Helpers.StringToField(abuseEmail); | ||
2684 | 2685 | ||
2685 | packet.ParamList = returnblock; | 2686 | packet.ParamList = returnblock; |
2686 | packet.Header.Reliable = false; | 2687 | packet.Header.Reliable = false; |
diff --git a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs index 7ca1f3a..44f9a93 100644 --- a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs +++ b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs | |||
@@ -60,7 +60,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate | |||
60 | m_scene.RegionInfo.EstateSettings.ParentEstateID, | 60 | m_scene.RegionInfo.EstateSettings.ParentEstateID, |
61 | GetEstateFlags(), | 61 | GetEstateFlags(), |
62 | sun, | 62 | sun, |
63 | m_scene.RegionInfo.RegionSettings.Covenant); | 63 | m_scene.RegionInfo.RegionSettings.Covenant, |
64 | m_scene.RegionInfo.EstateSettings.AbuseEmail); | ||
64 | 65 | ||
65 | remote_client.SendEstateManagersList(invoice, | 66 | remote_client.SendEstateManagersList(invoice, |
66 | m_scene.RegionInfo.EstateSettings.EstateManagers, | 67 | m_scene.RegionInfo.EstateSettings.EstateManagers, |
@@ -628,6 +629,11 @@ namespace OpenSim.Region.Environment.Modules.World.Estate | |||
628 | else | 629 | else |
629 | m_scene.RegionInfo.EstateSettings.DenyTransacted = false; | 630 | m_scene.RegionInfo.EstateSettings.DenyTransacted = false; |
630 | 631 | ||
632 | if ((parms1 & 0x40000000) != 0) | ||
633 | m_scene.RegionInfo.EstateSettings.DenyMinors = true; | ||
634 | else | ||
635 | m_scene.RegionInfo.EstateSettings.DenyMinors = false; | ||
636 | |||
631 | m_scene.RegionInfo.EstateSettings.Save(); | 637 | m_scene.RegionInfo.EstateSettings.Save(); |
632 | 638 | ||
633 | float sun = (float)m_scene.RegionInfo.RegionSettings.SunPosition; | 639 | float sun = (float)m_scene.RegionInfo.RegionSettings.SunPosition; |
@@ -797,6 +803,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate | |||
797 | flags |= Simulator.RegionFlags.ResetHomeOnTeleport; | 803 | flags |= Simulator.RegionFlags.ResetHomeOnTeleport; |
798 | if (m_scene.RegionInfo.EstateSettings.TaxFree) | 804 | if (m_scene.RegionInfo.EstateSettings.TaxFree) |
799 | flags |= Simulator.RegionFlags.TaxFree; | 805 | flags |= Simulator.RegionFlags.TaxFree; |
806 | if (m_scene.RegionInfo.EstateSettings.DenyMinors) | ||
807 | flags |= (Simulator.RegionFlags)(1 << 30); | ||
800 | 808 | ||
801 | return (uint)flags; | 809 | return (uint)flags; |
802 | } | 810 | } |
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs index 357e454..4c28361 100644 --- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs | |||
@@ -781,7 +781,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC | |||
781 | public void SendEstateCovenantInformation(LLUUID covenant) | 781 | public void SendEstateCovenantInformation(LLUUID covenant) |
782 | { | 782 | { |
783 | } | 783 | } |
784 | public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant) | 784 | public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail) |
785 | { | 785 | { |
786 | } | 786 | } |
787 | 787 | ||
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs index b1e1854..9859dc2 100644 --- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs +++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs | |||
@@ -773,7 +773,7 @@ namespace OpenSim.Region.Examples.SimpleModule | |||
773 | public void SendEstateCovenantInformation(LLUUID covenant) | 773 | public void SendEstateCovenantInformation(LLUUID covenant) |
774 | { | 774 | { |
775 | } | 775 | } |
776 | public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant) | 776 | public void SendDetailedEstateData(LLUUID invoice, string estateName, uint estateID, uint parentEstate, uint estateFlags, uint sunPosition, LLUUID covenant, string abuseEmail) |
777 | { | 777 | { |
778 | } | 778 | } |
779 | 779 | ||