Global creator information working on MySQL DB and on load/save OARs. Creator name properly shown on the viewer as first.last @authority.

New option added to save oar -profile=url. Migration on RegionStore making CreatorID be 255 chars.
Moved Handling of user UUID -> name requests to a new module UserManagement/UserManagementModule.
This commit is contained in:
Diva Canto
2010-11-21 13:16:52 -08:00
parent f1151f20dc
commit 6a9ae9e7cb
14 changed files with 434 additions and 56 deletions

View File

@@ -435,6 +435,7 @@ namespace OpenSim.Region.Framework.Scenes
private DateTime m_expires;
private DateTime m_rezzed;
private bool m_createSelected = false;
private string m_creatorData = string.Empty;
public UUID CreatorID
{
@@ -448,6 +449,56 @@ namespace OpenSim.Region.Framework.Scenes
}
}
public string CreatorData
{
get { return m_creatorData; }
set { m_creatorData = value; }
}
public string CreatorIdentification
{
get
{
if (m_creatorData != null && m_creatorData != string.Empty)
return _creatorID.ToString() + ';' + m_creatorData;
else
return _creatorID.ToString();
}
set
{
if ((value == null) || (value != null && value == string.Empty))
{
m_creatorData = string.Empty;
return;
}
if (!value.Contains(";")) // plain UUID
{
UUID uuid = UUID.Zero;
UUID.TryParse(value, out uuid);
_creatorID = uuid;
}
else // <uuid>[;<endpoint>[;name]]
{
string name = "Unknown User";
string[] parts = value.Split(';');
if (parts.Length >= 1)
{
UUID uuid = UUID.Zero;
UUID.TryParse(parts[0], out uuid);
_creatorID = uuid;
}
if (parts.Length >= 2)
m_creatorData = parts[1];
if (parts.Length >= 3)
name = parts[2];
m_creatorData += ';' + name;
}
}
}
/// <summary>
/// A relic from when we we thought that prims contained folder objects. In
/// reality, prim == folder