Example #1
0
        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);
        }
Example #2
0
        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;
            });
        }