//AJAX Call
        public ActionResult HasBeenViewed(int AccessControlID)
        {
            var Viewed = string.Empty;

            var AccessControl = _AccessControlService.GetById(AccessControlID);
            //is the last entry a "viewed"
            var PasswordResets = AccessControl.AccessControlTransactions
                                 .Where(x => x.TranType.Equals(Model.Common.Constants.TransactionConst.TransactionType.PasswordReset.ToString())).OrderByDescending(x => x.RecordCreated).FirstOrDefault();
            DateTime LastResetOrCreated = PasswordResets == null ? AccessControl.RecordCreated : PasswordResets.RecordCreated;

            //has it been viewed since the last password reset or since it was created if the password has never been reset.
            var hasViewed = AccessControl.AccessControlTransactions.Where(x => x.RecordCreated > LastResetOrCreated).Any(x => x.TranType.Equals(Model.Common.Constants.TransactionConst.TransactionType.Viewed.ToString()));

            if (hasViewed)
            {
                Viewed = "danger";
            }
            else if (AccessControl.ViewedState == Model.Common.Constants.TransactionConst.TransactionType.Modified.ToString())
            {
                Viewed = "info";
            }
            else if (AccessControl.ViewedState.Equals(Model.Common.Constants.TransactionConst.TransactionType.Created.ToString()))
            {
                Viewed = "success";
            }

            return(Json(new { Viewed }));
        }