Repository: ignite Updated Branches: refs/heads/ignite-843 3706cc2e9 -> 1e5d8d946
ignite-1.4 WIP charts. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1e5d8d94 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1e5d8d94 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1e5d8d94 Branch: refs/heads/ignite-843 Commit: 1e5d8d9468fae691c21d385024bec1eac33941b0 Parents: 3706cc2 Author: Alexey Kuznetsov <[email protected]> Authored: Mon Sep 7 13:15:10 2015 +0700 Committer: Alexey Kuznetsov <[email protected]> Committed: Mon Sep 7 13:15:10 2015 +0700 ---------------------------------------------------------------------- .../test-drive/test-drive.sql | 3 - .../src/main/js/agents/agent-manager.js | 5 +- .../src/main/js/controllers/sql-controller.js | 63 ++++++++++++++++---- .../src/main/js/public/stylesheets/style.scss | 4 ++ .../js/views/configuration/metadata-load.jade | 4 -- .../src/main/js/views/sql/chart-settings.jade | 27 +++++---- 6 files changed, 73 insertions(+), 33 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/1e5d8d94/modules/control-center-agent/test-drive/test-drive.sql ---------------------------------------------------------------------- diff --git a/modules/control-center-agent/test-drive/test-drive.sql b/modules/control-center-agent/test-drive/test-drive.sql index 1438204..a7deafa 100644 --- a/modules/control-center-agent/test-drive/test-drive.sql +++ b/modules/control-center-agent/test-drive/test-drive.sql @@ -56,6 +56,3 @@ CREATE TABLE CARS.CAR ( PARKING_ID INTEGER NOT NULL, CAR_NAME VARCHAR(50) NOT NULL ); - - - http://git-wip-us.apache.org/repos/asf/ignite/blob/1e5d8d94/modules/control-center-web/src/main/js/agents/agent-manager.js ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/agents/agent-manager.js b/modules/control-center-web/src/main/js/agents/agent-manager.js index d37b629..e3c7846 100644 --- a/modules/control-center-web/src/main/js/agents/agent-manager.js +++ b/modules/control-center-web/src/main/js/agents/agent-manager.js @@ -36,7 +36,7 @@ function AgentManager(srv) { var self = this; this._wss.on('connection', function(ws) { - var client = new Client(ws, self); + new Client(ws, self); }); } @@ -230,7 +230,8 @@ Client.prototype._rmtAuthMessage = function(msg) { db.Account.findByUsername(msg.login, function(err, account) { if (err) { - self.authResult(err); + self.authResult('Failed to authorize user'); + // TODO IGNITE-1379 send error to web master. } else if (!account) { self.authResult('User not found'); http://git-wip-us.apache.org/repos/asf/ignite/blob/1e5d8d94/modules/control-center-web/src/main/js/controllers/sql-controller.js ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/controllers/sql-controller.js b/modules/control-center-web/src/main/js/controllers/sql-controller.js index 70fdd6e..ae993bb 100644 --- a/modules/control-center-web/src/main/js/controllers/sql-controller.js +++ b/modules/control-center-web/src/main/js/controllers/sql-controller.js @@ -278,15 +278,15 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle paragraph.chartColY = null; _.forEach(paragraph.meta, function (meta) { - var col = {value: meta.fieldName, label: meta.fieldName, index: idx++}; + var col = {value: idx++, label: meta.fieldName}; paragraph.chartColumns.push(col); if (idx == 1) - paragraph.chartColX = col.value; + paragraph.chartColX = 0; if (idx == 2) - paragraph.chartColY = col.value; + paragraph.chartColY = 1; }); } @@ -445,7 +445,7 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle return value; }; - function _isNumber(arr, idx, dflt) { + function _chartNumber(arr, idx, dflt) { if (arr && arr.length > idx) { var val = arr[idx]; @@ -456,11 +456,18 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle return dflt; } - function _datum(key, rows) { + function _chartLabel(arr, idx, dflt) { + if (arr && arr.length > idx) + return arr[idx]; + + return dflt; + } + + function _chartDatum(key, paragraph) { var index = 0; - var values = _.map(rows, function (row) { - return {x: _isNumber(row, 1, index++), y: _isNumber(row, 0, 0)} + var values = _.map(paragraph.rows, function (row) { + return {x: _chartNumber(row, paragraph.chartColX, index++), y: _chartNumber(row, paragraph.chartColY, 0)} }); return [{key: key, values: values}]; @@ -485,6 +492,35 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle }); } + $scope.applyChartSettings = function (paragraph) { + if (paragraph.rows && paragraph.rows.length > 0) { + switch (paragraph.result) { + case 'table': + case 'none': + break; + + case 'bar': + _barChart(paragraph); + break; + + case 'pie': + _pieChart(paragraph); + break; + + case 'line': + _lineChart(paragraph); + break; + + case 'area': + _areaChart(paragraph); + break; + + default: + $common.showError('Unknown result: ' + new_result); + } + } + }; + function _barChart(paragraph) { var index = 0; @@ -498,7 +534,10 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle }); var values = _.map(paragraph.rows, function (row) { - return {label: (row.length > 1) ? row[1] : index++, value: _isNumber(row, 0, 0)} + return { + label: _chartLabel(row, paragraph.chartColY, index++), + value: _chartNumber(row, paragraph.chartColX, 0) + } }); _insertChart(paragraph, [{key: 'bar', values: values}], chart); @@ -511,10 +550,10 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle nv.addGraph(function() { var chart = nv.models.pieChart() .x(function (row) { - return (row.length > 1) ? row[1] : index++; + return _chartLabel(row, paragraph.chartColX, index++); }) .y(function (row) { - return _isNumber(row, 0, 0); + return _chartNumber(row, paragraph.chartColX, 0); }) .showLabels(true) .labelThreshold(.05) @@ -540,7 +579,7 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle .x(_x) .y(_y); - _insertChart(paragraph, _datum('Line chart', paragraph.rows), chart); + _insertChart(paragraph, _chartDatum('Line chart', paragraph), chart); }); } @@ -550,7 +589,7 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle .x(_x) .y(_y); - _insertChart(paragraph, _datum('Area chart', paragraph.rows), chart); + _insertChart(paragraph, _chartDatum('Area chart', paragraph), chart); }); } }]); http://git-wip-us.apache.org/repos/asf/ignite/blob/1e5d8d94/modules/control-center-web/src/main/js/public/stylesheets/style.scss ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/public/stylesheets/style.scss b/modules/control-center-web/src/main/js/public/stylesheets/style.scss index df0633e..8eefbb9 100644 --- a/modules/control-center-web/src/main/js/public/stylesheets/style.scss +++ b/modules/control-center-web/src/main/js/public/stylesheets/style.scss @@ -1301,6 +1301,10 @@ a { right: 30px; } +.chart-settings { + padding: 5px; +} + .loading-indicator { box-sizing: border-box; -webkit-box-sizing: border-box; http://git-wip-us.apache.org/repos/asf/ignite/blob/1e5d8d94/modules/control-center-web/src/main/js/views/configuration/metadata-load.jade ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/views/configuration/metadata-load.jade b/modules/control-center-web/src/main/js/views/configuration/metadata-load.jade index 4e44a2f..391a696 100644 --- a/modules/control-center-web/src/main/js/views/configuration/metadata-load.jade +++ b/modules/control-center-web/src/main/js/views/configuration/metadata-load.jade @@ -44,10 +44,6 @@ include ../includes/controls input(type='checkbox' ng-model='schema.use' ng-change='selectSchema()') td label {{::schema.name}} - tfoot - tr - td.text-right(colspan='3') - div(st-pagination st-items-by-page='10' st-displayed-pages='5') .metadata-content(ng-show='loadMeta.action == "tables"') .settings-row label.col-sm-2.required Package: http://git-wip-us.apache.org/repos/asf/ignite/blob/1e5d8d94/modules/control-center-web/src/main/js/views/sql/chart-settings.jade ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/views/sql/chart-settings.jade b/modules/control-center-web/src/main/js/views/sql/chart-settings.jade index 1640c58..0538acd 100644 --- a/modules/control-center-web/src/main/js/views/sql/chart-settings.jade +++ b/modules/control-center-web/src/main/js/views/sql/chart-settings.jade @@ -14,21 +14,24 @@ See the License for the specific language governing permissions and limitations under the License. -.popover(tabindex='-1' style='width: 200px') +.popover(tabindex='-1' style='width: 250px') .arrow h3.popover-title(style='color: black') Chart settings button.close(id='chart-settings-close' type='button' ng-click='$hide()') × .popover-content - form(name='chartSettingsForm') + form.form-horizontal.chart-settings(name='chartSettingsForm' novalidate) .form-group - .col-sm-2 - label X: - .col-sm-10 - button.form-control(id='chart-settings-X' ng-model='paragraph.chartColX' data-placeholder='Col X' bs-select bs-options='item.value as item.label for item in paragraph.chartColumns' tabindex='0') - .col-sm-2 - label Y: - .col-sm-10 - button.form-control(id='chart-settings-Y' ng-model='paragraph.chartColY' data-placeholder='Col Y' bs-select bs-options='item.value as item.label for item in paragraph.chartColumns' tabindex='1') - .form-actions(style='margin-top: 30px; padding: 5px') - button.btn.btn-primary(id='chart-settings-apply' ng-disabled='chartSettingsForm.$invalid' type='button' ng-click='$hide()') Apply + .settings-row + .col-sm-2 + label X: + .col-sm-10 + button.form-control(id='chart-settings-X' ng-model='paragraph.chartColX' data-placeholder='Col X' bs-select bs-options='item.value as item.label for item in paragraph.chartColumns' tabindex='0') + .settings-row + .col-sm-2 + label Y: + .col-sm-10 + button.form-control(id='chart-settings-Y' ng-model='paragraph.chartColY' data-placeholder='Col Y' bs-select bs-options='item.value as item.label for item in paragraph.chartColumns' tabindex='1') + .form-actions + button.btn.btn-primary(id='chart-settings-apply' ng-disabled='chartSettingsForm.$invalid' type='button' ng-click='applyChartSettings(paragraph); $hide()') Apply + button.btn.btn-primary(id='chart-settings-cancel' type='button' ng-click='$hide()') Cancel
