Sha256: 3429d45d2cc22103017b05aa0e0e7b8c5068a3ac0b1d8a74da0d320ead7a542b
Contents?: true
Size: 1.19 KB
Versions: 37
Compression:
Stored size: 1.19 KB
Contents
#= require ../shared/asset_picker_view Locomotive.Views.ThemeAssets ||= {} class Locomotive.Views.ThemeAssets.ImagePickerView extends Locomotive.Views.Shared.AssetPickerView events: 'click ul.list a': 'select_asset' initialize: -> @collection ||= new Locomotive.Models.ThemeAssetsCollection() super template: -> ich.theme_image_picker fetch_assets: -> @_reset() @collection.fetch data: content_type: 'image' success: () => @open() build_uploader: (el, link) -> link.bind 'click', (event) -> event.stopPropagation() & event.preventDefault() el.click() el.bind 'change', (event) => _.each event.target.files, (file) => asset = new Locomotive.Models.ThemeAsset(source: file) asset.save {}, headers: { 'X-Flash': true } success: (model) => @collection.add(model) error: => @shake() select_asset: (event) -> event.stopPropagation() & event.preventDefault() if @options.on_select @options.on_select($(event.target).html()) add_asset: (asset) -> @$('ul.list').append(ich.theme_asset(asset.toJSON())) @_refresh() _reset: -> @$('ul.list').empty()
Version data entries
37 entries across 37 versions & 2 rubygems