public async Task <IViewComponentResult> InvokeAsync(FeedbackMessageType feedbackMessageType, int?numberToShow, string groupKey, bool?b2bFeedback) { var viewModel = new TestimonialsViewModel(); var messages = await _feedbackRepository.GetTestimonials(); if (feedbackMessageType == FeedbackMessageType.Other) { var faceMasks = messages.FindAll(e => e.Type == FeedbackMessageType.FaceCovering); var notMasks = messages.FindAll(e => e.Type != FeedbackMessageType.FaceCovering); messages = notMasks.Concat(faceMasks.OrderBy(x => Guid.NewGuid()).Take(3)).ToList(); //get fewer masks involved } else { messages = messages.FindAll(e => e.Type == feedbackMessageType); if (feedbackMessageType == FeedbackMessageType.Group) { messages = messages.FindAll(e => e.GroupKey == groupKey); } } if (b2bFeedback != null) { messages = messages.Where(m => m.B2BFeedback == b2bFeedback).ToList(); } if (numberToShow != null) { messages = messages.OrderBy(x => Guid.NewGuid()).Take(numberToShow.Value).ToList(); } viewModel.Testimonials = messages.OrderBy(x => Guid.NewGuid()).ToList(); return(View(viewModel)); }
ViewResult GetFeedbackView(string msg, FeedbackMessageType messageType) { var viewModel = new FeedbackMessageViewModel { Message = msg, MessageType = messageType }; return(View("FeedbackMessage", viewModel)); }
/// <summary> /// Constructor method. /// </summary> public FeedbackMessage(FeedbackMessageType type, string content, string title = null) { if (string.IsNullOrWhiteSpace(content)) { throw new ArgumentNullException(nameof(content)); } Content = content; Title = title.WhenNullOrWhiteSpace(type.GetDisplayName()); Type = type; }
/// <summary> /// Constructor method. /// </summary> public FeedbackMessage(FeedbackMessageType type, string content, string title) { if (string.IsNullOrWhiteSpace(content)) { throw new ArgumentException(nameof(content)); } if (string.IsNullOrWhiteSpace(title)) { title = type.GetDisplayName(); } Type = type; Content = content; Title = title; }
public static string CRUDMessage(FeedbackMessageType messageType, CRUDActions action, string targetObject) { var actionSufix = ""; var actionPrefix = ""; switch (messageType) { case FeedbackMessageType.Sucess: actionSufix = "d"; break; case FeedbackMessageType.Failed: actionPrefix = "To"; action.ToString().ToLower(); break; } var feedbackMessage = $"{messageType}: {actionPrefix} {action}{actionSufix} {targetObject}!"; return(feedbackMessage); }
/// <summary> /// Add a new message. /// </summary> public void AddMessage(FeedbackMessageType type, string content, string title = null) { var message = new FeedbackMessage(type, content, title); AddMessage(message); }