// Token: 0x06003135 RID: 12597 RVA: 0x0012238C File Offset: 0x0012058C
        internal static string ValidatePhoneNumbers(UnifiedMessagingUtilities.ValidatePhoneNumber validatePhoneNumber, params string[] phoneNumbers)
        {
            IDataValidationResult dataValidationResult = new DataValidationResult();
            string data   = string.Empty;
            string result = null;

            foreach (string text in phoneNumbers)
            {
                if (!validatePhoneNumber(text, out dataValidationResult))
                {
                    data = text;
                    break;
                }
            }
            if (dataValidationResult.PAAValidationResult != PAAValidationResult.Valid)
            {
                result = UnifiedMessagingUtilities.GetErrorResourceId(dataValidationResult.PAAValidationResult, data);
            }
            return(result);
        }
예제 #2
0
        public void ValidateTransferTo()
        {
            PAATransferToInfo paatransferToInfo = (PAATransferToInfo)base.GetParameter("XfrTo");
            string            text = null;

            using (IPAAStore ipaastore = PAAStore.Create(base.UserContext.ExchangePrincipal))
            {
                if (!string.IsNullOrEmpty(paatransferToInfo.Ph))
                {
                    text = UnifiedMessagingUtilities.ValidatePhoneNumbers(new UnifiedMessagingUtilities.ValidatePhoneNumber(ipaastore.ValidatePhoneNumberForOutdialing), new string[]
                    {
                        paatransferToInfo.Ph
                    });
                }
                else
                {
                    IDataValidationResult dataValidationResult = null;
                    if (paatransferToInfo.VM)
                    {
                        ipaastore.ValidateADContactForTransferToMailbox(paatransferToInfo.Contact, out dataValidationResult);
                    }
                    else
                    {
                        ipaastore.ValidateADContactForOutdialing(paatransferToInfo.Contact, out dataValidationResult);
                    }
                    if (dataValidationResult.PAAValidationResult != PAAValidationResult.Valid)
                    {
                        text = UnifiedMessagingUtilities.GetErrorResourceId(dataValidationResult.PAAValidationResult, paatransferToInfo.Contact);
                    }
                }
            }
            if (!string.IsNullOrEmpty(text))
            {
                this.RenderErrorInfobar(text);
            }
        }
예제 #3
0
        public void ValidateCallerId()
        {
            PAACallerIdInfo paacallerIdInfo = (PAACallerIdInfo)base.GetParameter("CllrId");
            string          text            = null;

            using (IPAAStore ipaastore = PAAStore.Create(base.UserContext.ExchangePrincipal))
            {
                if (paacallerIdInfo.HasPhoneNumbers)
                {
                    string[] array = (string[])base.GetParameter("CPh");
                    if (array.Length > 50)
                    {
                        text = Utilities.HtmlEncode(string.Format(CultureInfo.CurrentCulture, LocalizedStrings.GetNonEncoded(1755659442), new object[]
                        {
                            50
                        }));
                    }
                    if (text == null)
                    {
                        text = UnifiedMessagingUtilities.ValidatePhoneNumbers(new UnifiedMessagingUtilities.ValidatePhoneNumber(ipaastore.ValidatePhoneNumberCallerId), array);
                    }
                }
                IDataValidationResult dataValidationResult = null;
                if (text == null && paacallerIdInfo.HasContacts)
                {
                    RecipientInfo[] array2 = (RecipientInfo[])base.GetParameter("CRcps");
                    if (array2.Length > 50)
                    {
                        text = Utilities.HtmlEncode(string.Format(CultureInfo.CurrentCulture, LocalizedStrings.GetNonEncoded(2034140420), new object[]
                        {
                            50
                        }));
                    }
                    if (text == null)
                    {
                        foreach (RecipientInfo recipientInfo in array2)
                        {
                            if (recipientInfo.AddressOrigin == AddressOrigin.Store)
                            {
                                ipaastore.ValidateContactItemCallerId(recipientInfo.StoreObjectId, out dataValidationResult);
                            }
                            else if (recipientInfo.AddressOrigin == AddressOrigin.Directory)
                            {
                                ipaastore.ValidateADContactCallerId(recipientInfo.RoutingAddress, out dataValidationResult);
                            }
                            if (dataValidationResult.PAAValidationResult != PAAValidationResult.Valid)
                            {
                                text = UnifiedMessagingUtilities.GetErrorResourceId(dataValidationResult.PAAValidationResult, recipientInfo.DisplayName);
                                break;
                            }
                        }
                    }
                }
                if (text == null && paacallerIdInfo.IsInContactFolder)
                {
                    ipaastore.ValidateContactFolderCallerId(out dataValidationResult);
                    if (dataValidationResult.PAAValidationResult != PAAValidationResult.Valid)
                    {
                        text = UnifiedMessagingUtilities.GetErrorResourceId(dataValidationResult.PAAValidationResult, null);
                    }
                }
            }
            if (!string.IsNullOrEmpty(text))
            {
                this.RenderErrorInfobar(text);
            }
        }