Fixed order of ticket attributes after overview update.
This commit is contained in:
parent
a8706c02ee
commit
1c9105b3f1
|
@ -523,11 +523,11 @@ class App.OverviewSettings extends App.ControllerModal
|
||||||
@configure_attributes_article = []
|
@configure_attributes_article = []
|
||||||
if @view_mode is 'd'
|
if @view_mode is 'd'
|
||||||
@configure_attributes_article.push({
|
@configure_attributes_article.push({
|
||||||
name: 'view::per_page',
|
name: 'view::per_page'
|
||||||
display: 'Items per page',
|
display: 'Items per page'
|
||||||
tag: 'select',
|
tag: 'select'
|
||||||
multiple: false,
|
multiple: false
|
||||||
null: false,
|
null: false
|
||||||
default: @overview.view.per_page
|
default: @overview.view.per_page
|
||||||
options: {
|
options: {
|
||||||
5: ' 5'
|
5: ' 5'
|
||||||
|
@ -536,8 +536,32 @@ class App.OverviewSettings extends App.ControllerModal
|
||||||
20: '20'
|
20: '20'
|
||||||
25: '25'
|
25: '25'
|
||||||
},
|
},
|
||||||
class: 'medium',
|
|
||||||
})
|
})
|
||||||
|
attributeOptions = {}
|
||||||
|
attributeOptionsArray = []
|
||||||
|
configure_attributes = App.Ticket.configure_attributes
|
||||||
|
for row, attribute of App.Ticket.attributesGet()
|
||||||
|
configure_attributes.push attribute
|
||||||
|
for row in configure_attributes
|
||||||
|
|
||||||
|
# ignore passwords
|
||||||
|
if row.type isnt 'password'
|
||||||
|
name = row.name
|
||||||
|
|
||||||
|
# get correct data name
|
||||||
|
if row.name.substr(row.name.length-4,4) is '_ids'
|
||||||
|
name = row.name.substr(0, row.name.length-4)
|
||||||
|
else if row.name.substr(row.name.length-3,3) is '_id'
|
||||||
|
name = row.name.substr(0, row.name.length-3)
|
||||||
|
|
||||||
|
if !attributeOptions[ name ]
|
||||||
|
attributeOptions[ name ] = row.display
|
||||||
|
attributeOptionsArray.push(
|
||||||
|
{
|
||||||
|
value: name
|
||||||
|
name: row.display
|
||||||
|
}
|
||||||
|
)
|
||||||
@configure_attributes_article.push({
|
@configure_attributes_article.push({
|
||||||
name: "view::#{@view_mode}"
|
name: "view::#{@view_mode}"
|
||||||
display: 'Attributes'
|
display: 'Attributes'
|
||||||
|
@ -545,77 +569,8 @@ class App.OverviewSettings extends App.ControllerModal
|
||||||
default: @overview.view[@view_mode]
|
default: @overview.view[@view_mode]
|
||||||
null: false
|
null: false
|
||||||
translate: true
|
translate: true
|
||||||
options: [
|
sortBy: null
|
||||||
{
|
options: attributeOptionsArray
|
||||||
value: 'number'
|
|
||||||
name: 'Number'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'title'
|
|
||||||
name: 'Title'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'customer'
|
|
||||||
name: 'Customer'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'organization'
|
|
||||||
name: 'Organization'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'state'
|
|
||||||
name: 'State'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'priority'
|
|
||||||
name: 'Priority'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'group'
|
|
||||||
name: 'Group'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'owner'
|
|
||||||
name: 'Owner'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'created_at'
|
|
||||||
name: 'Age'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'last_contact'
|
|
||||||
name: 'Last Contact Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'last_contact_agent'
|
|
||||||
name: 'Last Contact Agent Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'last_contact_customer'
|
|
||||||
name: 'Last Contact Customer Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'first_response'
|
|
||||||
name: 'First Response Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'close_time'
|
|
||||||
name: 'Close Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'escalation_time'
|
|
||||||
name: 'Escalation Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'pending_time'
|
|
||||||
name: 'Pending Reminder Time'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'article_count'
|
|
||||||
name: 'Article Count'
|
|
||||||
},
|
|
||||||
]
|
|
||||||
class: 'medium'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'order::by'
|
name: 'order::by'
|
||||||
|
@ -624,24 +579,8 @@ class App.OverviewSettings extends App.ControllerModal
|
||||||
default: @overview.order.by
|
default: @overview.order.by
|
||||||
null: false
|
null: false
|
||||||
translate: true
|
translate: true
|
||||||
options:
|
sortBy: null
|
||||||
number: 'Number'
|
options: attributeOptionsArray
|
||||||
title: 'Title'
|
|
||||||
customer: 'Customer'
|
|
||||||
organization: 'Organization'
|
|
||||||
state: 'State'
|
|
||||||
priority: 'Priority'
|
|
||||||
group: 'Group'
|
|
||||||
owner: 'Owner'
|
|
||||||
created_at: 'Age'
|
|
||||||
last_contact: 'Last Contact'
|
|
||||||
last_contact_agent: 'Last Contact Agent'
|
|
||||||
last_contact_customer: 'Last Contact Customer'
|
|
||||||
first_response: 'First Response'
|
|
||||||
close_time: 'Close Time'
|
|
||||||
escalation_time: 'Escalation'
|
|
||||||
article_count: 'Article Count'
|
|
||||||
class: 'medium'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'order::direction'
|
name: 'order::direction'
|
||||||
|
@ -653,7 +592,6 @@ class App.OverviewSettings extends App.ControllerModal
|
||||||
options:
|
options:
|
||||||
ASC: 'up'
|
ASC: 'up'
|
||||||
DESC: 'down'
|
DESC: 'down'
|
||||||
class: 'medium'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'group_by'
|
name: 'group_by'
|
||||||
|
@ -670,7 +608,6 @@ class App.OverviewSettings extends App.ControllerModal
|
||||||
priority: 'Priority'
|
priority: 'Priority'
|
||||||
group: 'Group'
|
group: 'Group'
|
||||||
owner: 'Owner'
|
owner: 'Owner'
|
||||||
class: 'medium'
|
|
||||||
})
|
})
|
||||||
|
|
||||||
@head = App.i18n.translateContent( 'Edit' ) + ': ' + App.i18n.translateContent( @overview.name )
|
@head = App.i18n.translateContent( 'Edit' ) + ': ' + App.i18n.translateContent( @overview.name )
|
||||||
|
|
|
@ -4,12 +4,13 @@ class App.Ticket extends App.Model
|
||||||
@url: @apiPath + '/tickets'
|
@url: @apiPath + '/tickets'
|
||||||
@configure_attributes = [
|
@configure_attributes = [
|
||||||
{ name: 'number', display: '#', tag: 'input', type: 'text', limit: 100, null: true, read_only: true, style: 'width: 68px' },
|
{ name: 'number', display: '#', tag: 'input', type: 'text', limit: 100, null: true, read_only: true, style: 'width: 68px' },
|
||||||
|
{ name: 'title', display: 'Title', tag: 'input', type: 'text', limit: 100, null: false, parentClass: 'noTruncate' },
|
||||||
{ name: 'customer_id', display: 'Customer', tag: 'input', type: 'text', limit: 100, null: false, autocapitalize: false, relation: 'User' },
|
{ name: 'customer_id', display: 'Customer', tag: 'input', type: 'text', limit: 100, null: false, autocapitalize: false, relation: 'User' },
|
||||||
{ name: 'organization_id', display: 'Organization', tag: 'select', relation: 'Organization', tagreadonly: 1 },
|
{ name: 'organization_id', display: 'Organization', tag: 'select', relation: 'Organization', tagreadonly: 1 },
|
||||||
{ name: 'group_id', display: 'Group', tag: 'select', multiple: false, limit: 100, null: false, relation: 'Group', style: 'width: 10%', edit: true },
|
{ name: 'group_id', display: 'Group', tag: 'select', multiple: false, limit: 100, null: false, relation: 'Group', style: 'width: 10%', edit: true },
|
||||||
{ name: 'owner_id', display: 'Owner', tag: 'select', multiple: false, limit: 100, null: true, relation: 'User', style: 'width: 12%', edit: true },
|
{ name: 'owner_id', display: 'Owner', tag: 'select', multiple: false, limit: 100, null: true, relation: 'User', style: 'width: 12%', edit: true },
|
||||||
{ name: 'title', display: 'Title', tag: 'input', type: 'text', limit: 100, null: false, parentClass: 'noTruncate' },
|
|
||||||
{ name: 'state_id', display: 'State', tag: 'select', multiple: false, null: false, relation: 'TicketState', default: 'new', style: 'width: 12%', edit: true, customer: true, },
|
{ name: 'state_id', display: 'State', tag: 'select', multiple: false, null: false, relation: 'TicketState', default: 'new', style: 'width: 12%', edit: true, customer: true, },
|
||||||
|
{ name: 'pending_time', display: 'Pending Time', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
||||||
{ name: 'priority_id', display: 'Priority', tag: 'select', multiple: false, null: false, relation: 'TicketPriority', default: '2 normal', style: 'width: 12%', edit: true, customer: true, },
|
{ name: 'priority_id', display: 'Priority', tag: 'select', multiple: false, null: false, relation: 'TicketPriority', default: '2 normal', style: 'width: 12%', edit: true, customer: true, },
|
||||||
{ name: 'article_count', display: 'Article#', style: 'width: 12%' },
|
{ name: 'article_count', display: 'Article#', style: 'width: 12%' },
|
||||||
{ name: 'escalation_time', display: 'Escalation', tag: 'datetime', null: true, style: 'width: 12%', class: 'escalation', parentClass: 'noTruncate' },
|
{ name: 'escalation_time', display: 'Escalation', tag: 'datetime', null: true, style: 'width: 12%', class: 'escalation', parentClass: 'noTruncate' },
|
||||||
|
@ -18,7 +19,6 @@ class App.Ticket extends App.Model
|
||||||
{ name: 'last_contact_customer', display: 'Last contact (Customer)', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
{ name: 'last_contact_customer', display: 'Last contact (Customer)', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
||||||
{ name: 'first_response', display: 'First response', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
{ name: 'first_response', display: 'First response', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
||||||
{ name: 'close_time', display: 'Close time', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
{ name: 'close_time', display: 'Close time', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
||||||
{ name: 'pending_time', display: 'Pending Time', tag: 'datetime', null: true, style: 'width: 12%', parentClass: 'noTruncate' },
|
|
||||||
{ name: 'created_by_id', display: 'Created by', relation: 'User', readonly: 1 },
|
{ name: 'created_by_id', display: 'Created by', relation: 'User', readonly: 1 },
|
||||||
{ name: 'created_at', display: 'Created at', tag: 'datetime', style: 'width: 120px', readonly: 1, parentClass: 'noTruncate' },
|
{ name: 'created_at', display: 'Created at', tag: 'datetime', style: 'width: 120px', readonly: 1, parentClass: 'noTruncate' },
|
||||||
{ name: 'updated_by_id', display: 'Updated by', relation: 'User', readonly: 1 },
|
{ name: 'updated_by_id', display: 'Updated by', relation: 'User', readonly: 1 },
|
||||||
|
|
Loading…
Reference in a new issue