@@ -142,23 +142,23 @@ DataController.prototype.setDrillThroughHandler = function (handler) {
142
142
*/
143
143
DataController . prototype . resetDimensionProps = function ( ) {
144
144
145
- var data , columnProps ;
145
+ var data , columnProps , rowProps ;
146
146
147
147
if ( ! ( data = this . _dataStack [ this . _dataStack . length - 1 ] . data ) ) {
148
148
console . error ( "Unable to get dimension props for given data set." ) ;
149
149
return ;
150
150
}
151
151
152
- columnProps = new Array ( data . info . leftHeaderColumnsNumber || 0 ) ; // fill left headers as empty
153
- for ( var i = 0 ; i < columnProps . length ; i ++ ) { columnProps [ i ] = { } ; }
152
+ columnProps = [ ] ; // fill left headers as empty
153
+ rowProps = [ ] ; // fill left headers as empty
154
154
155
155
var cloneObj = function ( obj ) {
156
156
var i , newObj = { } ;
157
157
for ( i in obj ) newObj [ i ] = obj [ i ] ;
158
158
return newObj ;
159
159
} ;
160
160
161
- var parse = function ( obj , props ) {
161
+ var parse = function ( dimProps , obj , props ) {
162
162
var tObj , clonedProps , i ;
163
163
if ( obj [ "children" ] && obj [ "children" ] . length > 0 ) {
164
164
for ( i in obj . children ) {
@@ -172,16 +172,18 @@ DataController.prototype.resetDimensionProps = function () {
172
172
if ( tObj [ "total" ] ) clonedProps [ "summary" ]
173
173
= ( tObj [ "total" ] || "" ) . toLowerCase ( ) . replace ( / : .* / , "" ) ; // what is "max:Days"?
174
174
if ( tObj [ "type" ] ) clonedProps [ "type" ] = tObj [ "type" ] ;
175
- parse ( tObj , clonedProps ) ;
175
+ parse ( dimProps , tObj , clonedProps ) ;
176
176
}
177
177
} else {
178
- columnProps . push ( cloneObj ( props ) ) ;
178
+ dimProps . push ( cloneObj ( props ) ) ;
179
179
}
180
180
} ;
181
181
182
- parse ( { children : data . dimensions [ 0 ] } , { } ) ;
182
+ parse ( columnProps , { children : data . dimensions [ 0 ] } , { } ) ;
183
+ parse ( rowProps , { children : data . dimensions [ 1 ] } , { } ) ;
183
184
184
185
data . columnProps = columnProps ;
186
+ data . rowProps = rowProps ;
185
187
186
188
} ;
187
189
@@ -474,12 +476,15 @@ DataController.prototype.resetRawData = function () {
474
476
rowLevels = _ . controller . getPivotProperty ( [ "rowLevels" ] ) ,
475
477
formatColumn = {
476
478
// "<spec>": { style: "<style>" }
479
+ } ,
480
+ formatRow = {
481
+ // "<spec>": { style: "<style>" } // unused
477
482
} ;
478
- var fillLevels = function ( obj ) {
483
+ var fillLevels = function ( temp , obj ) {
479
484
if ( typeof obj === "undefined" ) return ;
480
485
for ( var i in obj [ "childLevels" ] ) {
481
486
if ( obj [ "childLevels" ] [ i ] && obj [ "childLevels" ] [ i ] [ "spec" ] ) {
482
- formatColumn [ ( obj [ "childLevels" ] [ i ] [ "spec" ] || "" ) . replace ( / [ ^ . ] * $ / , "" ) ] = {
487
+ temp [ ( obj [ "childLevels" ] [ i ] [ "spec" ] || "" ) . replace ( / [ ^ . ] * $ / , "" ) ] = {
483
488
style : obj [ "childLevels" ] [ i ] [ "levelStyle" ] || "" ,
484
489
headStyle : obj [ "childLevels" ] [ i ] [ "levelHeaderStyle" ] || ""
485
490
} ;
@@ -488,8 +493,8 @@ DataController.prototype.resetRawData = function () {
488
493
}
489
494
} ;
490
495
for ( i in colLevels ) {
491
- fillLevels ( { childLevels : [ colLevels [ i ] ] } ) ;
492
- fillLevels ( { childLevels : [ rowLevels [ i ] ] } ) ;
496
+ fillLevels ( formatColumn , { childLevels : [ colLevels [ i ] ] } ) ;
497
+ fillLevels ( formatRow , { childLevels : [ rowLevels [ i ] ] } ) ;
493
498
}
494
499
for ( y = 0 ; y < rawData . length ; y ++ ) {
495
500
for ( x = 0 ; x < xEnd ; x ++ ) {
@@ -569,6 +574,9 @@ DataController.prototype.resetRawData = function () {
569
574
this . SUMMARY_SHOWN = false ;
570
575
this . _dataStack [ this . _dataStack . length - 1 ] . SUMMARY_SHOWN = false ;
571
576
577
+ for ( i = 0 ; i < data . info . leftHeaderColumnsNumber ; i ++ ) { data . columnProps . unshift ( { } ) ; }
578
+ for ( i = 0 ; i < data . info . topHeaderRowsNumber ; i ++ ) { data . rowProps . unshift ( { } ) ; }
579
+
572
580
/**
573
581
* @param {number } columnIndex
574
582
* @returns {Function }
0 commit comments