ported to Web SQL
[ReadingsJQM.git] / js / app / models.coffee
diff --git a/js/app/models.coffee b/js/app/models.coffee
new file mode 100644 (file)
index 0000000..ef1c7f5
--- /dev/null
@@ -0,0 +1,65 @@
+
+
+url_to_slug = (url) ->
+  slug_in_url = /([a-z0-9-]+)[/]?$/
+  slug_in_url.exec(url)[1]
+
+class Readings.Book
+  constructor: (record) ->
+    $.extend(this, record)
+
+  render: ->
+    wlurl = Readings.config.get 'wlurl'
+    "<li>
+      <a href=\"reader.html?book_id=#{@id}\">
+        <img src=\"#{wlurl}#{@cover}\">
+        <h3> #{@title}</h3>
+       </a>
+     </li>"
+
+  group: ->
+    @authors
+
+
+class Readings.Tag
+  constructor: (record, @category) ->
+    $.extend(this, record)
+
+  render: ->
+    "<li><a href=\"books.html?tag_id=#{@id}\">#{@name}</a></li>"
+
+  group: ->
+    @sort_key[0].toUpperCase()
+    # if @category == 'author'
+    #   # last word, first letter
+    #   @name.split(' ').slice(-1)[0][0].toUpperCase()
+    # else
+    #   @name[0].toUpperCase()
+
+
+
+# $.fn.Readings.BookList = (category, tag) ->
+#   this.each ->
+#     $('[data-role=header] h1').text tag.name
+#     list = $('[data-role=listview]', this)
+#     $.ajax
+#       url: "#{tag.href}books/"
+#       #url: Readings.config.get('wlurl') + "/api/#{category}"
+#       contentType: "json"
+#       success: (data) ->
+#         console.log(data)
+#         books = $.map data, (rec) -> new Readings.Book(rec)
+#         list.empty()
+#         last_separator = null
+#         show_separator = !(category == 'authors')
+
+#         for b in books
+#           # throw a separator in for some categories
+#           if show_separator
+#             separator = t.group()
+#             if last_separator != separator
+#               list.append "<li data-role=\"list-divider\">#{separator}</li>"
+#               last_separator = separator
+
+#           list.append b.render()
+#           list.listview 'refresh'