예제 #1
0
        // Token: 0x06002ADD RID: 10973 RVA: 0x000F13EC File Offset: 0x000EF5EC
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
            string itemType = base.GetItemType();

            StorePropertyDefinition[] prefetchProperties = new StorePropertyDefinition[]
            {
                ItemSchema.BlockStatus,
                ItemSchema.IsClassified,
                ItemSchema.Classification,
                ItemSchema.ClassificationDescription,
                ItemSchema.ClassificationGuid,
                ItemSchema.EdgePcl,
                ItemSchema.LinkEnabled,
                BodySchema.Codepage,
                BodySchema.InternetCpid,
                MessageItemSchema.SenderTelephoneNumber,
                ItemSchema.FlagStatus,
                ItemSchema.FlagCompleteTime,
                MessageItemSchema.ReplyTime,
                ItemSchema.UtcDueDate,
                ItemSchema.UtcStartDate,
                ItemSchema.ReminderDueBy,
                ItemSchema.ReminderIsSet,
                StoreObjectSchema.EffectiveRights,
                ItemSchema.Categories,
                MessageItemSchema.IsReadReceiptPending,
                MessageItemSchema.ApprovalDecision,
                MessageItemSchema.ApprovalDecisionMaker,
                MessageItemSchema.ApprovalDecisionTime,
                StoreObjectSchema.PolicyTag,
                ItemSchema.RetentionDate,
                MessageItemSchema.TextMessageDeliveryStatus,
                StoreObjectSchema.ParentItemId
            };
            if (ObjectClass.IsMessage(itemType, false))
            {
                this.Message = base.Initialize <MessageItem>(prefetchProperties);
            }
            else
            {
                this.Message = base.InitializeAsMessageItem(prefetchProperties);
            }
            this.IrmItemHelper = new IRMItemHelper(this.Message, base.UserContext, base.IsPreviewForm, base.IsEmbeddedItem);
            this.IrmItemHelper.IrmDecryptIfRestricted();
            if (ObjectClass.IsOfClass(itemType, "IPM.Note.Microsoft.Fax.CA"))
            {
                this.isFaxMessage = true;
            }
            this.InitializeReadMessageFormElements();
            if (!this.IsSMimeItem)
            {
                RenderingUtilities.RenderVotingInfobarMessages(this.Message, this.infobar, base.UserContext);
            }
            object obj = this.Message.TryGetProperty(MessageItemSchema.IsDraft);

            if (obj is bool && (bool)obj)
            {
                this.isDraftMessage = true;
                if (!base.IsPreviewForm)
                {
                    this.infobar.AddMessage(SanitizedHtmlString.FromStringId(-1981719796), InfobarMessageType.Informational);
                }
                this.AddIrmMessageToInfobar();
            }
            else
            {
                this.AddMessagesToInfobar();
                if (this.Message.Id != null && !base.IsEmbeddedItem && !this.Message.IsRead && !base.IsPreviewForm)
                {
                    this.Message.MarkAsRead(Utilities.ShouldSuppressReadReceipt(base.UserContext, this.Message), false);
                }
            }
            SanitizedHtmlString sanitizedHtmlString = null;

            if (Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 1))
            {
                if (this.IsClearSignedItem || this.IsOpaqueSignedItem)
                {
                    sanitizedHtmlString = SanitizedHtmlString.FromStringId(Utilities.IsSMimeFeatureUsable(base.OwaContext) ? (base.IsPreviewForm ? 1871698343 : 1683614199) : -1329088272);
                }
                else if (this.IsEncryptedItem)
                {
                    sanitizedHtmlString = SanitizedHtmlString.FromStringId(Utilities.IsSMimeFeatureUsable(base.OwaContext) ? (base.IsPreviewForm ? 958219031 : 906798671) : -767943720);
                }
            }
            else if (this.IsSMimeItem)
            {
                if (Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 16))
                {
                    if (Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 2))
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(base.IsPreviewForm ? -1214530702 : 1697878138);
                    }
                    else if (Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 4))
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(base.IsPreviewForm ? 1899236370 : 330022834);
                    }
                }
                else
                {
                    sanitizedHtmlString = SanitizedHtmlString.FromStringId((this.IsClearSignedItem || this.IsOpaqueSignedItem) ? 1965026784 : -514535677);
                }
            }
            if (sanitizedHtmlString != null)
            {
                this.infobar.AddMessage(sanitizedHtmlString, InfobarMessageType.Warning);
            }
        }