Moved show additional ticket attributes to bottom to middle in create screens.

This commit is contained in:
Martin Edenhofer 2017-01-13 19:55:12 +01:00
parent 082f8621da
commit 6f99e65361
4 changed files with 45 additions and 13 deletions

View file

@ -48,14 +48,14 @@ class App.UiElement.object_manager_attribute extends App.UiElement.ApplicationUi
objects = objects =
Ticket: Ticket:
Customer: Customer:
create_bottom: create_middle:
shown: true shown: true
required: false required: false
edit: edit:
shown: true shown: true
required: false required: false
Agent: Agent:
create_bottom: create_middle:
shown: true shown: true
required: false required: false
edit: edit:

View file

@ -83,7 +83,7 @@ class Items extends App.ControllerSubContent
edit: (e) => edit: (e) =>
e.preventDefault() e.preventDefault()
id = $( e.target ).closest('tr').data('id') id = $(e.target).closest('tr').data('id')
new Edit( new Edit(
pageData: pageData:
head: @object head: @object
@ -135,15 +135,21 @@ class New extends App.ControllerGenericNew
onSubmit: (e) => onSubmit: (e) =>
params = @formParam(e.target) params = @formParam(e.target)
# show attributes for create_middle in two column style
if params.screens && params.screens.create_middle
for role, value of params.screens.create_middle
value.item_class = 'column'
params.object = @pageData.head params.object = @pageData.head
object = new App[ @genericObject ] object = new App[@genericObject]
object.load(params) object.load(params)
# validate # validate
errors = object.validate() errors = object.validate()
if errors if errors
@log 'error', errors @log 'error', errors
@formValidate( form: e.target, errors: errors ) @formValidate(form: e.target, errors: errors)
return false return false
# disable form # disable form
@ -154,7 +160,7 @@ class New extends App.ControllerGenericNew
object.save( object.save(
done: -> done: ->
if ui.callback if ui.callback
item = App[ ui.genericObject ].fullLocal(@id) item = App[ui.genericObject].fullLocal(@id)
ui.callback(item) ui.callback(item)
ui.close() ui.close()
@ -167,11 +173,11 @@ class New extends App.ControllerGenericNew
class Edit extends App.ControllerGenericEdit class Edit extends App.ControllerGenericEdit
content: => content: =>
@item = App[ @genericObject ].find( @id ) @item = App[@genericObject].find(@id)
@head = @pageData.head || @pageData.object @head = @pageData.head || @pageData.object
# set disabled attributes # set disabled attributes
configure_attributes = clone(App[ @genericObject ].configure_attributes) configure_attributes = clone(App[@genericObject].configure_attributes)
for attribute in configure_attributes for attribute in configure_attributes
if attribute.name is 'name' if attribute.name is 'name'
attribute.disabled = true attribute.disabled = true
@ -189,6 +195,12 @@ class Edit extends App.ControllerGenericEdit
onSubmit: (e) => onSubmit: (e) =>
params = @formParam(e.target) params = @formParam(e.target)
# show attributes for create_middle in two column style
if params.screens && params.screens.create_middle
for role, value of params.screens.create_middle
value.item_class = 'column'
params.object = @pageData.head params.object = @pageData.head
@item.load(params) @item.load(params)
@ -196,7 +208,7 @@ class Edit extends App.ControllerGenericEdit
errors = @item.validate() errors = @item.validate()
if errors if errors
@log 'error', errors @log 'error', errors
@formValidate( form: e.target, errors: errors ) @formValidate(form: e.target, errors: errors)
return false return false
# disable form # disable form
@ -207,7 +219,7 @@ class Edit extends App.ControllerGenericEdit
@item.save( @item.save(
done: -> done: ->
if ui.callback if ui.callback
item = App[ ui.genericObject ].fullLocal(@id) item = App[ui.genericObject].fullLocal(@id)
ui.callback(item) ui.callback(item)
ui.close() ui.close()

View file

@ -0,0 +1,21 @@
class UpdateObjectManagerAttributeCreateMiddle < ActiveRecord::Migration
def up
# return if it's a new setup
return if !Setting.find_by(name: 'system_init_done')
ObjectManager::Attribute.all.each { |attribute|
next if attribute.name == 'tags'
next if !attribute.screens
next if !attribute.screens['create_bottom']
attribute.screens['create_middle'] = attribute.screens['create_bottom']
attribute.screens.delete('create_bottom')
attribute.save!
}
attribute = ObjectManager::Attribute.find_by(name: 'priority_id')
attribute.data_option['nulloption'] = false
attribute.save!
Cache.clear
end
end

View file

@ -3710,7 +3710,7 @@ ObjectManager::Attribute.add(
data_type: 'select', data_type: 'select',
data_option: { data_option: {
relation: 'TicketPriority', relation: 'TicketPriority',
nulloption: true, nulloption: false,
multiple: false, multiple: false,
null: false, null: false,
default: 2, default: 2,
@ -3728,7 +3728,6 @@ ObjectManager::Attribute.add(
edit: { edit: {
Agent: { Agent: {
null: false, null: false,
nulloption: false,
}, },
}, },
}, },
@ -5296,7 +5295,7 @@ Trigger.create_or_update(
'notification.email' => { 'notification.email' => {
'body' => '<div>Your request <b>(#{config.ticket_hook}#{ticket.number})</b> has been received and will be reviewed by our support staff.</div> 'body' => '<div>Your request <b>(#{config.ticket_hook}#{ticket.number})</b> has been received and will be reviewed by our support staff.</div>
<br/> <br/>
<div>To provide additional information, please reply to this email or click on the following link: <div>To provide additional information, please reply to this email or click on the following link (for initial login, please request a new password):
<a href="#{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}">#{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}</a> <a href="#{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}">#{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}</a>
</div> </div>
<br/> <br/>