예제 #1
0
        // Token: 0x06001D6D RID: 7533 RVA: 0x000AA19C File Offset: 0x000A839C
        private string GetSecondRow(AddressBookMultiLineList2.ItemClass itemClass, bool renderYomiCompany, AddressBookMultiLineList2.SharedColumn sortedSharedColumn)
        {
            string text = null;

            if (itemClass == AddressBookMultiLineList2.ItemClass.Person)
            {
                text = this.GetTitleAndOrCompany(renderYomiCompany, sortedSharedColumn != AddressBookMultiLineList2.SharedColumn.Affiliation);
            }
            else
            {
                if (itemClass == AddressBookMultiLineList2.ItemClass.Group)
                {
                    using (StringWriter stringWriter = new StringWriter())
                    {
                        base.RenderVLVAnchorOpen(stringWriter);
                        stringWriter.Write(LocalizedStrings.GetHtmlEncoded(-1878983012));
                        base.RenderVLVAnchorClose(stringWriter);
                        return(stringWriter.ToString());
                    }
                }
                Column column = ListViewColumns.GetColumn(ColumnId.OfficeAD);
                text = this.DataSource.GetItemProperty <string>(column[0], string.Empty);
                if (string.IsNullOrEmpty(text))
                {
                    text = null;
                }
                else
                {
                    text = Utilities.HtmlEncode(text);
                }
            }
            return(text);
        }
예제 #2
0
        // Token: 0x06001D6A RID: 7530 RVA: 0x000A9CD0 File Offset: 0x000A7ED0
        private void RenderItem(TextWriter writer, AddressBookMultiLineList2.ItemClass itemClass)
        {
            bool flag  = this.HasIMAddress();
            bool flag2 = this.HasEmailAddress() || flag;
            bool flag3 = this.IsDistributionList();
            bool flag4 = this.HasMobileNumber();
            bool flag5 = (this.isPicker && !this.isMobile && !this.isPAA && !flag2) || (this.isPAA && flag3) || (this.isMobile && !flag3 && !flag4);

            string[] array    = new string[3];
            int      num      = 0;
            ColumnId columnId = base.SortedColumn.Id;

            if (columnId == ColumnId.ContactFlagDueDate || columnId == ColumnId.ContactFlagStartDate)
            {
                columnId = ColumnId.FileAs;
            }
            AddressBookMultiLineList2.SharedColumn sharedColumn = AddressBookMultiLineList2.GetSharedColumn(columnId);
            if (sharedColumn == AddressBookMultiLineList2.SharedColumn.Name)
            {
                array[0] = this.GetName(this.isYomiNameColumnPresent);
            }
            else if (sharedColumn == AddressBookMultiLineList2.SharedColumn.Affiliation)
            {
                array[0] = this.GetCompany(this.isYomiAffiliationColumnPresent);
            }
            else
            {
                array[0] = this.GetProperty(sharedColumn);
            }
            if (array[0] == null)
            {
                array[0] = "&nbsp;";
            }
            num++;
            if (sharedColumn == AddressBookMultiLineList2.SharedColumn.Name)
            {
                string text = this.GetSecondRow(itemClass, this.isYomiAffiliationColumnPresent, sharedColumn);
                if (text != null)
                {
                    array[num++] = text;
                }
            }
            else
            {
                string text = this.GetName(this.isYomiNameColumnPresent);
                if (text != null)
                {
                    array[num++] = text;
                }
                if (!this.isPicker || flag5 || (this.isPicker && num < 2))
                {
                    text = this.GetSecondRow(itemClass, this.isYomiAffiliationColumnPresent, sharedColumn);
                    if (text != null)
                    {
                        array[num++] = text;
                    }
                }
            }
            if (((!this.isPicker || (this.isMobile && !flag3) || flag5) && num < 3) || (this.isPicker && num < 2))
            {
                string text = this.GetPhoneNumbers();
                if (text != null)
                {
                    array[num++] = text;
                }
            }
            if (!this.isMobile || flag3)
            {
                if (this.isPicker)
                {
                    if (num < 3)
                    {
                        string text = this.GetEmailAddresses();
                        if (text != null)
                        {
                            array[num++] = text;
                        }
                        else if (flag)
                        {
                            text = this.GetIMAddress();
                            if (text != null)
                            {
                                array[num++] = text;
                            }
                        }
                    }
                }
                else
                {
                    bool   flag6             = false;
                    int    num2              = -1;
                    string mobilePhoneNumber = this.GetMobilePhoneNumber();
                    if (num < 3)
                    {
                        string text = this.GetEmailAddress(AddressBookMultiLineList2.SharedColumn.EmailAddress1, flag5);
                        if (text != null)
                        {
                            bool flag7 = this.RowContainsEmailInfo(text);
                            if (!flag7 && !flag5 && !flag && !flag6)
                            {
                                text  = this.GetEmailRenderedAsIMAddress(text, null, mobilePhoneNumber);
                                flag6 = true;
                            }
                            else if (flag7)
                            {
                                flag6 = true;
                            }
                            else if (!flag6 && num2 < 0)
                            {
                                num2 = num;
                            }
                            array[num++] = text;
                        }
                    }
                    if (num < 3)
                    {
                        string text = this.GetEmailAddress(AddressBookMultiLineList2.SharedColumn.EmailAddress2, flag5);
                        if (text != null)
                        {
                            bool flag8 = this.RowContainsEmailInfo(text);
                            if (!flag8 && !flag5 && !flag && !flag6)
                            {
                                text  = this.GetEmailRenderedAsIMAddress(text, null, mobilePhoneNumber);
                                flag6 = true;
                            }
                            else if (flag8)
                            {
                                flag6 = true;
                            }
                            else if (!flag6 && num2 < 0)
                            {
                                num2 = num;
                            }
                            array[num++] = text;
                        }
                    }
                    if (num < 3)
                    {
                        string text = this.GetEmailAddress(AddressBookMultiLineList2.SharedColumn.EmailAddress3, flag5);
                        if (text != null)
                        {
                            bool flag9 = this.RowContainsEmailInfo(text);
                            if (!flag9 && !flag5 && !flag && !flag6)
                            {
                                text  = this.GetEmailRenderedAsIMAddress(text, null, mobilePhoneNumber);
                                flag6 = true;
                            }
                            else if (flag9)
                            {
                                flag6 = true;
                            }
                            else if (!flag6 && num2 < 0)
                            {
                                num2 = num;
                            }
                            array[num++] = text;
                        }
                    }
                    if (flag)
                    {
                        if (num < 3)
                        {
                            string text = this.GetEmailAddress(AddressBookMultiLineList2.SharedColumn.IMAddress, flag5);
                            if (text != null)
                            {
                                array[num++] = text;
                            }
                        }
                        else if (!flag6 && num2 > -1)
                        {
                            string email        = array[num2];
                            string itemProperty = this.DataSource.GetItemProperty <string>(ContactSchema.IMAddress, null);
                            array[num2] = this.GetEmailRenderedAsIMAddress(email, itemProperty, mobilePhoneNumber);
                        }
                    }
                }
            }
            if (num == 1)
            {
                num = 2;
                using (StringWriter stringWriter = new StringWriter())
                {
                    array[1] = (this.RenderMobileRecipient(stringWriter, " ") ? stringWriter.ToString() : "&nbsp;");
                }
            }
            this.RenderRow(writer, array[0], 1, flag5, flag2, itemClass == AddressBookMultiLineList2.ItemClass.Group, true);
            if (num == 2)
            {
                this.RenderRow(writer, array[1], 2, flag5, flag2, false, false);
                return;
            }
            if (num == 3)
            {
                this.RenderRow(writer, array[1], 2, flag5, flag2, false, false);
                this.RenderRow(writer, array[2], 3, flag5, flag2, false, false);
            }
        }