| @@ -61,28 +61,17 @@ | ||
| 61 | 61 | switch(v.page_type){ |
| 62 | 62 | case 'post': |
| 63 | 63 | // fall-through. |
| 64 | 64 | case 'library': |
| 65 | - // for smaller screens... | |
| 66 | - if(window.innerWidth < 1500){ | |
| 67 | - delete chart.settings['scrollX']; | |
| 68 | - delete chart.settings['scrollY']; | |
| 69 | - delete chart.settings['scrollY_int']; | |
| 70 | - $.extend( settings, { | |
| 65 | + // remove scrollY if its greater than what will fit in the box (along with the legend). | |
| 66 | + if(parseInt(chart.settings['scrollY_int']) > 180){ | |
| 67 | + chart.settings['scrollY_int']; | |
| 68 | + } | |
| 69 | + delete chart.settings['scrollX']; | |
| 70 | + $.extend( settings, { | |
| 71 | 71 | scrollX: 150, |
| 72 | - scrollY: (( chart.settings['responsive_bool'] === 'true' ? 0.8 : 0.5 ) * parseInt($(container).css('height').replace('px',''))), | |
| 73 | - scrollCollapse: true | |
| 74 | - } ); | |
| 75 | - }else{ | |
| 76 | - if(parseInt(chart.settings['scrollY_int']) > 180){ | |
| 77 | - chart.settings['scrollY_int']; | |
| 78 | - } | |
| 79 | - delete chart.settings['scrollX']; | |
| 80 | - $.extend( settings, { | |
| 81 | - scrollX: 150, | |
| 82 | 72 | scrollY: 180, |
| 83 | - } ); | |
| 84 | - } | |
| 73 | + } ); | |
| 85 | 74 | break; |
| 86 | 75 | case 'chart': |
| 87 | 76 | delete chart.settings['scrollX']; // jshint ignore:line |
| 88 | 77 | // fall-through. |
| @@ -150,11 +139,8 @@ | ||
| 150 | 139 | default: |
| 151 | 140 | if(parseInt(valoo) > 0){ |
| 152 | 141 | valoo = parseInt(valoo); |
| 153 | 142 | } |
| 154 | - if(i === 'pageLength' && (valoo === '' || parseInt(valoo) < 0)){ | |
| 155 | - valoo = 1; | |
| 156 | - } | |
| 157 | 143 | } |
| 158 | 144 | |
| 159 | 145 | // if the setting name has an '_' this means it is a sub-setting e.g. select_items means { select: { items: ... } }. |
| 160 | 146 | var array = i.split('_'); |
| @@ -184,8 +170,9 @@ | ||
| 184 | 170 | case 'timeofday': |
| 185 | 171 | type = 'date'; |
| 186 | 172 | break; |
| 187 | 173 | } |
| 174 | + | |
| 188 | 175 | render = addRenderer(series[j].type, settings.series, j); |
| 189 | 176 | |
| 190 | 177 | var col = { title: series[j].label, data: series[j].label, type: type, render: render }; |
| 191 | 178 | if(typeof chart.settings['cssClassNames'] !== 'undefined' && typeof chart.settings['cssClassNames']['tableCell'] !== 'undefined'){ |
| @@ -198,12 +185,8 @@ | ||
| 198 | 185 | for (i = 0; i < data.length; i++) { |
| 199 | 186 | row = []; |
| 200 | 187 | for (j = 0; j < series.length; j++) { |
| 201 | 188 | var datum = data[i][j]; |
| 202 | - // datum could be undefined for dynamic data (e.g. through json). | |
| 203 | - if(typeof datum === 'undefined'){ | |
| 204 | - datum = data[i][series[j].label]; | |
| 205 | - } | |
| 206 | 189 | row[ series[j].label ] = datum; |
| 207 | 190 | } |
| 208 | 191 | rows.push(row); |
| 209 | 192 | } |
| @@ -246,13 +229,10 @@ | ||
| 246 | 229 | parts[0] = series.format.thousands; |
| 247 | 230 | } |
| 248 | 231 | if(typeof series.format.decimal !== ''){ |
| 249 | 232 | parts[1] = series.format.decimal; |
| 250 | - if ( '' === series.format.precision ) { | |
| 251 | - series.format.precision = 2; | |
| 252 | - } | |
| 253 | 233 | } |
| 254 | - if(typeof series.format.precision !== '' && parseInt(series.format.precision) > 0){ | |
| 234 | + if(typeof series.format.precision !== ''){ | |
| 255 | 235 | parts[2] = series.format.precision; |
| 256 | 236 | } |
| 257 | 237 | if(typeof series.format.prefix !== ''){ |
| 258 | 238 | parts[3] = series.format.prefix; |
| @@ -268,21 +248,10 @@ | ||
| 268 | 248 | if(typeof series.format.to !== 'undefined' && typeof series.format.from !== 'undefined' && series.format.from != '' && series.format.to !== ''){ |
| 269 | 249 | render = $.fn.dataTable.render.moment(series.format.from, series.format.to); |
| 270 | 250 | } |
| 271 | 251 | break; |
| 272 | - default: | |
| 273 | - render = $.fn.dataTable.render.extra = function ( data, type, row ) { | |
| 274 | - if((data === true || data === 'true') && typeof series.format !== 'undefined' && series.format.truthy !== ''){ | |
| 275 | - data = series.format.truthy.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, ''); | |
| 276 | - } | |
| 277 | - if((data === false || data === 'false') && typeof series.format !== 'undefined' && series.format.falsy !== ''){ | |
| 278 | - data = series.format.falsy.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, ''); | |
| 279 | - } | |
| 280 | - return data; | |
| 281 | - } | |
| 282 | 252 | } |
| 283 | 253 | /* jshint ignore:end */ |
| 284 | - | |
| 285 | 254 | return render; |
| 286 | 255 | } |
| 287 | 256 | |
| 288 | 257 | function render(v) { |
| @@ -290,25 +259,22 @@ | ||
| 290 | 259 | renderChart(id, v); |
| 291 | 260 | } |
| 292 | 261 | } |
| 293 | 262 | |
| 263 | + if(typeof visualizer !== 'undefined'){ | |
| 264 | + // called while updating the chart. | |
| 265 | + visualizer.update = function(){ | |
| 266 | + renderSpecificChart('canvas', all_charts['canvas'], visualizer); | |
| 267 | + }; | |
| 268 | + } | |
| 269 | + | |
| 294 | 270 | $('body').on('visualizer:render:chart:start', function(event, v){ |
| 295 | 271 | all_charts = v.charts; |
| 296 | - | |
| 297 | - if(v.is_front == true && typeof v.id !== 'undefined'){ // jshint ignore:line | |
| 298 | - renderChart(v.id, v); | |
| 299 | - } else { | |
| 300 | - render(v); | |
| 301 | - } | |
| 272 | + render(v); | |
| 302 | 273 | }); |
| 303 | 274 | |
| 304 | 275 | $('body').on('visualizer:render:specificchart:start', function(event, v){ |
| 305 | 276 | renderSpecificChart(v.id, v.chart, v.v); |
| 306 | - }); | |
| 307 | - | |
| 308 | - $('body').on('visualizer:render:currentchart:update', function(event, v){ | |
| 309 | - var data = v || event.detail; | |
| 310 | - renderSpecificChart('canvas', all_charts['canvas'], data.visualizer); | |
| 311 | 277 | }); |
| 312 | 278 | |
| 313 | 279 | // front end actions |
| 314 | 280 | $('body').on('visualizer:action:specificchart', function(event, v){ |