Added in place edit of customer.
This commit is contained in:
parent
038570fa20
commit
7a9cf505d6
4 changed files with 28 additions and 12 deletions
|
@ -422,7 +422,7 @@ class App.ControllerModal extends App.Controller
|
||||||
# @callback.success = options.success
|
# @callback.success = options.success
|
||||||
# if options.error
|
# if options.error
|
||||||
# @callback.error = options.error
|
# @callback.error = options.error
|
||||||
|
|
||||||
super(options)
|
super(options)
|
||||||
|
|
||||||
modalShow: (params) =>
|
modalShow: (params) =>
|
||||||
|
@ -443,7 +443,7 @@ class App.ControllerModal extends App.Controller
|
||||||
# navigate back
|
# navigate back
|
||||||
if params && params.navigateBack
|
if params && params.navigateBack
|
||||||
window.history.back()
|
window.history.back()
|
||||||
|
|
||||||
# remove modal from dom
|
# remove modal from dom
|
||||||
$('.modal').remove();
|
$('.modal').remove();
|
||||||
)
|
)
|
||||||
|
@ -452,7 +452,7 @@ class App.ControllerModal extends App.Controller
|
||||||
if e
|
if e
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
@el.modal('hide')
|
@el.modal('hide')
|
||||||
|
|
||||||
submit: (e) =>
|
submit: (e) =>
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
@log 'You need to implement your own "submit" method!'
|
@log 'You need to implement your own "submit" method!'
|
||||||
|
|
|
@ -68,7 +68,7 @@ class App.ControllerGenericEdit extends App.ControllerModal
|
||||||
@render()
|
@render()
|
||||||
@genericObject.unbind 'refresh'
|
@genericObject.unbind 'refresh'
|
||||||
@genericObject.fetch( id: params.id)
|
@genericObject.fetch( id: params.id)
|
||||||
|
|
||||||
render: ->
|
render: ->
|
||||||
@html App.view('generic/admin/edit')( head: @pageData.object )
|
@html App.view('generic/admin/edit')( head: @pageData.object )
|
||||||
|
|
||||||
|
@ -76,6 +76,7 @@ class App.ControllerGenericEdit extends App.ControllerModal
|
||||||
el: @el.find('#object_edit'),
|
el: @el.find('#object_edit'),
|
||||||
model: @genericObject,
|
model: @genericObject,
|
||||||
params: @item,
|
params: @item,
|
||||||
|
required: @required,
|
||||||
autofocus: true,
|
autofocus: true,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -85,7 +86,7 @@ class App.ControllerGenericEdit extends App.ControllerModal
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
params = @formParam(e.target)
|
params = @formParam(e.target)
|
||||||
@item.load(params)
|
@item.load(params)
|
||||||
|
|
||||||
# validate
|
# validate
|
||||||
errors = @item.validate()
|
errors = @item.validate()
|
||||||
if errors
|
if errors
|
||||||
|
@ -97,6 +98,7 @@ class App.ControllerGenericEdit extends App.ControllerModal
|
||||||
# save object
|
# save object
|
||||||
@item.save(
|
@item.save(
|
||||||
success: =>
|
success: =>
|
||||||
|
@log 'lll', @callback(@item), @required
|
||||||
@modalHide()
|
@modalHide()
|
||||||
error: =>
|
error: =>
|
||||||
@log 'errors'
|
@log 'errors'
|
||||||
|
|
|
@ -2,7 +2,8 @@ $ = jQuery.sub()
|
||||||
|
|
||||||
class App.UserInfo extends App.Controller
|
class App.UserInfo extends App.Controller
|
||||||
events:
|
events:
|
||||||
'focusout [data-type=edit]': 'update',
|
'focusout [data-type=update]': 'update',
|
||||||
|
'click [data-type=edit]': 'edit'
|
||||||
|
|
||||||
constructor: ->
|
constructor: ->
|
||||||
super
|
super
|
||||||
|
@ -28,11 +29,24 @@ class App.UserInfo extends App.Controller
|
||||||
user_id: user.id,
|
user_id: user.id,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# update changes
|
||||||
update: (e) =>
|
update: (e) =>
|
||||||
|
note = $(e.target).parent().find('[data-type=update]').val()
|
||||||
# update changes
|
|
||||||
note = $(e.target).parent().find('[data-type=edit]').val()
|
|
||||||
user = App.Collection.find( 'User', @user_id )
|
user = App.Collection.find( 'User', @user_id )
|
||||||
if user.note isnt note
|
if user.note isnt note
|
||||||
user.updateAttributes( note: note )
|
user.updateAttributes( note: note )
|
||||||
@log 'update', e, note, user
|
@log 'update', e, note, user
|
||||||
|
|
||||||
|
edit: (e) =>
|
||||||
|
e.preventDefault()
|
||||||
|
new App.ControllerGenericEdit(
|
||||||
|
id: @user_id,
|
||||||
|
genericObject: App.User,
|
||||||
|
required: 'quick',
|
||||||
|
pageData: {
|
||||||
|
title: 'Users',
|
||||||
|
object: 'User',
|
||||||
|
objects: 'Users',
|
||||||
|
},
|
||||||
|
callback: @render
|
||||||
|
)
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<h3><%- T('Customer') %></h3>
|
<h3><%- T('Customer') %> <small><a href="#" data-type="edit" class="icon-edit"></a></small></h3>
|
||||||
<% if @user.image: %>
|
<% if @user.image: %>
|
||||||
<img class="thumbnail" src="<%- @user.image %>" alt="">
|
<img class="thumbnail" src="<%- @user.image %>" alt="">
|
||||||
<% end %>
|
<% end %>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="customer-info" title="<%- Ti('Name') %>"><%= @user['realname'] %></div>
|
<div class="customer-info" title="<%- Ti('Name') %>"><%= @user.displayName() %></div>
|
||||||
</div>
|
</div>
|
||||||
<% for row in @data: %>
|
<% for row in @data: %>
|
||||||
<% if @user[row.name] || row.name is 'note': %>
|
<% if @user[row.name] || row.name is 'note': %>
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
<% else: %>
|
<% else: %>
|
||||||
<div class="customer-info" title="<%- Ti(row.display) %>">
|
<div class="customer-info" title="<%- Ti(row.display) %>">
|
||||||
<strong><%- T(row.display) %></strong><br/>
|
<strong><%- T(row.display) %></strong><br/>
|
||||||
<textarea class="customer-info" rows="3" name="<%= row.name %>" data-type=edit><%= @user[row.name] %></textarea>
|
<textarea class="customer-info" rows="3" name="<%= row.name %>" data-type="update"><%= @user[row.name] %></textarea>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in a new issue