Exemple #1
0
        public IList <IAlert> LoadAlerts(ICacheStorage cache, IHRRSecurityContext security)
        {
            var list = new List <HRR.Core.Domain.Interfaces.IAlert>();

            if (cache.Retrieve <List <HRR.Core.Domain.Interfaces.IAlert> >(security.CurrentAccount.ID.ToString() + "_AlertsFeed") == null)
            {
                list = new AlertServices().GetAlertsByDueDate(DateTime.Now.AddDays(21)).ToList <HRR.Core.Domain.Interfaces.IAlert>();
                cache.Store(security.CurrentAccount.ID.ToString() + "_AlertsFeed", list);
            }
            else
            {
                list = cache.Retrieve <List <HRR.Core.Domain.Interfaces.IAlert> >(security.CurrentAccount.ID.ToString() + "_AlertsFeed");
            }
            return(list);
        }
        public string GetAlertByDueDate()
        {
            var    list = new AlertServices().GetAlertsByDueDate(DateTime.Now.AddDays(21));
            string s    = "[";

            foreach (var item in list)
            {
                switch (item.ItemType)
                {
                case AlertType.GOAL:
                    var g = (HRR.Core.Domain.Goal)item;
                    s += "{\"avatar\":\"" + g.EnteredForRef.AvatarPath +
                         "\",\"enteredfor\":\"<a style='vertical-align: top;' href='/People/" + g.EnteredForRef.Email + "'>" + g.EnteredForRef.Name + "</a>" +
                         "\",\"alerttitle\":\"goal - <a style='vertical-align: top;' href='/Goals/" + g.ID.ToString() + "'>" + g.Title + "</a>" +
                         "\",\"duedate\":\"" + g.DueDate.ToShortDateString() +
                         "\"},";
                    break;

                case AlertType.MILESTONE:
                    var m = (HRR.Core.Domain.GoalMilestone)item;
                    s += "{\"avatar\":\"" + m.EnteredForRef.AvatarPath +
                         "\",\"enteredfor\":\"<a style='vertical-align: top;' href='/People/" + m.EnteredForRef.Email + "'>" + m.EnteredForRef.Name + "</a>" +
                         "\",\"alerttitle\":\"milestone - <a style='vertical-align: top;' href='/Goals/" + m.GoalRef.ID.ToString() + "'>" + m.Title + "</a>" +
                         "\",\"duedate\":\"" + m.DueDate.ToShortDateString() +
                         "\"},";
                    break;

                case AlertType.REVIEW:
                    var r = (HRR.Core.Domain.Review)item;
                    s += "{\"avatar\":\"" + r.EnteredForRef.AvatarPath +
                         "\",\"enteredfor\":\"<a style='vertical-align: top;' href='/People/" + r.EnteredForRef.Email + "'>" + r.EnteredForRef.Name + "</a>" +
                         "\",\"alerttitle\":\"review - <a style='vertical-align: top;' href='/Reviews/" + r.ID.ToString() + "'>" + r.Title + "</a>" +
                         "\",\"duedate\":\"" + r.DueDate.ToShortDateString() +
                         "\"},";
                    break;
                }
                //s += "{\"name\":\"" + item.EnteredForRef.LastName + "\",\"commentType\":\"" + item.CommentType.ToString() + "\",\"message\":\"" + item.Message + "\",\"enteredBy\":\"" + item.EnteredByRef.LastName + "\"},";
            }
            return(s.Remove(s.Length - 1, 1) + "]");
        }