示例#1
0
 public NotificationMessageStrategy(ReadNotificationDTO data, MessageType type)
 {
     notificationMessage = new NotificationMessage()
     {
         Data        = data,
         MessageType = type
     };
 }
示例#2
0
        public List <ReadNotificationDTO> GetAllNotifications()
        {
            using (UnitOfWork uw = new UnitOfWork())
            {
                List <Notification> notificationsFromDB = uw.NotificationRepository.GetAll();

                return(ReadNotificationDTO.FromList(notificationsFromDB));
            }
        }
        private void MoveNotification(object obj)
        {
            ReadNotificationDTO dto = (ReadNotificationDTO)obj;

            if (dto != null)
            {
                Notifications.Insert(0, new Notification(dto));
                IsNotificationUnread = FindUnreadFlag();
            }
        }
示例#4
0
 public Notification(ReadNotificationDTO dto)
 {
     if (dto != null)
     {
         NotificationId   = dto.NotificationId;
         TimeStamp        = dto.TimeStamp;
         NotificationType = dto.NotificationType;
         CardId           = dto.CardId;
         CardName         = dto.CardName;
         ListName         = dto.ListName;
         BoardName        = dto.BoardName;
         Username         = dto.Username;
         IsRead           = dto.IsRead;
     }
 }
示例#5
0
        public List <ReadNotificationDTO> GetUserNotifications(string username)
        {
            List <ReadNotificationDTO> list = null;

            using (UnitOfWork uw = new UnitOfWork())
            {
                User u = uw.UserRepository.GetUserByUsername(username);

                if (u != null)
                {
                    list = ReadNotificationDTO.FromList(u.Notifications.Reverse().ToList());
                }
            }
            return(list);
        }
示例#6
0
        public ReadNotificationDTO GetNotification(int notificationId)
        {
            ReadNotificationDTO dto = null;

            using (UnitOfWork uw = new UnitOfWork())
            {
                Notification notificationFromDB = uw.NotificationRepository
                                                  .GetById(notificationId);

                if (notificationFromDB != null)
                {
                    dto = new ReadNotificationDTO(notificationFromDB);
                }
            }

            return(dto);
        }
示例#7
0
        public static async Task <bool> MarkNotifiactionsAsRead(IEnumerable <MalNotification> notification)
        {
            try
            {
                var client = await MalHttpContextProvider.GetHttpContextAsync();

                var dto      = new ReadNotificationDTO(notification, client.Token);
                var content  = new StringContent(JsonConvert.SerializeObject(dto));
                var response = await client.PostAsync("/notification/api/check-items-as-read.json", content);

                return((await response.Content.ReadAsStringAsync()).Contains("true"));
            }
            catch (Exception e)
            {
                MalHttpContextProvider.ErrorMessage("Notifications");
                return(false);
            }
        }
示例#8
0
        public static MQMessage GetMessage(string stringMessage)
        {
            var jsonMessage = GetJObjectFromString(stringMessage);
            if (jsonMessage == null)
                return null;

            var messageType = GetJTokenByKey("MessageType", jsonMessage);
            if (messageType == null)
                return null;

            var messageEntity = GetJTokenByKey("MessageEntity", jsonMessage);
            if (messageEntity == null)
                return null;

            var messageUsername = GetJTokenByKey("Username", jsonMessage);

            var data = GetJTokenByKey("Data", jsonMessage);
            if (data == null)
                return null;

            var stringData = data.ToString();

            var type = (MessageType)messageType.Value<int>();
            var entity = (MessageEntity)messageEntity.Value<int>();
            var username = (string)messageUsername.Value<string>();

            if (type == MessageType.Delete)
            {
                int parsedData = JsonConvert.DeserializeObject<int>(stringData);
                return new DeleteMessage() { MessageType = MessageType.Delete, MessageEntity = entity, Data = parsedData };
            }
            else if (type == MessageType.BoardNotification)
            {
                int parsedData = JsonConvert.DeserializeObject<int>(stringData);
                return new BoardNotificationMessage() { MessageType = MessageType.BoardNotification, MessageEntity = entity, Data = parsedData };
            }
            else if (entity == MessageEntity.Board)
            {
                BasicBoardDTO parsedData = JsonConvert.DeserializeObject<BasicBoardDTO>(stringData);
                return new BoardMesage() { MessageType = type, MessageEntity = entity, Data = parsedData };
            }
            else if (entity == MessageEntity.Card)
            {
                BasicCardDTO parsedData = JsonConvert.DeserializeObject<BasicCardDTO>(stringData);
                return new CardMessage() { MessageType = type, MessageEntity = entity, Data = parsedData };
            }
            else if (entity == MessageEntity.CardList)
            {
                BasicCardListDTO parsedData = JsonConvert.DeserializeObject<BasicCardListDTO>(stringData);
                return new CardListMessage() { MessageType = type, MessageEntity = entity, Data = parsedData, Username = username };
            }
            else if (entity == MessageEntity.Comment)
            {
                BasicCommentDTO parsedData = JsonConvert.DeserializeObject<BasicCommentDTO>(stringData);
                return new CommentMessage() { MessageType = type, MessageEntity = entity, Data = parsedData };
            }
            else if (entity == MessageEntity.Notification)
            {
                ReadNotificationDTO parsedData = JsonConvert.DeserializeObject<ReadNotificationDTO>(stringData);
                return new NotificationMessage() { MessageType = type, MessageEntity = entity, Data = parsedData };
            }
            else
            {
                return null;
            }


        }