blob: 0d0dac8ceb53a2ce32aef3ece5f1a394938aa7c7 [file] [log] [blame]
using System.Security.Principal;
using System.Text;
using Nexus.Core.Profile;
namespace PhoneBook.Core
{
/// <summary>
/// Extend UserProfile to include properties specific to this application,
/// such as IsEditor.
/// </summary>
///
public class AppUserProfile : UserProfile
{
/// <summary>
/// Provide a field for IsEditor property.
/// </summary>
private bool _IsEditor = false;
/// <summary>
/// Indicate whether user has editing priveleges.
/// </summary>
///
public bool IsEditor
{
get { return _IsEditor; }
set { _IsEditor = value; }
}
/// <summary>
/// Provide a field for Entry property.
/// </summary>
///
private AppEntry _Entry;
/// <summary>
/// Record directory entry for user.
/// </summary>
///
public AppEntry Entry
{
get { return _Entry; }
set
{
_Entry = value;
if (_Entry != null)
{
StringBuilder sb = new StringBuilder();
sb.Append(_Entry.first_name);
sb.Append(" ");
sb.Append(Entry.last_name);
FullName = sb.ToString().Trim();
}
}
}
/// <summary>
/// Provide a field for FullName property.
/// </summary>
///
private string _FullName;
/// <summary>
/// Record the user's full name (first and last names).
/// </summary>
///
public string FullName
{
get { return _FullName; }
set { _FullName = value; }
}
/// <summary>
/// Instantiate from an IIdentity.
/// </summary>
/// <param name="id">Identity to copy for this profile.</param>
///
public AppUserProfile(IIdentity id)
{
Principal = new UserPrincipal(id);
}
}
}