* Fixed References in Prebuild so the project compiles
* Added Friends List methods to IUserData interface * Created Stub friendslist Database Methodsafrisby
parent
5b8620d82f
commit
57a1132585
|
@ -133,6 +133,31 @@ namespace OpenSim.Framework.Data.DB4o
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region User Friends List Data
|
||||||
|
|
||||||
|
public void AddNewUserFriend(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
//MainLog.Instance.Verbose("FRIEND", "Stub AddNewUserFriend called");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveUserFriend(LLUUID friendlistowner, LLUUID friend)
|
||||||
|
{
|
||||||
|
//MainLog.Instance.Verbose("FRIEND", "Stub RemoveUserFriend called");
|
||||||
|
}
|
||||||
|
public void UpdateUserFriendPerms(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
//MainLog.Instance.Verbose("FRIEND", "Stub UpdateUserFriendPerms called");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public List<FriendListItem> GetUserFriendList(LLUUID friendlistowner)
|
||||||
|
{
|
||||||
|
//MainLog.Instance.Verbose("FRIEND", "Stub GetUserFriendList called");
|
||||||
|
return new List<FriendListItem>();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
||||||
{
|
{
|
||||||
//Do nothing yet
|
//Do nothing yet
|
||||||
|
|
|
@ -99,6 +99,31 @@ namespace OpenSim.Framework.Data.MSSQL
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region User Friends List Data
|
||||||
|
|
||||||
|
public void AddNewUserFriend(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub AddNewUserFriend called");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveUserFriend(LLUUID friendlistowner, LLUUID friend)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub RemoveUserFriend called");
|
||||||
|
}
|
||||||
|
public void UpdateUserFriendPerms(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub UpdateUserFriendPerms called");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public List<FriendListItem> GetUserFriendList(LLUUID friendlistowner)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub GetUserFriendList called");
|
||||||
|
return new List<FriendListItem>();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
||||||
{
|
{
|
||||||
List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>();
|
List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>();
|
||||||
|
|
|
@ -145,6 +145,31 @@ namespace OpenSim.Framework.Data.MySQL
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region User Friends List Data
|
||||||
|
|
||||||
|
public void AddNewUserFriend(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub AddNewUserFriend called");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveUserFriend(LLUUID friendlistowner, LLUUID friend)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub RemoveUserFriend called");
|
||||||
|
}
|
||||||
|
public void UpdateUserFriendPerms(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub UpdateUserFriendPerms called");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public List<FriendListItem> GetUserFriendList(LLUUID friendlistowner)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub GetUserFriendList called");
|
||||||
|
return new List<FriendListItem>();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
||||||
{
|
{
|
||||||
List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>();
|
List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>();
|
||||||
|
|
|
@ -117,6 +117,31 @@ namespace OpenSim.Framework.Data.SQLite
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region User Friends List Data
|
||||||
|
|
||||||
|
public void AddNewUserFriend(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub AddNewUserFriend called");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveUserFriend(LLUUID friendlistowner, LLUUID friend)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub RemoveUserFriend called");
|
||||||
|
}
|
||||||
|
public void UpdateUserFriendPerms(LLUUID friendlistowner, LLUUID friend, uint perms)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub UpdateUserFriendPerms called");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public List<FriendListItem> GetUserFriendList(LLUUID friendlistowner)
|
||||||
|
{
|
||||||
|
MainLog.Instance.Verbose("FRIEND", "Stub GetUserFriendList called");
|
||||||
|
return new List<FriendListItem>();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
public List<Framework.AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query)
|
||||||
{
|
{
|
||||||
List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>();
|
List<Framework.AvatarPickerAvatar> returnlist = new List<Framework.AvatarPickerAvatar>();
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) Contributors, http://opensimulator.org/
|
||||||
|
* See CONTRIBUTORS.TXT for a full list of copyright holders.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions are met:
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in the
|
||||||
|
* documentation and/or other materials provided with the distribution.
|
||||||
|
* * Neither the name of the OpenSim Project nor the
|
||||||
|
* names of its contributors may be used to endorse or promote products
|
||||||
|
* derived from this software without specific prior written permission.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
|
||||||
|
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
|
||||||
|
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using libsecondlife;
|
||||||
|
|
||||||
|
namespace OpenSim.Framework
|
||||||
|
{
|
||||||
|
public class FriendListItem
|
||||||
|
{
|
||||||
|
public LLUUID FriendListOwner;
|
||||||
|
public LLUUID Friend;
|
||||||
|
|
||||||
|
// These are what the list owner gives the friend permission to do
|
||||||
|
public uint FriendPerms;
|
||||||
|
|
||||||
|
// These are what the friend gives the listowner permission to do
|
||||||
|
public uint FriendListOwnerPerms;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -50,6 +50,12 @@ namespace OpenSim.Framework
|
||||||
/// <returns>The user data profile</returns>
|
/// <returns>The user data profile</returns>
|
||||||
UserProfileData GetUserByName(string fname, string lname);
|
UserProfileData GetUserByName(string fname, string lname);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns a list of UUIDs firstnames and lastnames that match string query entered into the avatar picker.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="queryID">ID associated with the user's query. This must match what the client sent</param>
|
||||||
|
/// <param name="query">The filtered contents of the search box when the user hit search.</param>
|
||||||
|
/// <returns>The user data profile</returns>
|
||||||
List<AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query);
|
List<AvatarPickerAvatar> GeneratePickerResults(LLUUID queryID, string query);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -92,6 +98,34 @@ namespace OpenSim.Framework
|
||||||
/// <param name="agent">The agent to add</param>
|
/// <param name="agent">The agent to add</param>
|
||||||
void AddNewUserAgent(UserAgentData agent);
|
void AddNewUserAgent(UserAgentData agent);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Adds a new friend to the database for XUser
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="friendlistowner">The agent that who's friends list is being added to</param>
|
||||||
|
/// <param name="friend">The agent that being added to the friends list of the friends list owner</param>
|
||||||
|
/// <param name="perms">A uint bit vector for set perms that the friend being added has; 0 = none, 1=This friend can see when they sign on, 2 = map, 4 edit objects </param>
|
||||||
|
void AddNewUserFriend(LLUUID friendlistowner, LLUUID friend, uint perms);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Delete friend on friendlistowner's friendlist.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="friendlistowner">The agent that who's friends list is being updated</param>
|
||||||
|
/// <param name="friend">The Ex-friend agent</param>
|
||||||
|
void RemoveUserFriend(LLUUID friendlistowner, LLUUID friend);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Update permissions for friend on friendlistowner's friendlist.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="friendlistowner">The agent that who's friends list is being updated</param>
|
||||||
|
/// <param name="friend">The agent that is getting or loosing permissions</param>
|
||||||
|
/// <param name="perms">A uint bit vector for set perms that the friend being added has; 0 = none, 1=This friend can see when they sign on, 2 = map, 4 edit objects </param>
|
||||||
|
void UpdateUserFriendPerms(LLUUID friendlistowner, LLUUID friend, uint perms);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns a list of FriendsListItems that describe the friends and permissions in the friend relationship for LLUUID friendslistowner
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="friendlistowner">The agent that we're retreiving the friends Data.</param>
|
||||||
|
List<FriendListItem> GetUserFriendList(LLUUID friendlistowner);
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Attempts to move currency units between accounts (NOT RELIABLE / TRUSTWORTHY. DONT TRY RUN YOUR OWN CURRENCY EXCHANGE WITH REAL VALUES)
|
/// Attempts to move currency units between accounts (NOT RELIABLE / TRUSTWORTHY. DONT TRY RUN YOUR OWN CURRENCY EXCHANGE WITH REAL VALUES)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -27,24 +27,61 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using OpenSim.Framework;
|
||||||
|
using OpenSim.Framework.Console;
|
||||||
using OpenSim.Region.Environment.Interfaces;
|
using OpenSim.Region.Environment.Interfaces;
|
||||||
using OpenSim.Region.Environment.Scenes;
|
using OpenSim.Region.Environment.Scenes;
|
||||||
|
using libsecondlife;
|
||||||
|
using libsecondlife.Packets;
|
||||||
|
|
||||||
namespace OpenSim.Region.Environment.Modules
|
namespace OpenSim.Region.Environment.Modules
|
||||||
{
|
{
|
||||||
public class FriendsModule : IRegionModule
|
public class FriendsModule : IRegionModule
|
||||||
{
|
{
|
||||||
private Scene m_scene;
|
private List<Scene> m_scenes = new List<Scene>();
|
||||||
|
private LogBase m_log;
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(Scene scene, IConfigSource config)
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
m_log = MainLog.Instance;
|
||||||
|
if (!m_scenes.Contains(scene))
|
||||||
|
{
|
||||||
|
m_scenes.Add(scene);
|
||||||
|
scene.EventManager.OnNewClient += OnNewClient;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnNewClient(IClientAPI client)
|
||||||
|
{
|
||||||
|
FormFriendship(client,new Guid("c43a67ab-b196-4d62-936c-b40369547dee"));
|
||||||
|
FormFriendship(client, new Guid("0a2f777b-f44c-4662-8b22-c90ae038a3e6"));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void FormFriendship(IClientAPI client, Guid friend)
|
||||||
|
{
|
||||||
|
foreach (Scene scene in m_scenes)
|
||||||
|
{
|
||||||
|
if (scene.Entities.ContainsKey(client.AgentId) && scene.Entities[client.AgentId] is ScenePresence)
|
||||||
|
{
|
||||||
|
OnlineNotificationPacket ONPack = new OnlineNotificationPacket();
|
||||||
|
OnlineNotificationPacket.AgentBlockBlock[] AgentBlock = new OnlineNotificationPacket.AgentBlockBlock[1];
|
||||||
|
|
||||||
|
AgentBlock[0] = new OnlineNotificationPacket.AgentBlockBlock();
|
||||||
|
AgentBlock[0].AgentID = new LLUUID(friend);
|
||||||
|
ONPack.AgentBlock = AgentBlock;
|
||||||
|
client.OutPacket(ONPack,ThrottleOutPacketType.Task);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -56,7 +93,7 @@ namespace OpenSim.Region.Environment.Modules
|
||||||
|
|
||||||
public bool IsSharedModule
|
public bool IsSharedModule
|
||||||
{
|
{
|
||||||
get { return false; }
|
get { return true; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -29,6 +29,8 @@
|
||||||
using System;
|
using System;
|
||||||
using libsecondlife;
|
using libsecondlife;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
using OpenSim.Grid.ScriptServer;
|
||||||
|
using OpenSim.Region.ScriptEngine.DotNetEngine;
|
||||||
|
|
||||||
namespace OpenSim.Region.ScriptEngine.RemoteServer
|
namespace OpenSim.Region.ScriptEngine.RemoteServer
|
||||||
{
|
{
|
||||||
|
@ -39,7 +41,7 @@ namespace OpenSim.Region.ScriptEngine.RemoteServer
|
||||||
internal class EventManager
|
internal class EventManager
|
||||||
{
|
{
|
||||||
|
|
||||||
System.Collections.Generic.Dictionary<uint, OpenSim.Grid.ScriptServer.RemotingObject> remoteScript = new System.Collections.Generic.Dictionary<uint, OpenSim.Grid.ScriptServer.RemotingObject>();
|
System.Collections.Generic.Dictionary<uint, RemotingObject> remoteScript = new System.Collections.Generic.Dictionary<uint, OpenSim.Grid.ScriptServer.RemotingObject>();
|
||||||
|
|
||||||
|
|
||||||
private ScriptEngine myScriptEngine;
|
private ScriptEngine myScriptEngine;
|
||||||
|
|
|
@ -1176,6 +1176,9 @@
|
||||||
<Reference name="OpenSim.Framework.Console"/>
|
<Reference name="OpenSim.Framework.Console"/>
|
||||||
<Reference name="OpenSim.Region.ScriptEngine.Common"/>
|
<Reference name="OpenSim.Region.ScriptEngine.Common"/>
|
||||||
<Reference name="OpenSim.Region.Terrain.BasicTerrain"/>
|
<Reference name="OpenSim.Region.Terrain.BasicTerrain"/>
|
||||||
|
<Reference name="OpenSim.Grid.ScriptServer"/>
|
||||||
|
<Reference name="OpenSim.Region.ScriptEngine"/>
|
||||||
|
<Reference name="OpenSim.Region.ScriptEngine.DotNetEngine"/>
|
||||||
<Reference name="Axiom.MathLib.dll" localCopy="false"/>
|
<Reference name="Axiom.MathLib.dll" localCopy="false"/>
|
||||||
<Reference name="Nini.dll" />
|
<Reference name="Nini.dll" />
|
||||||
<Files>
|
<Files>
|
||||||
|
@ -1201,11 +1204,14 @@
|
||||||
<ReferencePath>../../../bin/</ReferencePath>
|
<ReferencePath>../../../bin/</ReferencePath>
|
||||||
<Reference name="System" localCopy="false"/>
|
<Reference name="System" localCopy="false"/>
|
||||||
<Reference name="System.Data" localCopy="false"/>
|
<Reference name="System.Data" localCopy="false"/>
|
||||||
|
<Reference name="System.Runtime.Remoting" localCopy="false"/>
|
||||||
<Reference name="System.Xml" localCopy="false"/>
|
<Reference name="System.Xml" localCopy="false"/>
|
||||||
|
<Reference name="OpenSim"/>
|
||||||
<Reference name="OpenSim.Framework"/>
|
<Reference name="OpenSim.Framework"/>
|
||||||
<Reference name="OpenSim.Framework.Console"/>
|
<Reference name="OpenSim.Framework.Console"/>
|
||||||
<Reference name="OpenSim.Framework.Servers"/>
|
<Reference name="OpenSim.Framework.Servers"/>
|
||||||
<Reference name="OpenSim.Framework.Data"/>
|
<Reference name="OpenSim.Framework.Data"/>
|
||||||
|
<Reference name="OpenSim.Region.Environment"/>
|
||||||
<Reference name="OpenSim.Region.ScriptEngine.DotNetEngine"/>
|
<Reference name="OpenSim.Region.ScriptEngine.DotNetEngine"/>
|
||||||
<Reference name="OpenSim.Region.ScriptEngine.Common"/>
|
<Reference name="OpenSim.Region.ScriptEngine.Common"/>
|
||||||
<Reference name="libsecondlife.dll"/>
|
<Reference name="libsecondlife.dll"/>
|
||||||
|
|
Loading…
Reference in New Issue