using System;
using System.Runtime.Serialization;
namespace Umbraco.Web.Models
{
///
/// A model representing the tours a user has taken/completed
///
[DataContract(Name = "userTourStatus", Namespace = "")]
public class UserTourStatus : IEquatable
{
///
/// The tour alias
///
[DataMember(Name = "alias")]
public string Alias { get; set; }
///
/// If the tour is completed
///
[DataMember(Name = "completed")]
public bool Completed { get; set; }
///
/// If the tour is disabled
///
[DataMember(Name = "disabled")]
public bool Disabled { get; set; }
public bool Equals(UserTourStatus other)
{
if (ReferenceEquals(null, other)) return false;
if (ReferenceEquals(this, other)) return true;
return string.Equals(Alias, other.Alias);
}
public override bool Equals(object obj)
{
if (ReferenceEquals(null, obj)) return false;
if (ReferenceEquals(this, obj)) return true;
if (obj.GetType() != this.GetType()) return false;
return Equals((UserTourStatus) obj);
}
public override int GetHashCode()
{
return Alias.GetHashCode();
}
public static bool operator ==(UserTourStatus left, UserTourStatus right)
{
return Equals(left, right);
}
public static bool operator !=(UserTourStatus left, UserTourStatus right)
{
return !Equals(left, right);
}
}
}