Commit 7c66024c

mo khan <mo@mokhan.ca>
2014-07-01 03:36:31
move progress bar to thumbnail and out of the modal.
1 parent d733008
Changed files (5)
app/assets/javascripts/backbone/templates/cakes/thumbnail.jst.ejs
@@ -1,5 +1,11 @@
 <li class="span2">
-<a href="#/cakes/<%= cake_id %>/photos/<%= id %>">
-  <img src="<%= thumb_url %>" class="thumbnail" />
-</a>
+  <% if (uploading()) { %>
+    <div class="progress progress-striped active">
+      <div class="bar" style="width: <%= percentComplete %>%;"></div>
+    </div>
+  <% } else { %>
+    <a href="#/cakes/<%= cake_id %>/photos/<%= id %>">
+      <img src="<%= thumb_url %>" class="thumbnail" />
+    </a>
+  <% } %>
 </li>
app/assets/javascripts/backbone/templates/photos/new-modal.jst.ejs
@@ -9,11 +9,6 @@
     </span>
     <img id="preview-image" src="#" alt="your image" class="hide" />
   </form>
-  <% if (uploading()) { %>
-  <div class="progress progress-striped active">
-    <div class="bar" style="width: <%= percentComplete %>%;"></div>
-  </div>
-  <% } %>
 </div>
 <div class="modal-footer">
   <a href="#" class="btn" data-dismiss="modal">Close</a>
app/assets/javascripts/backbone/views/cakes/cake_view.js.coffee
@@ -2,3 +2,4 @@ CakeSide.Views.Cakes ||= {}
 
 class CakeSide.Views.Cakes.CakeView extends Marionette.ItemView
   template: JST["backbone/templates/cakes/cake"]
+
app/assets/javascripts/backbone/views/cakes/thumbnail_view.js.coffee
@@ -4,3 +4,8 @@ class CakeSide.Views.Cakes.ThumbnailView extends Marionette.ItemView
   template: JST['backbone/templates/cakes/thumbnail']
   modelEvents:
     'sync': 'render'
+    'change:percentComplete': 'render'
+
+  templateHelpers:
+    uploading: ->
+      typeof(@percentComplete) != "undefined"
app/assets/javascripts/backbone/views/photos/new_modal_view.js.coffee
@@ -12,11 +12,6 @@ class CakeSide.Views.Photos.NewModalView extends Marionette.ItemView
     "click #upload-photo-button": "save"
     "change #photo-attachment": "displayPreview"
 
-  templateHelpers:
-    uploading: ->
-      typeof(@percentComplete) != "undefined"
-
-
   constructor: (options) ->
     super(options)
     @collection = CakeSide.Application.request('PhotosRepository', options.cake.id)
@@ -26,8 +21,8 @@ class CakeSide.Views.Photos.NewModalView extends Marionette.ItemView
   save: (e) ->
     e.preventDefault()
     e.stopPropagation()
-    @ui.upload_button.attr('disabled', 'disabled')
-    @collection.create(@model, success: @photoUploaded)
+    @closeDialog()
+    @collection.create(@model)
 
   displayPreview: (event) ->
     input = event.currentTarget
@@ -44,9 +39,7 @@ class CakeSide.Views.Photos.NewModalView extends Marionette.ItemView
 
   displayProgress: (progress) ->
     percentCompleted = progress*100
-    CakeSide.Application.vent.trigger('uploading', percentCompleted)
     @model.set('percentComplete', percentCompleted)
-    @render()
 
-  photoUploaded: (photo) ->
+  closeDialog: (photo) ->
     $('#modal').modal('hide')