]> git.deb.at Git - pkg/abook.git/blobdiff - abook.c
mutt-query (2/3): moved mutt full database querying to mutt_query_export_database...
[pkg/abook.git] / abook.c
diff --git a/abook.c b/abook.c
index 43f0294a6b418642ec6ebe8396964896db1aa4d3..4ef136c1f44082359a7516fd1f24ae5444de2aa5 100644 (file)
--- a/abook.c
+++ b/abook.c
@@ -132,6 +132,8 @@ init_abook()
 
        signal(SIGTERM, quit_abook_sig);
 
+       init_index();
+
        if(init_ui())
                exit(EXIT_FAILURE);
 
@@ -185,9 +187,11 @@ int
 main(int argc, char **argv)
 {
 #if defined(HAVE_SETLOCALE) && defined(HAVE_LOCALE_H)
-       setlocale(LC_ALL, "");
+       setlocale(LC_MESSAGES, "");
+       setlocale(LC_TIME, "");
+       setlocale(LC_CTYPE, "");
+       setlocale(LC_COLLATE, "");
 #endif
-
        bindtextdomain(PACKAGE, LOCALEDIR);
        textdomain(PACKAGE);
 
@@ -442,35 +446,13 @@ quit_mutt_query(int status)
        exit(status);
 }
 
-static void
-muttq_print_item(FILE *file, int item)
-{
-       abook_list *emails, *e;
-       char *tmp = db_email_get(item);
-
-       emails = csv_to_abook_list(tmp);
-       free(tmp);
-
-       for(e = emails; e; e = e->next) {
-               fprintf(file, "%s\t%s\t%s\n", e->data, db_name_get(item),
-                               !db_fget(item, NOTES) ?" " :db_fget(item, NOTES)
-                               );
-               if(!opt_get_bool(BOOL_MUTT_RETURN_ALL_EMAILS))
-                       break;
-       }
-       abook_list_free(&emails);
-}
-
 static void
 mutt_query(char *str)
 {
        init_mutt_query();
 
        if( str == NULL || !strcasecmp(str, "all") ) {
-               struct db_enumerator e = init_db_enumerator(ENUM_ALL);
-               printf("All items\n");
-               db_enumerate_items(e)
-                       muttq_print_item(stdout, e.item);
+               export_file("muttq", "-");
        } else {
                int search_fields[] = {NAME, EMAIL, NICK, -1};
                int i;
@@ -706,6 +688,7 @@ init_add_email()
        check_abook_directory();
        init_opts();
        load_opts(rcfile);
+       init_standard_fields();
        atexit(free_opts);
 
        /*