Ejemplo n.º 1
0
 // Token: 0x06001D68 RID: 7528 RVA: 0x000A9BA8 File Offset: 0x000A7DA8
 private void RenderRow(TextWriter writer, string contents, int rowNumber, bool shouldGreyOut, bool hasEmailAddress, bool isGroup, bool isFirstRow)
 {
     this.RenderRowStart(writer, rowNumber, shouldGreyOut, hasEmailAddress);
     if (isGroup)
     {
         base.UserContext.RenderThemeImage(writer, ThemeFileId.AddressBookDL);
         writer.Write("&nbsp;&nbsp;<b>");
     }
     writer.Write(contents);
     if (isGroup)
     {
         writer.Write("</b>");
     }
     base.RenderSelectionImage(writer);
     if (isFirstRow)
     {
         base.RenderRowDivider(writer);
     }
     AddressBookMultiLineList2.RenderRowEnd(writer, shouldGreyOut);
 }
Ejemplo n.º 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);
            }
        }