harvesterplugins/contacts/src/ccontactsplugin.cpp
changeset 17 7d8c8d8f5eab
parent 12 993ab30e92fc
child 20 68cdadcf169e
--- a/harvesterplugins/contacts/src/ccontactsplugin.cpp	Tue Jul 06 14:17:22 2010 +0300
+++ b/harvesterplugins/contacts/src/ccontactsplugin.cpp	Wed Aug 18 09:49:49 2010 +0300
@@ -310,16 +310,38 @@
 	if (! (findpos < 0) || (findpos >= aFieldSet.Count() ) )
 		{
 		CContactItemField& additionalField = aFieldSet[ findpos ];
-		CContactTextField* fieldText = additionalField.TextStorage();
-		if ( fieldText && fieldText->Text() != KNullDesC )
-			{
-			TInt currentSize = iExcerpt->Size();
-			TInt newSize = currentSize + fieldText->Text().Size() + 1;
-			iExcerpt = iExcerpt->ReAllocL(newSize);
-			TPtr ptr = iExcerpt->Des();
-			ptr.Append(fieldText->Text());
-			ptr.Append(KExcerptDelimiter);
-			}
+		TInt newfieldsize = 0;
+		if( additionalField.StorageType() == KStorageTypeDateTime)
+		            {
+		            CContactDateField* fieldDate = additionalField.DateTimeStorage();
+		            if (fieldDate)
+		                {
+		                TBuf<30> dateString;
+		                fieldDate->Time().FormatL(dateString, KTimeFormat);
+                        TInt currentSize = iExcerpt->Size();
+                        TInt newSize = currentSize + dateString.Size()+ 1;
+                        iExcerpt = iExcerpt->ReAllocL(newSize);
+                        TPtr ptr = iExcerpt->Des();
+                        ptr.Append(dateString);
+                        ptr.Append(KExcerptDelimiter);
+		                }
+		            
+		            }
+		        else
+		            {
+		            CContactTextField* fieldText = additionalField.TextStorage();
+		            if (fieldText && fieldText->Text() != KNullDesC )
+		                {
+                          TInt currentSize = iExcerpt->Size();
+                          TInt newSize = currentSize + fieldText->Text().Size() + 1;
+                          iExcerpt = iExcerpt->ReAllocL(newSize);
+                          TPtr ptr = iExcerpt->Des();
+                          ptr.Append(fieldText->Text());
+                          ptr.Append(KExcerptDelimiter);
+		                }
+		            }
+		
+		
 		}
 	}
 
@@ -383,10 +405,15 @@
             /* The order of fields in excerpt is as below. The order in this case
              * is the order of fields shown when you 'Edit' the contact.
              */
+#ifdef USE_HIGHLIGHTER            
+            AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldGivenName, KContactsGivenNameField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField::EIndexFreeText );
+            AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldFamilyName, KContactsFamilyNameField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField:: EIndexFreeText );
+#else
             AddFieldL( *index_item, fieldSet, KUidContactFieldGivenName, KContactsGivenNameField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField::EIndexFreeText );
-            AddFieldL( *index_item, fieldSet, KUidContactFieldFamilyName, KContactsFamilyNameField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField:: EIndexFreeText );
+            AddFieldL( *index_item, fieldSet, KUidContactFieldFamilyName, KContactsFamilyNameField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField:: EIndexFreeText );        
+#endif            
             AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldPhoneNumber, KContactsPhoneNumberField );
-            AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldEMail, KContactsEMailField );
+            AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldEMail, KContactsEMailField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField::EIndexFreeText );
             AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldSIPID, KContactsSIPIDField );
             AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldCompanyName, KContactsCompanyNameField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField::EIndexFreeText );
             AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldJobTitle, KContactsJobTitleField, CDocumentField::EStoreYes | CDocumentField::EIndexTokenized | CDocumentField::EIndexFreeText );
@@ -419,9 +446,13 @@
             
             AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldIMAddress, KContactIMAddress);
             AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldServiceProvider, KContactServiceProvider);
-            
+#ifdef USE_HIGHLIGHTER
+            AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldBirthday, KContactBirthday);
+            AddFieldToDocumentAndExcerptL( *index_item, fieldSet, KUidContactFieldAnniversary, KContactAnniversary);
+#else
             AddFieldL( *index_item, fieldSet, KUidContactFieldBirthday, KContactBirthday);
-            AddFieldL( *index_item, fieldSet, KUidContactFieldAnniversary, KContactAnniversary);
+            AddFieldL( *index_item, fieldSet, KUidContactFieldAnniversary, KContactAnniversary);      
+#endif            
             index_item->AddExcerptL(*iExcerpt);
             }