modules next: remove module items
test plan: 1. click the cog 2. pick “remove” - it should fade out - it should not show up after refresh Change-Id: Ib8c9beaf71665dd321efaea3a69069813ca96b1d Reviewed-on: https://gerrit.instructure.com/38466 Reviewed-by: Jason Madsen <jmadsen@instructure.com> Tested-by: Jenkins <jenkins@instructure.com> Product-Review: Ryan Florence <ryanf@instructure.com> QA-Review: Ryan Florence <ryanf@instructure.com>
This commit is contained in:
parent
142a3510ab
commit
6323ea51c3
|
@ -15,7 +15,7 @@ define [
|
|||
# let the .sortable-handle draggable bubble up to here
|
||||
draggable: 'false'
|
||||
|
||||
tagName: 'li'
|
||||
tagName: 'div'
|
||||
|
||||
classNames: ['context_module_item']
|
||||
|
||||
|
|
|
@ -2,9 +2,9 @@ define [
|
|||
'ember'
|
||||
'ic-lazy-list'
|
||||
'../models/item'
|
||||
], (Ember, LazyListComponent, Item) ->
|
||||
], (Ember, LazyList, Item) ->
|
||||
|
||||
ModuleItemComponent = LazyListComponent.extend
|
||||
ModuleItemComponent = LazyList.IcLazyListComponent.extend
|
||||
|
||||
normalize: ({response}) ->
|
||||
(Item.createRecord(item) for item in response)
|
||||
|
|
|
@ -2,9 +2,9 @@ define [
|
|||
'ember'
|
||||
'ic-lazy-list'
|
||||
'../models/module'
|
||||
], (Ember, LazyListComponent, Module) ->
|
||||
], (Ember, LazyList, Module) ->
|
||||
|
||||
ModuleListComponent = LazyListComponent.extend
|
||||
ModuleListComponent = LazyList.IcLazyListComponent.extend
|
||||
|
||||
href: "/api/v1/courses/#{ENV.course_id}/modules?include[]=items"
|
||||
|
||||
|
|
|
@ -7,6 +7,8 @@ define [
|
|||
|
||||
ItemController = Ember.ObjectController.extend
|
||||
|
||||
isDeleting: false
|
||||
|
||||
actions:
|
||||
|
||||
increaseIndent: ->
|
||||
|
@ -17,6 +19,12 @@ define [
|
|||
@decrementProperty('model.indent')
|
||||
store.syncItemById(@get('model.id'))
|
||||
|
||||
remove: ->
|
||||
@set 'isDeleting', yes #ma'am
|
||||
Ember.run.later =>
|
||||
store.removeItemById(@get('model.id'))
|
||||
, 351
|
||||
|
||||
indentClassName: (->
|
||||
"indent-#{@get('indent')}"
|
||||
).property('indent')
|
||||
|
|
|
@ -53,3 +53,13 @@ define [
|
|||
data: {module_item: item.serialize()}
|
||||
type: 'put'
|
||||
|
||||
removeItemById: (id) ->
|
||||
item = @find('item', id)
|
||||
module = @find('module', get(item, 'module_id'))
|
||||
get(module, 'items').removeObject(item)
|
||||
request
|
||||
url: "/api/v1/courses/#{@courseId}/modules/#{id}/items/#{get(item, 'id')}"
|
||||
type: 'delete'
|
||||
# TODO: handle error
|
||||
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
{{#ic-menu-item on-select="decreaseIndent"}}Decrease indent{{/ic-menu-item}}
|
||||
{{/if}}
|
||||
{{#ic-menu-item}}Edit{{/ic-menu-item}}
|
||||
{{#ic-menu-item}}Remove{{/ic-menu-item}}
|
||||
{{#ic-menu-item on-select="remove"}}Remove{{/ic-menu-item}}
|
||||
{{/ic-actions}}
|
||||
|
||||
</div>
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
define [
|
||||
'ember'
|
||||
], (Ember) ->
|
||||
|
||||
ModuleView = Ember.View.extend
|
||||
|
||||
tagName: 'li'
|
||||
|
||||
animateOnDestroy: (->
|
||||
return unless @get('controller.isDeleting')
|
||||
@$().slideToggle(350)
|
||||
).observes('controller.isDeleting')
|
||||
|
Loading…
Reference in New Issue