X-Git-Url: https://git.deb.at/w?a=blobdiff_plain;f=filter.c;h=2ea5a2dd77bfa3acafa196f5f324a7b47cee2ed6;hb=0e98461940cbb36816b14dc54a0defa1ed0fc920;hp=dca51b804e79495580c3af03dedfcf477e7a0cf4;hpb=41864407018fedd409811621041aab12153cc89a;p=pkg%2Fabook.git diff --git a/filter.c b/filter.c index dca51b8..2ea5a2d 100644 --- a/filter.c +++ b/filter.c @@ -1069,23 +1069,26 @@ html_export_database(FILE *out, struct db_enumerator e) html_export_write_head(out); db_enumerate_items(e) { - fprintf(out, ""); + fprintf(out, " \n"); for(cur = index_elements; cur; cur = cur->next) { if(cur->type != INDEX_FIELD) continue; - + get_list_field(e.item, cur, &f); + fprintf(out, " "); + if(f.type == FIELD_EMAILS) { - fprintf(out, ""); html_print_emails(out, &f); - fprintf(out, ""); - continue; } else { - fprintf(out, "%s", safe_str(f.data)); + if (strcmp(safe_str(f.data), "") == 0) + fprintf(out, " "); + else + fprintf(out, "%s", safe_str(f.data)); } + fprintf(out, "\n"); } - fprintf(out, "\n"); + fprintf(out, " \n"); } html_export_write_tail(out); @@ -1099,22 +1102,45 @@ html_export_write_head(FILE *out) char *realname = get_real_name(), *str; struct index_elem *cur; - fprintf(out, "\n"); - fprintf(out, "\n\n %s's addressbook", - realname ); - fprintf(out, "\n\n\n"); - fprintf(out, "\n

%s's addressbook

\n", realname ); - fprintf(out, "

\n\n"); - - fprintf(out, "\n"); + fprintf(out, "\n"); + fprintf(out, "\n"); + fprintf(out, "\n"); + fprintf(out, " \n"); + fprintf(out, " "); + fprintf(out, _("%s's addressbook"), realname ); + fprintf(out, "\n"); + fprintf(out, " \n"); + fprintf(out, "\n"); + fprintf(out, "\n"); + fprintf(out, "

"); + fprintf(out, _("%s's addressbook"), realname); + fprintf(out, "

\n"); + + fprintf(out, "
\n"); + fprintf(out, "\n"); + fprintf(out, " \n"); for(cur = index_elements; cur; cur = cur->next) { if(cur->type != INDEX_FIELD) continue; get_field_info(cur->d.field.id, NULL, &str, NULL); - fprintf(out, "", str); + + fprintf(out, " \n"); } - fprintf(out, "\n\n"); + fprintf(out, " \n"); + fprintf(out, "\n"); + fprintf(out, "\n"); free(realname); } @@ -1122,8 +1148,9 @@ html_export_write_head(FILE *out) static void html_export_write_tail(FILE *out) { - fprintf(out, "\n
%s"); + + if (strcmp(str, "") == 0) + fprintf(out, " "); + else + fprintf(out, "%s", str); + + fprintf(out, "
\n"); - fprintf(out, "\n\n\n"); + fprintf(out, "\n"); + fprintf(out, "\n"); + fprintf(out, ""); } /* @@ -2620,7 +2647,7 @@ parse_custom_format(char *s, char *fmt_string, enum field_types *ft) cannotparse: fprintf(stderr, _("%s: invalid format, index %ld\n"), __FUNCTION__, (start - s)); free(fmt_string); - while(*ft) free(ft--); + free(ft); exit(EXIT_FAILURE); } @@ -2696,11 +2723,10 @@ extern char custom_format[FORMAT_STRING_LEN]; static int custom_export_database(FILE *out, struct db_enumerator e) { - char *format_string = - (char *)malloc(FORMAT_STRING_LEN * sizeof(char*)); + char *format_string = (char *)malloc(FORMAT_STRING_LEN); enum field_types *ft = - (enum field_types *)malloc(FORMAT_STRING_MAX_FIELDS * sizeof(enum field_types *)); + (enum field_types *)malloc(FORMAT_STRING_MAX_FIELDS * sizeof(enum field_types)); parse_custom_format(custom_format, format_string, ft);