Fixed lhs. Link well.
[b4.git] / app / assets / javascripts / views / links / links_index.js.coffee
blobf3ec7895f1d7fa6284cddcf56b66ca9d89805d5a
1 class B4.Views.NewLinkForm extends Backbone.View
2   el: $ '#new_link_form'
3   tagName: 'div'
4   events:
5     'click form button' : "onSubmit"
7   onSubmit: ->
8     $(@el).find('input[type="submit"]').attr("data-loading-text", "Saving...")
9     newlink = new B4.Models.Link()
10     newlink.set({
11       title: $(@el).find('input[name="title"]').val()
12       url: $(@el).find('input[name="url"]').val()
13       tags: $(@el).find('input[name="tags"]').val()
14     })
15     newlink.save({}, {success: ->
16       $('input[name="title"]').val("")
17       $('input[name="url"]').val("")
18       $('input[name="tags"]').val("")
19       cur = B4.links_view.current_tag
20       if cur is "" or cur in newlink.attributes.tags
21         window.links.add(newlink, {at: 0})
22         B4.links_view.model = window.links
23         B4.links_view.render()
24       $(@el).find('input[type="submit"]').removeAttr("data-loading-text")
25     })
27   render: ->
28     console.log(@el)
29     @el.unbind("submit")
30     @el.submit((e) ->
31       B4.new_link_view.onSubmit()
32       e.preventDefault()
33     )
34     @
36 class B4.Views.LinksIndex extends Backbone.View
37   el: $ '#links'
38   tagName: 'ul'
40   render: ->
41     $(@el).html @template(links: @model.toJSON())
42     @
44   template: JST['links/index']
46 $(document).ready ->
47   B4.Views.LinksIndex.prototype.el = $ "#links"
48   B4.Views.NewLinkForm.prototype.el = $ "#new_link"