public void SendMessage(GrapevinePart grapevinePart) { IUser recipient = _membershipService.GetUser(grapevinePart.RecipientName); if (recipient == null) throw new OrchardException(T("Invalid user")); grapevinePart.SenderId = _orchardServices.WorkContext.CurrentUser.Id; grapevinePart.RecipientId = recipient.Id; grapevinePart.SentDateTime = DateTime.UtcNow; _contentManager.Create(grapevinePart); }
private void SetupGrapevinePart(ActivatedContentContext context, GrapevinePart part) { // Setup the getter of the lazy field part.RecipientField.Loader(grapevinePart => _contentManager.Get<IUser>(part.Record.RecipientId)); part.SenderField.Loader(grapevinePart => _contentManager.Get<IUser>(part.Record.SenderId)); // Setup the setter of the lazy field part.RecipientField.Setter(grapevinePart => { part.Record.RecipientId = grapevinePart != null ? grapevinePart.Id : 0; return grapevinePart; }); part.SenderField.Setter(grapevinePart => { part.Record.SenderId = grapevinePart != null ? grapevinePart.Id : 0; return grapevinePart; }); }