internal static RecipientInfoCacheEntry ParseEntry(XmlReader reader)
        {
            if (reader == null)
            {
                throw new ArgumentNullException("reader");
            }
            if (!string.Equals(reader.Name, "entry", StringComparison.OrdinalIgnoreCase))
            {
                throw new CorruptDataException(ServerStrings.InvalidTagName("entry", reader.Name));
            }
            string            text              = string.Empty;
            string            text2             = string.Empty;
            string            text3             = string.Empty;
            string            text4             = string.Empty;
            string            text5             = string.Empty;
            AddressOrigin     addressOrigin     = AddressOrigin.Unknown;
            string            text6             = string.Empty;
            short             num               = 0;
            long              num2              = 0L;
            short             num3              = 0;
            short             num4              = 0;
            int               num5              = 0;
            EmailAddressIndex emailAddressIndex = EmailAddressIndex.None;
            string            text7             = string.Empty;
            int               num6              = 0;
            string            text8             = string.Empty;

            try
            {
                if (reader.HasValue)
                {
                    throw new CorruptDataException(ServerStrings.ElementHasUnsupportedValue(reader.Name));
                }
                if (reader.HasAttributes)
                {
                    int i = 0;
                    while (i < reader.AttributeCount)
                    {
                        reader.MoveToAttribute(i);
                        string name;
                        if ((name = reader.Name) != null)
                        {
                            if (< PrivateImplementationDetails > { 495E4232 - B7DB - 45E0 - 83EB - 134F 7677B64F }.$$method0x6000f59 - 1 == null)
                            {
Beispiel #2
0
        public static ResolvedRecipientDetail[] ParseFromForm(HttpRequest request, string parameterName, bool isRequired)
        {
            string[] array = ResolvedRecipientDetail.SplitConcatStringsFromForm(request, parameterName, isRequired);
            if (array.Length % 8 != 0)
            {
                throw new OwaInvalidRequestException("Invalid account of resolved recipient details. Details received:" + string.Join("\n", array));
            }
            int num = array.Length / 8;
            List <ResolvedRecipientDetail> list = new List <ResolvedRecipientDetail>();

            for (int i = 0; i < num; i++)
            {
                int    num2  = i * 8;
                string text  = array[num2];
                string text2 = array[num2 + 1];
                string text3 = array[num2 + 2];
                string text4 = array[num2 + 3];
                string s     = array[num2 + 4];
                string s2    = array[num2 + 5];
                string text5 = array[num2 + 6];
                string s3    = array[num2 + 7];
                int    num3;
                if (!int.TryParse(s, out num3))
                {
                    throw new OwaInvalidRequestException("The addressOrigin should be a valid integerDetails received:" + string.Join("\n", array));
                }
                AddressOrigin addressOrigin = (AddressOrigin)num3;
                int           num4;
                if (!int.TryParse(s3, out num4))
                {
                    throw new OwaInvalidRequestException("The emailAddressIndex should be a valid integerDetails received:" + string.Join("\n", array));
                }
                EmailAddressIndex emailAddressIndex = (EmailAddressIndex)num4;
                int num5;
                if (!int.TryParse(s2, out num5))
                {
                    throw new OwaInvalidRequestException("The recipientFlags should be a valid integerDetails received:" + string.Join("\n", array));
                }
                ResolvedRecipientDetail item = new ResolvedRecipientDetail(text, text2, text3, text4, addressOrigin, num5, text5, emailAddressIndex);
                list.Add(item);
            }
            return(list.ToArray());
        }
        // Token: 0x0600201C RID: 8220 RVA: 0x000BA190 File Offset: 0x000B8390
        protected override void RenderItemMetaDataExpandos(TextWriter writer)
        {
            AddressOrigin itemProperty  = this.DataSource.GetItemProperty <AddressOrigin>(ItemSchema.RecipientType, AddressOrigin.Unknown);
            int           itemProperty2 = this.DataSource.GetItemProperty <int>(RecipientSchema.EmailAddrType, 0);

            DistributionListContents.RenderAttributes(writer, "_dn", this.DataSource.GetItemProperty <string>(StoreObjectSchema.DisplayName, string.Empty));
            DistributionListContents.RenderAttributes(writer, "_em", this.DataSource.GetItemProperty <string>(ParticipantSchema.EmailAddress, string.Empty));
            DistributionListContents.RenderAttributes(writer, "_rt", this.DataSource.GetItemProperty <string>(ParticipantSchema.RoutingType, string.Empty));
            string name = "_ao";
            int    num  = (int)itemProperty;

            DistributionListContents.RenderAttributes(writer, name, num.ToString());
            if (itemProperty == AddressOrigin.Store)
            {
                DistributionListContents.RenderAttributes(writer, "_id", this.DataSource.GetItemProperty <string>(ParticipantSchema.OriginItemId, string.Empty));
                if (itemProperty2 != 0)
                {
                    DistributionListContents.RenderAttributes(writer, "_ei", itemProperty2.ToString());
                }
            }
            base.RenderItemMetaDataExpandos(writer);
        }
Beispiel #4
0
        // Token: 0x0600251F RID: 9503 RVA: 0x000D67BC File Offset: 0x000D49BC
        internal static bool Render(TextWriter writer, UserContext userContext, string displayName, string smtpAddress, string routingAddress, string routingType, string alias, AddressOrigin addressOrigin, int recipientFlags, StoreObjectId storeObjectId, EmailAddressIndex emailAddressIndex, ADObjectId adObjectId, RecipientWellNode.RenderFlags flags, string sipUri, string mobilePhoneNumber)
        {
            if (writer == null)
            {
                throw new ArgumentNullException("writer");
            }
            if (userContext == null)
            {
                throw new ArgumentNullException("userContext");
            }
            if (string.CompareOrdinal(routingType, "SMTP") == 0 && ImceaAddress.IsImceaAddress(routingAddress) && Utilities.TryDecodeImceaAddress(routingAddress, ref routingType, ref routingAddress))
            {
                smtpAddress = null;
            }
            bool   flag  = (flags & RecipientWellNode.RenderFlags.ReadOnly) != RecipientWellNode.RenderFlags.None;
            bool   flag2 = false;
            string text  = "rwRR";

            if (string.CompareOrdinal(routingType, "MAPIPDL") != 0 && (string.IsNullOrEmpty(routingAddress) || string.IsNullOrEmpty(routingType)))
            {
                if (string.IsNullOrEmpty(displayName))
                {
                    ExTraceGlobals.MailDataTracer.TraceDebug(0L, "Found recipient without an email address or display name");
                    return(false);
                }
                text           = "rwUR";
                flag2          = true;
                routingAddress = null;
                smtpAddress    = null;
                routingType    = null;
            }
            else if (string.IsNullOrEmpty(displayName))
            {
                if (!string.IsNullOrEmpty(smtpAddress))
                {
                    displayName = smtpAddress;
                }
                else if (!string.IsNullOrEmpty(routingAddress))
                {
                    displayName = routingAddress;
                }
            }
            if (flag)
            {
                text = (flag2 ? "rwURO" : "rwRRO");
            }
            if ((recipientFlags & 1) != 0)
            {
                text += " rwDL";
            }
            if ((flags & RecipientWellNode.RenderFlags.RenderCommas) != RecipientWellNode.RenderFlags.None)
            {
                writer.Write(userContext.DirectionMark);
                writer.Write("; ");
            }
            if ((flags & RecipientWellNode.RenderFlags.RenderSkinnyHtml) != RecipientWellNode.RenderFlags.None)
            {
                if (!flag)
                {
                    writer.Write("<span>");
                }
                writer.Write("<span class=\"");
            }
            else if (flag)
            {
                writer.Write("<span id=\"spnR\" ");
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "oncontextmenu", "onRwCm(event);");
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "ondblclick", "onDblClkReadRcp(event);");
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "onclick", "onClkRcp(event);");
                writer.Write(" class=\"");
            }
            else
            {
                writer.Write("<span tabindex=\"-1\" contenteditable=\"false\">");
                if (userContext.BrowserType == BrowserType.IE)
                {
                    writer.Write("<span tabindex=\"-1\" contenteditable=\"true\" id=\"spnR\" ");
                }
                else
                {
                    writer.Write("<span tabindex=\"-1\" contenteditable=\"false\" id=\"spnR\" ");
                }
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "oncontextmenu", "onContextMenuSpnRw(event);");
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "onclick", "onClkRcp(event);");
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "onkeydown", "onKDRcp(event);");
                writer.Write(" ");
                Utilities.RenderScriptHandler(writer, "ondblclick", "onDblClkRcp(event);");
                writer.Write(" ondrop=\"return(false);\" class=\"");
            }
            writer.Write(text);
            writer.Write("\" _ao=\"{0}\" _rf=\"{1}\" _rt=\"", (int)addressOrigin, recipientFlags);
            if (routingType != null)
            {
                Utilities.SanitizeHtmlEncode(routingType, writer);
            }
            writer.Write("\" _em=\"");
            if (routingAddress != null)
            {
                Utilities.SanitizeHtmlEncode(routingAddress, writer);
            }
            if (storeObjectId != null)
            {
                writer.Write("\" _id=\"");
                Utilities.SanitizeHtmlEncode(storeObjectId.ToBase64String(), writer);
                writer.Write("\" _ei=\"");
                writer.Write((int)emailAddressIndex);
            }
            else if (adObjectId != null)
            {
                writer.Write("\" _id=\"");
                Utilities.SanitizeHtmlEncode(Convert.ToBase64String(adObjectId.ObjectGuid.ToByteArray()), writer);
            }
            writer.Write("\" title=\"");
            if (smtpAddress != null)
            {
                Utilities.SanitizeHtmlEncode(smtpAddress, writer);
            }
            if (!flag || addressOrigin == AddressOrigin.OneOff || (addressOrigin == AddressOrigin.Directory && !userContext.IsFeatureEnabled(Feature.GlobalAddressList)))
            {
                if (smtpAddress != null)
                {
                    writer.Write("\" _sa=\"");
                    Utilities.SanitizeHtmlEncode(smtpAddress, writer);
                }
                else if (routingType != null && routingAddress != null)
                {
                    writer.Write("\" _imcea=\"");
                    Utilities.SanitizeHtmlEncode(ImceaAddress.Encode(routingType, routingAddress, OwaConfigurationManager.Configuration.DefaultAcceptedDomain.DomainName.ToString()), writer);
                }
            }
            if (userContext.IsInstantMessageEnabled() && userContext.InstantMessagingType == InstantMessagingTypeOptions.Ocs && sipUri != null)
            {
                writer.Write("\" ");
                if (adObjectId == null)
                {
                    writer.Write("_sipTrsp=1 ");
                }
                writer.Write("_uri=\"");
                Utilities.SanitizeHtmlEncode(sipUri, writer);
            }
            if (userContext.IsSmsEnabled && mobilePhoneNumber != null)
            {
                writer.Write("\" _mo=\"");
                Utilities.SanitizeHtmlEncode(mobilePhoneNumber, writer);
            }
            if ((smtpAddress != null || routingAddress != null || mobilePhoneNumber != null || Utilities.IsMapiPDL(routingType)) && (!flag || addressOrigin == AddressOrigin.OneOff || (addressOrigin == AddressOrigin.Store && (!userContext.IsFeatureEnabled(Feature.Contacts) || userContext.IsSmsEnabled)) || (addressOrigin == AddressOrigin.Directory && (!userContext.IsFeatureEnabled(Feature.GlobalAddressList) || userContext.IsSmsEnabled))) && displayName != null)
            {
                writer.Write("\" _dn=\"");
                Utilities.SanitizeHtmlEncode(displayName, writer);
            }
            if (!flag && alias != null)
            {
                writer.Write("\" _al=\"");
                Utilities.SanitizeHtmlEncode(alias, writer);
            }
            writer.Write("\">");
            if (userContext.IsInstantMessageEnabled() && flag && !string.IsNullOrEmpty(routingType) && ((string.CompareOrdinal(routingType, "EX") == 0 && (recipientFlags & 1) == 0) || string.CompareOrdinal(routingType, "SMTP") == 0))
            {
                RenderingUtilities.RenderPresenceJellyBean(writer, userContext, true, "onRwCmJb(event);", false, null);
            }
            if (displayName != null)
            {
                Utilities.SanitizeHtmlEncode(displayName, writer);
            }
            RecipientWellNode.RenderFormattedAddress(writer, userContext, displayName, smtpAddress, routingAddress, routingType);
            writer.Write("</span>");
            if (!flag)
            {
                writer.Write("</span>");
            }
            return(true);
        }
Beispiel #5
0
 // Token: 0x06002504 RID: 9476 RVA: 0x000D665C File Offset: 0x000D485C
 internal RecipientWellNode(string displayName, string smtpAddress, string routingAddress, string routingType, string alias, AddressOrigin addressOrigin, int recipientFlags, string sipUri, string mobilePhoneNumber)
 {
     this.displayName       = displayName;
     this.smtpAddress       = smtpAddress;
     this.routingAddress    = routingAddress;
     this.routingType       = routingType;
     this.alias             = alias;
     this.addressOrigin     = addressOrigin;
     this.recipientFlags    = recipientFlags;
     this.sipUri            = sipUri;
     this.mobilePhoneNumber = mobilePhoneNumber;
 }
Beispiel #6
0
 // Token: 0x06002523 RID: 9507 RVA: 0x000D6DDC File Offset: 0x000D4FDC
 internal new static bool Render(TextWriter writer, UserContext userContext, string displayName, string smtpAddress, string routingAddress, string routingType, string alias, AddressOrigin addressOrigin, int recipientFlags, StoreObjectId storeObjectId, EmailAddressIndex emailAddressIndex, ADObjectId adObjectId, RecipientWellNode.RenderFlags flags, string sipUri, string mobilePhoneNumber)
 {
     if (writer == null)
     {
         throw new ArgumentNullException("writer");
     }
     if (string.IsNullOrEmpty(routingAddress) || string.IsNullOrEmpty(routingType))
     {
         if (string.IsNullOrEmpty(displayName))
         {
             ExTraceGlobals.CoreTracer.TraceDebug(0L, "Found recipient without an email address or display name");
             return(false);
         }
         routingAddress = null;
         smtpAddress    = null;
         routingType    = null;
     }
     else if (string.IsNullOrEmpty(displayName))
     {
         if (!string.IsNullOrEmpty(smtpAddress))
         {
             displayName = smtpAddress;
         }
         else if (!string.IsNullOrEmpty(routingAddress))
         {
             displayName = routingAddress;
         }
     }
     if ((flags & RecipientWellNode.RenderFlags.RenderCommas) != RecipientWellNode.RenderFlags.None)
     {
         writer.Write("; ");
     }
     if (displayName != null)
     {
         Utilities.HtmlEncode(displayName.Trim(new char[]
         {
             '\''
         }), writer);
     }
     RecipientWellNode.RenderFormattedAddress(writer, userContext, displayName, smtpAddress, routingAddress, routingType);
     return(true);
 }
Beispiel #7
0
 // Token: 0x06002522 RID: 9506 RVA: 0x000D6DBC File Offset: 0x000D4FBC
 internal PrintRecipientWellNode(string displayName, string smtpAddress, string routingAddress, string routingType, string alias, AddressOrigin addressOrigin, int recipientFlags) : base(displayName, smtpAddress, routingAddress, routingType, alias, addressOrigin, recipientFlags, null, null)
 {
 }
 private RecipientInfoCacheEntry(string displayName, string smtpAddress, string routingAddress, string alias, string routingType, AddressOrigin addressOrigin, int recipientFlags, string itemId, EmailAddressIndex emailAddressIndex, string sipUri, string mobilePhoneNumber, short usage, long dateTimeTicks, short sessionCount, short sessionFlag, int cacheEntryId)
 {
     EnumValidator.ThrowIfInvalid <AddressOrigin>(addressOrigin);
     EnumValidator.ThrowIfInvalid <EmailAddressIndex>(emailAddressIndex);
     this.displayName    = displayName;
     this.smtpAddress    = smtpAddress;
     this.routingAddress = routingAddress;
     this.alias          = alias;
     if (string.IsNullOrEmpty(routingType))
     {
         this.routingType = "SMTP";
     }
     else
     {
         this.routingType = routingType;
     }
     this.addressOrigin     = addressOrigin;
     this.recipientFlags    = recipientFlags;
     this.itemId            = itemId;
     this.usage             = usage;
     this.dateTimeTicks     = dateTimeTicks;
     this.sessionCount      = sessionCount;
     this.sessionFlag       = sessionFlag;
     this.emailAddressIndex = emailAddressIndex;
     this.sipUri            = sipUri;
     this.mobilePhoneNumber = mobilePhoneNumber;
     this.cacheEntryId      = cacheEntryId;
     if (this.cacheEntryId == 0)
     {
         this.GetNewCacheEntryId();
         this.isDirty = false;
     }
 }
Beispiel #9
0
        // Token: 0x06002AD3 RID: 10963 RVA: 0x000F1110 File Offset: 0x000EF310
        private void RenderMemberEmailLink(string routingAddress, string displayName, string smtpAddress, string routingType, AddressOrigin addressOrigin, StoreObjectId storeObjectId, EmailAddressIndex emailAddressIndex)
        {
            StringBuilder stringBuilder = new StringBuilder("openItm(\"?ae=Item&t=IPM.Note&a=New&to=");

            stringBuilder.Append(Utilities.JavascriptEncode(Utilities.HtmlEncode(Utilities.UrlEncode(routingAddress))));
            stringBuilder.Append("&nm=");
            stringBuilder.Append(Utilities.JavascriptEncode(Utilities.HtmlEncode(Utilities.UrlEncode(displayName))));
            stringBuilder.Append("&rt=");
            stringBuilder.Append(Utilities.JavascriptEncode(Utilities.HtmlEncode(Utilities.UrlEncode(routingType))));
            if (addressOrigin != AddressOrigin.Unknown)
            {
                stringBuilder.Append("&ao=");
                stringBuilder.Append((int)addressOrigin);
            }
            if (storeObjectId != null)
            {
                stringBuilder.Append("&stId=");
                stringBuilder.Append(Utilities.JavascriptEncode(Utilities.HtmlEncode(Utilities.UrlEncode(storeObjectId.ToBase64String()))));
                if (!Utilities.IsMapiPDL(routingType))
                {
                    stringBuilder.Append("&ei=");
                    stringBuilder.Append((int)emailAddressIndex);
                }
            }
            string text = smtpAddress ?? routingAddress;

            if (Utilities.IsCustomRoutingType(text, routingType))
            {
                text = string.Concat(new string[]
                {
                    "[",
                    routingType,
                    ": ",
                    text,
                    "]"
                });
            }
            stringBuilder.Append("\");");
            base.Response.Write("<a class=lnk ");
            Utilities.RenderScriptHandler(base.Response.Output, "onclick", stringBuilder.ToString());
            base.Response.Write(" title=\"");
            Utilities.HtmlEncode(text, base.Response.Output);
            base.Response.Write("\">");
            Utilities.HtmlEncode(text, base.Response.Output);
            base.Response.Write("</a>");
        }
Beispiel #10
0
 public ResolvedRecipientDetail(string smtpAddress, string routingAddress, string displayName, string routingType, AddressOrigin addressOrigin, int recipientFlags, string itemId, EmailAddressIndex emailAddressIndex)
 {
     this.smtpAddress       = ResolvedRecipientDetail.EnsureNonNull(smtpAddress);
     this.routingAddress    = ResolvedRecipientDetail.EnsureNonNull(routingAddress);
     this.displayName       = ResolvedRecipientDetail.EnsureNonNull(displayName);
     this.routingType       = ResolvedRecipientDetail.EnsureNonNull(routingType);
     this.addressOrigin     = addressOrigin;
     this.recipientFlags    = recipientFlags;
     this.itemId            = ResolvedRecipientDetail.EnsureNonNull(itemId);
     this.emailAddressIndex = emailAddressIndex;
     if (string.IsNullOrEmpty(displayName))
     {
         this.displayName = this.smtpAddress;
     }
 }
Beispiel #11
0
 public ResolvedRecipientDetail(string smtpAddress, string routingAddress, string displayName, string routingType, AddressOrigin addressOrigin, int recipientFlags, StoreObjectId storeObjectId, EmailAddressIndex emailAddressIndex, ADObjectId adObjectId)
 {
     this.smtpAddress       = ResolvedRecipientDetail.EnsureNonNull(smtpAddress);
     this.routingAddress    = ResolvedRecipientDetail.EnsureNonNull(routingAddress);
     this.displayName       = ResolvedRecipientDetail.EnsureNonNull(displayName);
     this.routingType       = ResolvedRecipientDetail.EnsureNonNull(routingType);
     this.addressOrigin     = addressOrigin;
     this.recipientFlags    = recipientFlags;
     this.storeObjectId     = storeObjectId;
     this.adObjectId        = adObjectId;
     this.emailAddressIndex = EmailAddressIndex.None;
     if (string.IsNullOrEmpty(displayName))
     {
         this.displayName = this.smtpAddress;
     }
     if (this.storeObjectId != null)
     {
         this.itemId            = this.storeObjectId.ToBase64String();
         this.emailAddressIndex = emailAddressIndex;
         return;
     }
     if (this.adObjectId != null)
     {
         this.itemId = Convert.ToBase64String(this.adObjectId.ObjectGuid.ToByteArray());
         return;
     }
     this.itemId = string.Empty;
 }
        // Token: 0x060003A4 RID: 932 RVA: 0x00020A9C File Offset: 0x0001EC9C
        internal static bool Render(UserContext userContext, TextWriter writer, string displayName, string smtpAddress, string routingAddress, string routingType, AddressOrigin addressOrigin, int recipientFlags, int readItemType, RecipientItemType recipientWell, ADObjectId adObjectId, StoreObjectId storeObjectId, RecipientWellNode.RenderFlags flags, string idString, bool isWebPartRequest)
        {
            if (userContext == null)
            {
                throw new ArgumentNullException("userContext");
            }
            if (writer == null)
            {
                throw new ArgumentNullException("writer");
            }
            bool flag  = (flags & RecipientWellNode.RenderFlags.ReadOnly) != RecipientWellNode.RenderFlags.None;
            bool flag2 = false;

            if (string.CompareOrdinal(routingType, "MAPIPDL") != 0 && (string.IsNullOrEmpty(routingAddress) || string.IsNullOrEmpty(routingType)))
            {
                if (string.IsNullOrEmpty(displayName))
                {
                    ExTraceGlobals.MailDataTracer.TraceDebug(0L, "Found recipient without an email address or display name");
                    return(false);
                }
                flag2          = true;
                routingAddress = null;
                smtpAddress    = null;
                routingType    = null;
            }
            else if (string.IsNullOrEmpty(displayName))
            {
                if (!string.IsNullOrEmpty(smtpAddress))
                {
                    displayName = smtpAddress;
                }
                else if (!string.IsNullOrEmpty(routingAddress))
                {
                    displayName = routingAddress;
                }
            }
            if ((flags & RecipientWellNode.RenderFlags.RenderCommas) != RecipientWellNode.RenderFlags.None)
            {
                writer.Write("; ");
            }
            writer.Write("<span class=\"");
            if (flag2)
            {
                writer.Write("rwURO\">");
                if (displayName != null)
                {
                    Utilities.HtmlEncode(displayName, writer);
                }
            }
            else
            {
                writer.Write("rwRO");
                if ((recipientFlags & 1) != 0)
                {
                    writer.Write(" rwDL");
                }
                writer.Write("\">");
            }
            bool flag3 = false;

            if (!string.IsNullOrEmpty(idString))
            {
                if ((userContext.IsFeatureEnabled(Feature.Contacts) && storeObjectId != null) || adObjectId != null)
                {
                    writer.Write("<a href=\"#\"");
                    if (storeObjectId != null)
                    {
                        writer.Write(" id=\"");
                        Utilities.HtmlEncode(storeObjectId.ToBase64String(), writer);
                    }
                    else if (adObjectId != null)
                    {
                        writer.Write(" id=\"");
                        Utilities.HtmlEncode(Utilities.GetBase64StringFromADObjectId(adObjectId), writer);
                    }
                    writer.Write("\" onClick=\"return onClkRcpt(this,{0}", readItemType);
                    if (!flag)
                    {
                        writer.Write(",{0}", (int)recipientWell);
                    }
                    writer.Write(");\">");
                    flag3 = true;
                }
                else if (routingType == "SMTP" && !string.IsNullOrEmpty(smtpAddress) && flag && !isWebPartRequest)
                {
                    writer.Write("<a href=\"");
                    Utilities.HtmlEncode("?ae=Item&t=IPM.Note&a=New&to=", writer);
                    Utilities.HtmlEncode(Utilities.UrlEncode(smtpAddress), writer);
                    if (!string.IsNullOrEmpty(displayName))
                    {
                        Utilities.HtmlEncode("&nm=", writer);
                        Utilities.HtmlEncode(Utilities.UrlEncode(displayName), writer);
                    }
                    writer.Write("\" class=\"emadr\">");
                    flag3 = true;
                }
            }
            if (!flag2)
            {
                if (displayName != null)
                {
                    Utilities.HtmlEncode(displayName, writer);
                }
                RecipientWellNode.RenderFormattedAddress(writer, displayName, smtpAddress, routingAddress, routingType);
            }
            if (flag3)
            {
                writer.Write("</a>");
            }
            if (!flag && !string.IsNullOrEmpty(idString))
            {
                writer.Write(" <span class=\"sq\">[<a href=\"#\" onClick=\"return onClkRmRcp('");
                writer.Write(idString);
                writer.Write("')\">");
                writer.Write(LocalizedStrings.GetHtmlEncoded(341226654));
                writer.Write("</a>]</span>");
            }
            writer.Write("</span>");
            return(true);
        }
 // Token: 0x0600038F RID: 911 RVA: 0x00020993 File Offset: 0x0001EB93
 internal RecipientWellNode(string displayName, string smtpAddress, string routingAddress, string routingType, AddressOrigin addressOrigin, int recipientFlags)
 {
     this.displayName    = displayName;
     this.smtpAddress    = smtpAddress;
     this.routingAddress = routingAddress;
     this.routingType    = routingType;
     this.addressOrigin  = addressOrigin;
     this.recipientFlags = recipientFlags;
 }
Beispiel #14
0
 // Token: 0x06002505 RID: 9477 RVA: 0x000D66B4 File Offset: 0x000D48B4
 internal RecipientWellNode(string displayName, string smtpAddress, AddressOrigin addressOrigin)
 {
     this.displayName   = displayName;
     this.smtpAddress   = smtpAddress;
     this.addressOrigin = addressOrigin;
 }
Beispiel #15
0
 public void AddEntry(string displayName, string smtpAddress, string routingAddress, string alias, string routingType, AddressOrigin addressOrigin, int recipientFlags, string itemId, EmailAddressIndex emailAddressIndex)
 {
     this.AddEntry(displayName, smtpAddress, routingAddress, alias, routingType, addressOrigin, recipientFlags, itemId, emailAddressIndex, null, null);
 }
        public void GetRecipientMenuProperties()
        {
            ExTraceGlobals.MailCallTracer.TraceDebug((long)this.GetHashCode(), "RecipientWellEventHandler.GetRecipientMenuProperties");
            AddressOrigin addressOrigin = (AddressOrigin)base.GetParameter("ao");
            string        text          = null;

            if (base.IsParameterSet("em"))
            {
                text = (string)base.GetParameter("em");
            }
            string routingType = (string)base.GetParameter("rt");

            switch (addressOrigin)
            {
            case AddressOrigin.Store:
            {
                if (!base.IsParameterSet("id"))
                {
                    throw new OwaInvalidRequestException("Missing contact id.");
                }
                StoreObjectId contactId = Utilities.CreateStoreObjectId((string)base.GetParameter("id"));
                RecipientWellEventHandler.ContactRecipientProperties contactRecipientProperties = this.GetContactRecipientProperties(contactId, base.UserContext);
                this.RenderContactProperties(contactRecipientProperties);
                return;
            }

            case AddressOrigin.Directory:
            {
                if (text == null)
                {
                    throw new OwaInvalidRequestException("Missing email address.");
                }
                ADObjectId adObjectId = null;
                if (base.IsParameterSet("id"))
                {
                    adObjectId = DirectoryAssistance.ParseADObjectId((string)base.GetParameter("id"));
                }
                RecipientWellEventHandler.ADRecipientProperties adrecipientProperties = this.GetADRecipientProperties(adObjectId, text, routingType);
                this.Writer.Write("<div>");
                if (string.IsNullOrEmpty(adrecipientProperties.Office))
                {
                    this.Writer.Write("<span id=\"{0}\">{1}</span>", "AdOf", LocalizedStrings.GetHtmlEncoded(1766818386));
                }
                else
                {
                    this.Writer.Write("<span id=\"{0}\">{1}</span>", "AdOf", Utilities.HtmlEncode(adrecipientProperties.Office));
                }
                if (string.IsNullOrEmpty(adrecipientProperties.Phone))
                {
                    this.Writer.Write("<span id=\"{0}\">{1}</span>", "AdPh", LocalizedStrings.GetHtmlEncoded(1766818386));
                }
                else
                {
                    this.Writer.Write("<span id=\"{0}\">{1}</span>", "AdPh", Utilities.HtmlEncode(adrecipientProperties.Phone));
                }
                if (!string.IsNullOrEmpty(adrecipientProperties.Id))
                {
                    this.Writer.Write("<span id=\"{0}\">{1}</span>", "AdId", Utilities.HtmlEncode(adrecipientProperties.Id));
                }
                this.Writer.Write("</div>");
                return;
            }

            case AddressOrigin.OneOff:
            {
                RecipientWellEventHandler.ContactRecipientProperties contactRecipientProperties2 = this.GetContactRecipientProperties(text, base.UserContext);
                this.RenderContactProperties(contactRecipientProperties2);
                return;
            }

            default:
                return;
            }
        }
Beispiel #17
0
 public void AddEntry(string displayName, string smtpAddress, string routingAddress, string alias, string routingType, AddressOrigin addressOrigin, int recipientFlags, string itemId, EmailAddressIndex emailAddressIndex, string sipUri, string mobilePhoneNumber)
 {
     if (!Utilities.IsMapiPDL(routingType) && string.IsNullOrEmpty(routingAddress))
     {
         return;
     }
     this.AddEntry(new RecipientInfoCacheEntry(displayName, smtpAddress, routingAddress, alias, routingType, addressOrigin, recipientFlags, itemId, emailAddressIndex, sipUri, mobilePhoneNumber));
 }
Beispiel #18
0
 // Token: 0x06002AD1 RID: 10961 RVA: 0x000F0DC8 File Offset: 0x000EEFC8
 protected void RenderMemberList()
 {
     foreach (DistributionListMember distributionListMember in this.distributionList)
     {
         if (!(distributionListMember.Participant == null))
         {
             Participant participant = distributionListMember.Participant;
             base.Response.Write("<tr><td class='adDlMmbrsLft'>");
             string                 itemType               = null;
             string                 itemId                 = null;
             string                 emailAddress           = participant.EmailAddress;
             string                 smtpAddress            = Utilities.GetParticipantProperty <string>(participant, ParticipantSchema.SmtpAddress, null);
             AddressOrigin          addressOrigin          = AddressOrigin.Unknown;
             StoreParticipantOrigin storeParticipantOrigin = participant.Origin as StoreParticipantOrigin;
             bool flag = distributionListMember.MainEntryId is ADParticipantEntryId;
             if (storeParticipantOrigin != null)
             {
                 if (string.CompareOrdinal(participant.RoutingType, "MAPIPDL") == 0)
                 {
                     base.UserContext.RenderThemeImage(base.Response.Output, ThemeFileId.DistributionListOther);
                     itemType = "IPM.DistList";
                 }
                 else
                 {
                     base.UserContext.RenderThemeImage(base.Response.Output, ThemeFileId.Contact);
                     itemType = "IPM.Contact";
                 }
                 itemId        = storeParticipantOrigin.OriginItemId.ToBase64String();
                 addressOrigin = AddressOrigin.Store;
             }
             else if (flag)
             {
                 bool participantProperty = Utilities.GetParticipantProperty <bool>(participant, ParticipantSchema.IsDistributionList, false);
                 if (participantProperty)
                 {
                     base.UserContext.RenderThemeImage(base.Response.Output, ThemeFileId.DistributionListOther);
                     itemType = "ADDistList";
                 }
                 else
                 {
                     base.UserContext.RenderThemeImage(base.Response.Output, ThemeFileId.DistributionListUser);
                     itemType = "AD.RecipientType.User";
                 }
                 addressOrigin = AddressOrigin.Directory;
             }
             else
             {
                 base.UserContext.RenderThemeImage(base.Response.Output, ThemeFileId.DistributionListUser);
             }
             if (string.CompareOrdinal(participant.RoutingType, "EX") == 0)
             {
                 ADRawEntry adrawEntry = this.FindRecipientInAD(participant.EmailAddress);
                 if (adrawEntry != null)
                 {
                     smtpAddress = ((SmtpAddress)adrawEntry[ADRecipientSchema.PrimarySmtpAddress]).ToString();
                     if (flag)
                     {
                         itemId = Utilities.GetBase64StringFromADObjectId((ADObjectId)adrawEntry[ADObjectSchema.Id]);
                     }
                 }
             }
             base.Response.Write("</td><td class=\"pdlNm adDlMmbrsRt\">");
             if (!string.IsNullOrEmpty(participant.DisplayName))
             {
                 this.RenderMemberNameLink(itemType, itemId, participant.DisplayName);
             }
             base.Response.Write("</td><td class=adDlMmbrsRt>");
             if (!string.IsNullOrEmpty(emailAddress))
             {
                 this.RenderMemberEmailLink(emailAddress, participant.DisplayName, smtpAddress, participant.RoutingType, addressOrigin, (storeParticipantOrigin != null) ? storeParticipantOrigin.OriginItemId : null, (storeParticipantOrigin != null) ? storeParticipantOrigin.EmailAddressIndex : EmailAddressIndex.None);
             }
             base.Response.Write("</td></tr>");
         }
     }
 }
 public RecipientInfoCacheEntry(string displayName, string smtpAddress, string routingAddress, string alias, string routingType, AddressOrigin addressOrigin, int recipientFlags, string itemId, EmailAddressIndex emailAddressIndex, string sipUri, string mobilePhoneNumber) : this(displayName, smtpAddress, routingAddress, alias, routingType, addressOrigin, recipientFlags, itemId, emailAddressIndex, sipUri, mobilePhoneNumber, 6, DateTime.UtcNow.Ticks, 0, 0, 0)
 {
 }