PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 1.2.0
Visualizer – Tables & Charts Manager with Built-in AI Generator v1.2.0
4.0.8 4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 All 149 releases
← All changes | js/media/view.js +20 -101 3.0.81.2.0 View file →
@@ -1,9 +1,5 @@
1 -/*jshint scripturl:true*/
2 -/* global google */
3 -/* global visualizer */
4 -/* global showNotice */
5 -(function($, wpm, visualizer) {
1 +(function($, wpm) {
6 2 var libraryWidth, libraryHeight, wpmv, wpmV, wpmvv, wpmvvl, wpmvvb, l10n;
7 3
8 4 wpmv = wpm.view;
9 5 wpmV = wpm.View;
@@ -38,9 +34,9 @@
38 34 wpmV.apply(this, arguments);
39 35 },
40 36
41 37 render: function() {
42 - var self, model, chart, gv, type, series, data, table, settings, i, j, row, date, format, formatter, axis, property;
38 + var self, model, chart, gv, type, series, data, table, settings, i, j, row, date;
43 39
44 40 self = this;
45 41 gv = google.visualization;
46 42 model = self.model;
@@ -54,24 +50,10 @@
54 50 series = model.get('series');
55 51 data = model.get('data');
56 52 settings = model.get('settings');
57 53
58 - settings.width = self.options.width;
59 - settings.height = self.options.height;
60 -
61 54 table = new gv.DataTable({cols: series});
62 -
63 - switch (type) {
64 - case "gauge":
65 - case "table":
66 - case "timeline":
67 - chart = type.charAt(0).toUpperCase() + type.slice(1);
68 - break;
69 - default:
70 - chart = type.charAt(0).toUpperCase() + type.slice(1) + 'Chart';
71 - break;
72 - }
73 -
55 + chart = type == 'gauge' ? 'Gauge' : type.charAt(0).toUpperCase() + type.slice(1) + 'Chart';
74 56 chart = new gv[chart](self.el);
75 57
76 58 switch (type) {
77 59 case 'pie':
@@ -76,9 +58,9 @@
76 58 switch (type) {
77 59 case 'pie':
78 60 if (settings.slices) {
79 61 for (i in settings.slices) {
80 - if (settings.slices[i]['color'] === '') {
62 + if (settings.slices[i]['color'] == '') {
81 63 delete settings.slices[i]['color'];
82 64 }
83 65 }
84 66 }
@@ -90,9 +72,9 @@
90 72 case 'scatter':
91 73 case 'candlestick':
92 74 if (settings.series) {
93 75 for (i in settings.series) {
94 - if (settings.series[i]['color'] === '') {
76 + if (settings.series[i]['color'] == '') {
95 77 delete settings.series[i]['color'];
96 78 }
97 79 }
98 80 }
@@ -97,9 +79,9 @@
97 79 }
98 80 }
99 81 break;
100 82 case 'geo':
101 - if (settings.region !== undefined && settings.region.replace(/^\s+|\s+$/g, '') === '') {
83 + if (settings.region != undefined && settings.region.replace(/^\s+|\s+$/g, '') == '') {
102 84 settings['region'] = 'world';
103 85 }
104 86 break;
105 87 case 'gauge':
@@ -107,42 +89,12 @@
107 89 default:
108 90 return;
109 91 }
110 92
111 - if (series[0] && (series[0].type === 'date' || series[0].type === 'datetime')) {
112 - axis = false;
113 - switch (type) {
114 - case 'line':
115 - case 'area':
116 - case 'scatter':
117 - case 'candlestick':
118 - case 'column':
119 - axis = settings.hAxis;
120 - break;
121 - case 'bar':
122 - axis = settings.vAxis;
123 - break;
124 - }
125 -
126 - if (axis) {
127 - for (property in axis.viewWindow) {
128 - date = new Date(axis.viewWindow[property]);
129 - if (Object.prototype.toString.call(date) === "[object Date]") {
130 - if (!isNaN(date.getTime())) {
131 - axis.viewWindow[property] = date;
132 - continue;
133 - }
134 - }
135 -
136 - delete axis.viewWindow[property];
137 - }
138 - }
139 - }
140 -
141 93 for (i = 0; i < data.length; i++) {
142 94 row = [];
143 95 for (j = 0; j < series.length; j++) {
144 - if (series[j].type === 'date' || series[j].type === 'datetime') {
96 + if (series[j].type == 'date' || series[j].type == 'datetime') {
145 97 date = new Date(data[i][j]);
146 98 data[i][j] = null;
147 99 if (Object.prototype.toString.call(date) === "[object Date]") {
148 100 if (!isNaN(date.getTime())) {
@@ -154,33 +106,8 @@
154 106 }
155 107 table.addRow(row);
156 108 }
157 109
158 - if (settings.series) {
159 - for (i = 0; i < settings.series.length; i++) {
160 - format = settings.series[i].format;
161 - if (!format || format === '') {
162 - continue;
163 - }
164 -
165 - formatter = null;
166 - switch (series[i + 1].type) {
167 - case 'number':
168 - formatter = new gv.NumberFormat({pattern: format});
169 - break;
170 - case 'date':
171 - case 'datetime':
172 - case 'timeofday':
173 - formatter = new gv.DateFormat({pattern: format});
174 - break;
175 - }
176 -
177 - if (formatter) {
178 - formatter.format(table, i + 1);
179 - }
180 - }
181 - }
182 -
183 110 chart.draw(table, settings);
184 111 }
185 112 });
186 113
@@ -268,20 +195,8 @@
268 195 paginationView.render();
269 196 }
270 197
271 198 self.renderCollection();
272 - $('.visualizer-library-chart').css('position', 'relative')
273 - .append($(
274 - // jshint ignore:start
275 - '<div class="visualizer-chart-bg"></div>'
276 - + '<div class="visualizer-chart-insert-bg">'
277 - + '<button class="button button-primary visualizer-library-chart-insert">' + visualizer.i10n.insert + '</button>'
278 - + '</div>'
279 - // jshint ignore:end
280 - ))
281 - .on('mouseover', function(){
282 - $(this).addClass('hover');
283 - });
284 199 content.unlock();
285 200 }
286 201 }
287 202 });
@@ -380,9 +295,9 @@
380 295 createFilters: function() {
381 296 var self = this;
382 297
383 298 self.filters = {};
384 - _.each(l10n.library.types, function(type, i) {
299 + _.each(['all', 'pie', 'line', 'area', 'bar', 'column', 'geo', 'scatter', 'gauge', 'candlestick'], function(type, i) {
385 300 self.filters[type] = {
386 301 text: l10n.library.filters[type],
387 302 key: type,
388 303 priority: (i + 1) * 10
@@ -423,11 +338,15 @@
423 338
424 339 self.$el.html(_.chain(items).map(function(item) {
425 340 var content, className;
426 341
427 - content = item === '...' || item === self.options.page ? self.make('span', { class: 'visualizer-library-pagination-page' }, item) : self.make('a', { class: 'visualizer-library-pagination-page', href: 'javascript:;', 'data-page': item }, item);
342 + content = item == '...' || item == self.options.page
343 + ? self.make('span', { class: 'visualizer-library-pagination-page' }, item)
344 + : self.make('a', { class: 'visualizer-library-pagination-page', href: 'javascript:;', 'data-page': item }, item);
428 345
429 - className = item === self.options.page ? 'visualizer-library-pagination-item visualizer-library-pagination-active' : 'visualizer-library-pagination-item';
346 + className = item == self.options.page
347 + ? 'visualizer-library-pagination-item visualizer-library-pagination-active'
348 + : 'visualizer-library-pagination-item';
430 349
431 350 return self.make('li', { class: className }, content);
432 351 }).value());
433 352 },
@@ -441,9 +360,9 @@
441 360 }
442 361 } else {
443 362 tmp = current - Math.floor( max / 2 );
444 363
445 - if ( max % 2 === 0 ) {
364 + if ( max % 2 == 0 ) {
446 365 tmp++;
447 366 }
448 367
449 368 if ( tmp < 1 ) {
@@ -457,14 +376,14 @@
457 376 for ( i = 1; i <= max; i++ ) {
458 377 pagenation.push(tmp++);
459 378 }
460 379
461 - if ( pagenation[0] !== 1 ) {
380 + if ( pagenation[0] != 1 ) {
462 381 pagenation[0] = 1;
463 382 pagenation[1] = '...';
464 383 }
465 384
466 - if ( pagenation[max - 1] !== total ) {
385 + if ( pagenation[max - 1] != total ) {
467 386 pagenation[max - 1] = total;
468 387 pagenation[max - 2] = '...';
469 388 }
470 389 }
@@ -475,9 +394,9 @@
475 394 onPageChange: function(e) {
476 395 this.controller.trigger('visualizer:library:page', $(e.target).data('page'));
477 396 }
478 397 });
479 -})(jQuery, wp.media, visualizer);
398 +})(jQuery, wp.media);
480 399
481 400 (function($) {
482 401 $.fn.lock = function() {
483 402 $(this).each(function() {
@@ -509,9 +428,9 @@
509 428 $this.append(locker);
510 429 });
511 430
512 431 return $(this);
513 - };
432 + }
514 433
515 434 $.fn.unlock = function() {
516 435 $(this).each(function() {
517 436 var $this = $(this);
@@ -522,6 +441,6 @@
522 441 }).find('.locker').remove();
523 442 });
524 443
525 444 return $(this);
526 - };
445 + }
527 446 })(jQuery);