Implement sort_title getter, setter

This commit is contained in:
Leeingnyo
2021-12-24 23:48:52 +09:00
parent 3a932d7b0a
commit ab799af866
3 changed files with 85 additions and 0 deletions

View File

@@ -8,6 +8,9 @@ class Entry
size : String, pages : Int32, id : String, encoded_path : String,
encoded_title : String, mtime : Time, err_msg : String?
@[YAML::Field(ignore: true)]
@sort_title : String?
def initialize(@zip_path, @book)
storage = Storage.default
@encoded_path = URI.encode @zip_path
@@ -66,6 +69,27 @@ class Entry
end
end
def sort_title
sort_title_cached = @sort_title
return sort_title_cached if sort_title_cached
sort_title = Storage.default.get_entry_sort_title id
if sort_title
@sort_title = sort_title
return sort_title
end
@sort_title = @title
@title
end
def sort_title=(sort_title : String | Nil)
Storage.default.set_entry_sort_title id, sort_title
@sort_title = sort_title
end
def sort_title_db
Storage.default.get_entry_sort_title id
end
def display_name
@book.display_name @title
end