+++ /dev/null
-
-slug_in_url = /([a-z0-9-]+)[/]?$/
-
-class Readings.Book
- constructor: (record) ->
- @url = record.url
- @href = record.href
- @cover = record.cover
- @author = record.author
- @title = record.title
- @slug = slug_in_url.exec(@href)[1]
-
- render: ->
- "<li><a href=\"reader.html?slug=#{@slug}\">#{@title}</a></li>"
-
- group: ->
- @author
-
-
-$.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'