Fixed table content group by.
This commit is contained in:
parent
4d7f07c400
commit
cff7cd57bd
1 changed files with 36 additions and 36 deletions
|
@ -128,42 +128,6 @@ class App.ControllerTable extends App.Controller
|
||||||
explanation: @explanation
|
explanation: @explanation
|
||||||
return $(table)
|
return $(table)
|
||||||
|
|
||||||
# group by
|
|
||||||
if @groupBy
|
|
||||||
|
|
||||||
# remove group by attribute from header
|
|
||||||
overview = _.filter(
|
|
||||||
overview
|
|
||||||
(item) =>
|
|
||||||
return item if item isnt @groupBy
|
|
||||||
return
|
|
||||||
)
|
|
||||||
|
|
||||||
# get new order
|
|
||||||
groupObjects = _.groupBy(
|
|
||||||
@objects
|
|
||||||
(item) =>
|
|
||||||
return '' if !item[@groupBy]
|
|
||||||
return item[@groupBy].displayName() if item[@groupBy].displayName
|
|
||||||
item[@groupBy]
|
|
||||||
)
|
|
||||||
groupOrder = []
|
|
||||||
for group, value of groupObjects
|
|
||||||
groupOrder.push group
|
|
||||||
|
|
||||||
# sort new groups
|
|
||||||
groupOrder = _.sortBy(
|
|
||||||
groupOrder
|
|
||||||
(item) ->
|
|
||||||
item
|
|
||||||
)
|
|
||||||
|
|
||||||
# create new data array
|
|
||||||
@objects = []
|
|
||||||
for group in groupOrder
|
|
||||||
@objects = @objects.concat groupObjects[group]
|
|
||||||
groupObjects[group] = [] # release old array
|
|
||||||
|
|
||||||
# get header data
|
# get header data
|
||||||
headers = []
|
headers = []
|
||||||
for item in overview
|
for item in overview
|
||||||
|
@ -221,6 +185,42 @@ class App.ControllerTable extends App.Controller
|
||||||
|
|
||||||
headers = @adjustHeaderWidths headers
|
headers = @adjustHeaderWidths headers
|
||||||
|
|
||||||
|
# group by
|
||||||
|
if @groupBy
|
||||||
|
|
||||||
|
# remove group by attribute from header
|
||||||
|
overview = _.filter(
|
||||||
|
overview
|
||||||
|
(item) =>
|
||||||
|
return item if item isnt @groupBy
|
||||||
|
return
|
||||||
|
)
|
||||||
|
|
||||||
|
# get new order
|
||||||
|
groupObjects = _.groupBy(
|
||||||
|
@objects
|
||||||
|
(item) =>
|
||||||
|
return '' if !item[@groupBy]
|
||||||
|
return item[@groupBy].displayName() if item[@groupBy].displayName
|
||||||
|
item[@groupBy]
|
||||||
|
)
|
||||||
|
groupOrder = []
|
||||||
|
for group, value of groupObjects
|
||||||
|
groupOrder.push group
|
||||||
|
|
||||||
|
# sort new groups
|
||||||
|
groupOrder = _.sortBy(
|
||||||
|
groupOrder
|
||||||
|
(item) ->
|
||||||
|
item
|
||||||
|
)
|
||||||
|
|
||||||
|
# create new data array
|
||||||
|
@objects = []
|
||||||
|
for group in groupOrder
|
||||||
|
@objects = @objects.concat groupObjects[group]
|
||||||
|
groupObjects[group] = [] # release old array
|
||||||
|
|
||||||
# get content
|
# get content
|
||||||
@log 'debug', 'table', 'header', headers, 'overview', 'objects', @objects
|
@log 'debug', 'table', 'header', headers, 'overview', 'objects', @objects
|
||||||
table = App.view('generic/table')(
|
table = App.view('generic/table')(
|
||||||
|
|
Loading…
Reference in a new issue