lib/assets/javascripts/transponder/presenter.coffee in transponder-0.1.5 vs lib/assets/javascripts/transponder/presenter.coffee in transponder-0.8.2
- old
+ new
@@ -1,25 +1,25 @@
class Transponder.Presenter
actions: ['new', 'index', 'show', 'update', 'edit', 'create', 'destroy']
params: {}
presenterName: null
- nameSpace: null
+ module: null
modelName: null
element: null
response: null
constructor: (options = {}) ->
options.presenterName = @presenterName unless options.presenterName
- options.nameSpace = @nameSpace unless options.nameSpace
+ options.module = @module unless options.module
options.actions = @actions unless options.actions
doc = $(document)
events = []
for action in options.actions
- events.push(Transponder.buildEvent(['ujs', options.nameSpace, options.presenterName, action]))
+ events.push(Transponder.buildEvent(['ujs', options.module, options.presenterName, action]))
doc.on(events.join(' '), @runAction)
elify: (event, response) ->
if @response.errors
if @response.id then "##{@modelName}_#{@response.id}" else "#new_#{@modelName}"
@@ -43,12 +43,16 @@
triggerEmpty: (eventName) ->
console.log "#{eventName} triggered! Override this action in your own presenter"
+ triggerEmptyError: (eventName) ->
+ console.log "Error #{eventName} triggered! Override this action in your own presenter"
+
errorOut: ->
- console.log "an error has occured!"
+ for key, value of @response.errors
+ @error[key](value)
index: ->
@triggerEmpty('Index')
show: ->
@triggerEmpty('Show')
@@ -59,6 +63,22 @@
update: ->
@triggerEmpty('Update')
create: ->
@triggerEmpty('Create')
destroy: ->
- @triggerEmpty('Destroy')
+ @triggerEmpty('Destroy')
+
+ error:
+ index: ->
+ @triggerEmptyError('Index')
+ show: ->
+ @triggerEmptyError('Show')
+ new: ->
+ @triggerEmptyError('New')
+ edit: ->
+ @triggerEmptyError('Edit')
+ update: ->
+ @triggerEmptyError('Update')
+ create: ->
+ @triggerEmptyError('Create')
+ destroy: ->
+ @triggerEmptyError('Destroy')
\ No newline at end of file