Index: gui/widgets/e-minicard.c
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/widgets/e-minicard.c,v
retrieving revision 1.126
diff -u -p -r1.126 e-minicard.c
--- gui/widgets/e-minicard.c	24 Aug 2005 03:06:51 -0000	1.126
+++ gui/widgets/e-minicard.c	9 Jan 2006 10:13:53 -0000
@@ -65,7 +65,7 @@ static GnomeCanvasGroupClass *parent_cla
 #define d(x)
 
 #define LIST_ICON_NAME "stock_contact-list"
-
+#define EMAIL_SLOTS 4
 static void
 e_minicard_field_destroy(EMinicardField *field)
 {
@@ -94,6 +94,31 @@ enum {
 
 static guint e_minicard_signals [LAST_SIGNAL] = {0, };
 
+
+static struct {
+	gchar *name;
+	gchar *pretty_name;
+}
+loc [] =
+{
+	{ "WORK", "Work Email"  },
+	{ "HOME",  "Home Email"  },
+	{ "OTHER", "Other Email" }
+};	
+
+static gint
+get_email_location (EVCardAttribute *attr)
+{
+	gint i;
+
+	for (i = 0; i < G_N_ELEMENTS (loc); i++) {
+		if (e_vcard_attribute_has_type (attr,loc[i].name))
+			return i;
+	}
+
+	return -1;
+}
+
 GType
 e_minicard_get_type (void)
 {
@@ -760,7 +785,7 @@ e_minicard_resize_children( EMinicard *e
 }
 
 static void
-add_field (EMinicard *e_minicard, EContactField field, gdouble left_width)
+add_field (EMinicard *e_minicard, EContactField field, gdouble left_width,gint location)
 {
 	GnomeCanvasItem *new_item;
 	GnomeCanvasGroup *group;
@@ -768,9 +793,14 @@ add_field (EMinicard *e_minicard, EConta
 	char *name;
 	char *string;
 	
+	
 	group = GNOME_CANVAS_GROUP( e_minicard );
 	
-	name = g_strdup_printf("%s:", e_contact_pretty_name (field));
+	if(location>=0)
+		name = g_strdup_printf("%s:",loc[location].pretty_name);
+	else
+		name=g_strdup_printf("%s:",e_contact_pretty_name(field));
+		
 	string = e_contact_get (e_minicard->contact, field);
 
 	new_item = e_minicard_label_new(group);
@@ -847,9 +877,12 @@ remodel( EMinicard *e_minicard )
 	if (e_minicard->contact) {
 		EContactField field;
 		GList *list;
-		char *file_as;
+		char *file_as,*location;
 		int left_width = -1;
 		gboolean is_list = FALSE;
+		GList *email_attr_list,*l;
+		gint record_n,i=0;
+		gint email_location[EMAIL_SLOTS];
 
 		if (e_minicard->header_text) {
 			file_as = e_contact_get (e_minicard->contact, E_CONTACT_FILE_AS);
@@ -869,7 +902,14 @@ remodel( EMinicard *e_minicard )
 
 		list = e_minicard->fields;
 		e_minicard->fields = NULL;
+				
+		email_attr_list = e_contact_get_attributes (e_minicard->contact, E_CONTACT_EMAIL);
+		for (record_n = 1, l = email_attr_list; l && record_n <= EMAIL_SLOTS; l = g_list_next (l),record_n++) {
+		EVCardAttribute *attr = l->data;
+		email_location[record_n-1]=get_email_location(attr);
+		}
 
+		
 		for(field = E_CONTACT_FULL_NAME; field != (E_CONTACT_LAST_SIMPLE_STRING -1) && count < 5; field++) {
 			EMinicardField *minicard_field = NULL;
 
@@ -906,7 +946,12 @@ remodel( EMinicard *e_minicard )
 
 				string = e_contact_get(e_minicard->contact, field);
 				if (string && *string) {
-					add_field(e_minicard, field, left_width);
+					if(!g_ascii_strcasecmp(e_contact_vcard_attribute(field),"EMAIL"))
+						location=email_location[i++];
+					else
+						location=-1;
+					
+					add_field(e_minicard, field, left_width,location);
 					count++;
 				}
 				g_free(string);
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/ChangeLog,v
retrieving revision 1.2026
diff -u -p -r1.2026 ChangeLog
--- ChangeLog	22 Dec 2005 07:55:15 -0000	1.2026
+++ ChangeLog	9 Jan 2006 10:14:31 -0000
@@ -1,3 +1,7 @@
+2005-01-07  Oswald Rodrigues <ozzy_rodrigues@yahoo.com>
+	
+	* gui/widgets/e-minicard.c: Modified the minicard e-mail fields corresponding to e-mail type.
+	
 2005-12-22  Srinivasa Ragavan <sragavan@novell.com>
 
 	* gui/search/addresstypes.xml: Modified the categories to option menu
