initial commit
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
collection_button_click = (target, options = {}) ->
|
||||
return if target.data('confirmation') and not confirm(target.data('confirmation'))
|
||||
action_name = target.data('action')
|
||||
[resource, scenario] = full_resource.split('/') if full_resource = target.data('resource')
|
||||
if not full_resource and target.attr('href') # direct collection_edit links
|
||||
url = "#{target.attr('href')}&reveal=yes"
|
||||
else
|
||||
request_params = options.request_params || target.data('requestParams')
|
||||
return unless request_params
|
||||
# important to make a copy of options.request_params, otherwize the ids will be persisted in there
|
||||
request_params = $.extend({}, request_params)
|
||||
|
||||
# See if multiselect ids is requested
|
||||
for k, v of request_params
|
||||
if v is 'selected_ids' # Implement multi select by inserting ids here
|
||||
selected_ids = Dunlop.selected_ids()
|
||||
return alert("Nothing selected") unless selected_ids.length
|
||||
request_params[k] = selected_ids.join('~')
|
||||
break
|
||||
|
||||
url_path ="collection_edit_#{resource}_#{scenario.pluralize()}_path"
|
||||
request_params['reveal'] = 'yes'
|
||||
return alert("The route #{url_path} does not exist") unless Routes[url_path]
|
||||
url = Routes[url_path](request_params)
|
||||
Dunlop.action_in_progress = 1
|
||||
$.get url, (result) ->
|
||||
$('#workflow-step-modal .content').html result
|
||||
$('#workflow-step-modal').foundation('reveal', 'open')
|
||||
Dunlop.setup $('#workflow-step-modal'), ->
|
||||
$('#workflow-step-modal .workflow-step-back-button').click (e) ->
|
||||
e.preventDefault()
|
||||
$('#workflow-step-modal').foundation('reveal', 'close')
|
||||
false
|
||||
false
|
||||
|
||||
Dunlop.register_setup 'collection-button', (target) ->
|
||||
# setup collection edit buttons
|
||||
target.find('.collection-edit').click (evt) ->
|
||||
evt.preventDefault()
|
||||
collection_button_click $(this)
|
||||
false
|
||||
|
||||
Reference in New Issue
Block a user