]> git.deb.at Git - pkg/abook.git/blobdiff - database.c
db_email_get() now returns every email addresses (ie field type: email),
[pkg/abook.git] / database.c
index 729db926bb922ca214f210f0e71b46fe85388e91..2b642f8aad59b5136b5e6582d19ff92e6ccaf721 100644 (file)
@@ -837,3 +837,22 @@ db_item_get(int i)
        return database[i];
 }
 
+/* Fetch addresses from all fields of FIELD_EMAILS type */
+/* Memory has to be freed by the caller */
+char *
+db_email_get(int item)
+{
+       int i;
+       char *res;
+       abook_field_list *cur;
+       abook_list *emails = NULL;
+
+       for(cur = fields_list, i = 0; cur; cur = cur->next, i++)
+               if(cur->field->type == FIELD_EMAILS && *database[item][i])
+                       abook_list_append(&emails, database[item][i]);
+
+       res = abook_list_to_csv(emails);
+       abook_list_free(&emails);
+       return res ? res : xstrdup("");
+}
+