app/assets/javascripts/loft/asset-item.coffee in loft-0.1.2 vs app/assets/javascripts/loft/asset-item.coffee in loft-0.1.5
- old
+ new
@@ -9,14 +9,48 @@
# -----------------------------------------------------------------------------
# Loft Asset Item
# -----------------------------------------------------------------------------
class @LoftAssetItem extends Item
constructor: (@module, @path, @object, @config) ->
- @$el =$ "<div class='item asset asset-#{ @object.type }' data-id='#{ @object._id }' data-title=''></div>"
+ @$el =$ "<div class='item asset asset-#{ @object.type }' data-id='#{ @object._id }'></div>"
@render()
+ # PRIVATE ===============================================
+
+ _bind_name_input: ->
+ @$nameInput.on 'blur', (e) => @_update_name_if_changed()
+ @$nameInput.on 'keyup', (e) =>
+ if e.keyCode == 13 then $(e.target).blur()
+ if e.keyCode == 27 then @_cancel_name_change()
+
+
+ _edit_name: (e) ->
+ @$el.addClass('edit-name')
+ @$nameInput.focus().select()
+
+
+ _cancel_name_change: ->
+ @$el.removeClass('edit-name')
+ name = @$title.html()
+ @$nameInput.val(name)
+
+
+ _update_name_if_changed: ->
+ @$el.removeClass('edit-name')
+ name = @$nameInput.val()
+
+ if name == @$title.html() then return
+ @$title.html(name)
+
+ @config.arrayStore.update @object._id, { '[name]': name },
+ onSuccess: (object) =>
+ onError: (errors) => # process errors
+
+
+ # PUBLIC ================================================
+
render: ->
@$el.html('').removeClass('item-folder has-subtitle has-thumbnail')
@_render_title()
@_render_subtitle()
@@ -38,49 +72,18 @@
@$checkbox.append(@$checkboxInput)
@$el.prepend(@$checkbox)
# input for assets name
- name = @$el.attr('data-title')
+ name = @$title.text()
@$name =$ "<div class='asset-name'></div>"
@$nameInput =$ "<input type='text' value='#{ name }' />"
@$name.append @$nameInput
@$title.before @$name
@_bind_name_input()
# handler for asset name change on title click
@$title.on 'click', (e) => @_edit_name(e)
-
-
- _bind_name_input: ->
- @$nameInput.on 'blur', (e) => @_update_name_if_changed()
- @$nameInput.on 'keyup', (e) =>
- if e.keyCode == 13 then $(e.target).blur()
- if e.keyCode == 27 then @_cancel_name_change()
-
-
- _edit_name: (e) ->
- @$el.addClass('edit-name')
- @$nameInput.focus().select()
-
-
- _cancel_name_change: ->
- @$el.removeClass('edit-name')
- name = @$title.html()
- @$nameInput.val(name)
-
-
- _update_name_if_changed: ->
- @$el.removeClass('edit-name')
- name = @$nameInput.val()
-
- if name == @$title.html() then return
- @$title.html(name)
-
- @config.arrayStore.update @object._id, { '[name]': name },
- onSuccess: (object) =>
- onError: (errors) => # process errors
-