@@ -142,23 +142,23 @@ DataController.prototype.setDrillThroughHandler = function (handler) {
142142 */
143143DataController . prototype . resetDimensionProps = function ( ) {
144144
145- var data , columnProps ;
145+ var data , columnProps , rowProps ;
146146
147147 if ( ! ( data = this . _dataStack [ this . _dataStack . length - 1 ] . data ) ) {
148148 console . error ( "Unable to get dimension props for given data set." ) ;
149149 return ;
150150 }
151151
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
154154
155155 var cloneObj = function ( obj ) {
156156 var i , newObj = { } ;
157157 for ( i in obj ) newObj [ i ] = obj [ i ] ;
158158 return newObj ;
159159 } ;
160160
161- var parse = function ( obj , props ) {
161+ var parse = function ( dimProps , obj , props ) {
162162 var tObj , clonedProps , i ;
163163 if ( obj [ "children" ] && obj [ "children" ] . length > 0 ) {
164164 for ( i in obj . children ) {
@@ -172,16 +172,18 @@ DataController.prototype.resetDimensionProps = function () {
172172 if ( tObj [ "total" ] ) clonedProps [ "summary" ]
173173 = ( tObj [ "total" ] || "" ) . toLowerCase ( ) . replace ( / : .* / , "" ) ; // what is "max:Days"?
174174 if ( tObj [ "type" ] ) clonedProps [ "type" ] = tObj [ "type" ] ;
175- parse ( tObj , clonedProps ) ;
175+ parse ( dimProps , tObj , clonedProps ) ;
176176 }
177177 } else {
178- columnProps . push ( cloneObj ( props ) ) ;
178+ dimProps . push ( cloneObj ( props ) ) ;
179179 }
180180 } ;
181181
182- parse ( { children : data . dimensions [ 0 ] } , { } ) ;
182+ parse ( columnProps , { children : data . dimensions [ 0 ] } , { } ) ;
183+ parse ( rowProps , { children : data . dimensions [ 1 ] } , { } ) ;
183184
184185 data . columnProps = columnProps ;
186+ data . rowProps = rowProps ;
185187
186188} ;
187189
@@ -474,12 +476,15 @@ DataController.prototype.resetRawData = function () {
474476 rowLevels = _ . controller . getPivotProperty ( [ "rowLevels" ] ) ,
475477 formatColumn = {
476478 // "<spec>": { style: "<style>" }
479+ } ,
480+ formatRow = {
481+ // "<spec>": { style: "<style>" } // unused
477482 } ;
478- var fillLevels = function ( obj ) {
483+ var fillLevels = function ( temp , obj ) {
479484 if ( typeof obj === "undefined" ) return ;
480485 for ( var i in obj [ "childLevels" ] ) {
481486 if ( obj [ "childLevels" ] [ i ] && obj [ "childLevels" ] [ i ] [ "spec" ] ) {
482- formatColumn [ ( obj [ "childLevels" ] [ i ] [ "spec" ] || "" ) . replace ( / [ ^ . ] * $ / , "" ) ] = {
487+ temp [ ( obj [ "childLevels" ] [ i ] [ "spec" ] || "" ) . replace ( / [ ^ . ] * $ / , "" ) ] = {
483488 style : obj [ "childLevels" ] [ i ] [ "levelStyle" ] || "" ,
484489 headStyle : obj [ "childLevels" ] [ i ] [ "levelHeaderStyle" ] || ""
485490 } ;
@@ -488,8 +493,8 @@ DataController.prototype.resetRawData = function () {
488493 }
489494 } ;
490495 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 ] ] } ) ;
493498 }
494499 for ( y = 0 ; y < rawData . length ; y ++ ) {
495500 for ( x = 0 ; x < xEnd ; x ++ ) {
@@ -569,6 +574,9 @@ DataController.prototype.resetRawData = function () {
569574 this . SUMMARY_SHOWN = false ;
570575 this . _dataStack [ this . _dataStack . length - 1 ] . SUMMARY_SHOWN = false ;
571576
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+
572580 /**
573581 * @param {number } columnIndex
574582 * @returns {Function }
0 commit comments