2016-10-12 01:50:47 -04:00

65 lines
2.0 KiB
CoffeeScript

# Add hooks used by many forms
AutoForm.addHooks [
'admin_insert',
'admin_update',
'adminNewUser',
'adminUpdateUser',
'adminSendResetPasswordEmail',
'adminChangePassword'],
beginSubmit: ->
$('.btn-primary').addClass('disabled')
endSubmit: ->
$('.btn-primary').removeClass('disabled')
onError: (formType, error)->
AdminDashboard.alertFailure error.message
AutoForm.hooks
admin_insert:
onSubmit: (insertDoc, updateDoc, currentDoc)->
hook = @
Meteor.call 'adminInsertDoc', insertDoc, Session.get('admin_collection_name'), (e,r)->
if e
hook.done(e)
else
adminCallback 'onInsert', [Session.get 'admin_collection_name', insertDoc, updateDoc, currentDoc], (collection) ->
hook.done null, collection
return false
onSuccess: (formType, collection)->
AdminDashboard.alertSuccess 'Successfully created'
Router.go "/admin/#{collection}"
admin_update:
onSubmit: (insertDoc, updateDoc, currentDoc)->
hook = @
Meteor.call 'adminUpdateDoc', updateDoc, Session.get('admin_collection_name'), Session.get('admin_id'), (e,r)->
if e
hook.done(e)
else
adminCallback 'onUpdate', [Session.get 'admin_collection_name', insertDoc, updateDoc, currentDoc], (collection) ->
hook.done null, collection
return false
onSuccess: (formType, collection)->
AdminDashboard.alertSuccess 'Successfully updated'
Router.go "/admin/#{collection}"
adminNewUser:
onSuccess: (formType, result)->
AdminDashboard.alertSuccess 'Created user'
Router.go '/admin/Users'
adminUpdateUser:
onSubmit: (insertDoc, updateDoc, currentDoc)->
Meteor.call 'adminUpdateUser', updateDoc, Session.get('admin_id'), @done
return false
onSuccess: (formType, result)->
AdminDashboard.alertSuccess 'Updated user'
Router.go '/admin/Users'
adminSendResetPasswordEmail:
onSuccess: (formType, result)->
AdminDashboard.alertSuccess 'Email sent'
adminChangePassword:
onSuccess: (operation, result, template)->
AdminDashboard.alertSuccess 'Password reset'