private void BuildRecipients() { bool useReplyTo = true; if (this is OofReplyCreation || this is RuleReplyCreation) { useReplyTo = false; } if (this.originalItem is MessageItem) { ReplyForwardCommon.BuildReplyRecipientsFromMessage(this.newItem as MessageItem, this.originalItem as MessageItem, this.isReplyAll, this.shouldUseSender, useReplyTo); return; } if (this.originalItem is CalendarItemBase) { this.BuildRecipientsFromCalendarItem(); return; } if (this.originalItem is PostItem) { this.BuildRecipientsFromPostItem(); } }
protected override void UpdateNewItemProperties() { base.UpdateNewItemProperties(); ReplyForwardCommon.BuildReplyRecipientsFromMessage(this.newItem as MessageItem, this.originalItem as MessageItem, false, true, true); this.newItem.SafeSetProperty(InternalSchema.Importance, Importance.Normal); this.newItem.SafeSetProperty(InternalSchema.IsVotingResponse, 1); this.newItem.SafeSetProperty(InternalSchema.ReportTag, this.originalItem.PropertyBag.GetValueOrDefault <byte[]>(InternalSchema.ReportTag)); this.newItem.SafeSetProperty(InternalSchema.VotingResponse, this.votingResponse); if (this.originalItem.ClassName.Equals("IPM.Note.Microsoft.Approval.Request", StringComparison.OrdinalIgnoreCase)) { MessageItem messageItem = this.originalItem as MessageItem; string[] array = (string[])messageItem.VotingInfo.GetOptionsList(); int num = Array.IndexOf <string>(array, this.votingResponse); if (num == 0) { this.newItem.SafeSetProperty(InternalSchema.ItemClass, "IPM.Note.Microsoft.Approval.Reply.Approve"); return; } if (num == 1) { this.newItem.SafeSetProperty(InternalSchema.ItemClass, "IPM.Note.Microsoft.Approval.Reply.Reject"); } } }