app/assets/javascripts/loft/asset-item.coffee in loft-0.2.9 vs app/assets/javascripts/loft/asset-item.coffee in loft-0.3.0

- old
+ new

@@ -1,42 +1,33 @@ # ----------------------------------------------------------------------------- # Author: Alexander Kravets <alex@slatestudio.com>, # Slate Studio (http://www.slatestudio.com) -# -# Coding Guide: -# https://github.com/thoughtbot/guides/tree/master/style/coffeescript # ----------------------------------------------------------------------------- - -# ----------------------------------------------------------------------------- # Loft Asset Item # ----------------------------------------------------------------------------- class @LoftAssetItem extends Item constructor: (@module, @path, @object, @config) -> @$el =$ "<div class='item asset asset-#{ @object.type }' data-id='#{ @object._id }'></div>" @render() + # PRIVATE =================================================================== - # 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 @@ -44,13 +35,12 @@ @config.arrayStore.update @object._id, { '[name]': name }, onSuccess: (object) => onError: (errors) => # process errors + # PUBLIC ==================================================================== - # PUBLIC ================================================ - render: -> @$el.html('').removeClass('item-folder has-subtitle has-thumbnail') @_render_title() @_render_subtitle() @@ -70,20 +60,15 @@ @$checkbox =$ "<div class='asset-checkbox'></div>" @$checkboxInput =$ "<input type='checkbox' />" @$checkbox.append(@$checkboxInput) @$el.prepend(@$checkbox) - # input for assets name 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) - - - -