aboutsummaryrefslogtreecommitdiff
path: root/booki.c
diff options
context:
space:
mode:
authorBen Winston2024-06-07 22:53:15 -0400
committerBen Winston2024-06-07 22:53:15 -0400
commit2f0934a848506741dc409e6ae6dbbf9e1e8ba67b (patch)
tree2f24dd1e03c9e9c6bea507a3d2e07ec73cb4c337 /booki.c
parent1513ad9beb5f5f69133e7588d2f17f878b7fd038 (diff)
add read support for ID, but don't show it
Diffstat (limited to 'booki.c')
-rw-r--r--booki.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/booki.c b/booki.c
index 28cb2c3..d2a6262 100644
--- a/booki.c
+++ b/booki.c
@@ -30,7 +30,8 @@ static const DataField BOOK_FIELDS[] = {
{ "published", booki_number },
{ "language", booki_string },
{ "translator", booki_string },
- { "on", booki_string }
+ { "on", booki_string },
+ { "id", booki_number }
};
#define BOOK_FIELDS_COUNT (sizeof(BOOK_FIELDS) / sizeof(BOOK_FIELDS[0]))
@@ -432,8 +433,10 @@ int get_number_field(BOOK book, char* name) {
return book.pages;
else if (ATTR_MATCH(name, "published"))
return book.published;
+ else if (ATTR_MATCH(name, "id"))
+ return book.id;
else
- return -1;
+ return 0;
}
void print_book(BOOK book, bool all_fields) {
@@ -461,6 +464,9 @@ void print_book(BOOK book, bool all_fields) {
printf(esfmt, datafield.name, size, str);
// number fields
} else if (datafield.type == booki_number) {
+ // don't print the ID
+ if (ATTR_MATCH(datafield.name, "id"))
+ continue;
number_field = get_number_field(book, datafield.name);
if (!number_field)
continue;