Repository: ignite
Updated Branches:
  refs/heads/ignite-843-rc2 59a3dcef7 -> 0dfdaeb35


IGNITE-843 Clean up.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0dfdaeb3
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0dfdaeb3
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0dfdaeb3

Branch: refs/heads/ignite-843-rc2
Commit: 0dfdaeb35bc6c39b410980387703fc59cd8deb23
Parents: 59a3dcef7
Author: Andrey <[email protected]>
Authored: Mon Dec 21 17:49:44 2015 +0700
Committer: Andrey <[email protected]>
Committed: Mon Dec 21 17:49:44 2015 +0700

----------------------------------------------------------------------
 .../app/modules/states/configuration/index.js   |  20 +-
 .../src/main/js/app/modules/states/sql/index.js |   5 +-
 .../src/main/js/controllers/sql-controller.js   |   6 +-
 .../src/main/js/public/stylesheets/style.scss   |   7 +-
 .../src/main/js/views/sql/sql.jade              | 251 ++++++++++---------
 5 files changed, 154 insertions(+), 135 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/0dfdaeb3/modules/control-center-web/src/main/js/app/modules/states/configuration/index.js
----------------------------------------------------------------------
diff --git 
a/modules/control-center-web/src/main/js/app/modules/states/configuration/index.js
 
b/modules/control-center-web/src/main/js/app/modules/states/configuration/index.js
index e5a97fe..61b2d7e 100644
--- 
a/modules/control-center-web/src/main/js/app/modules/states/configuration/index.js
+++ 
b/modules/control-center-web/src/main/js/app/modules/states/configuration/index.js
@@ -35,19 +35,31 @@ angular
        })
        .state('base.configuration.clusters', {
                url: '/clusters',
-               templateUrl: '/configuration/clusters.html'     
+               templateUrl: '/configuration/clusters.html',
+               data: {
+                       loading: 'Loading clusters screen...'
+               }
        })
        .state('base.configuration.caches', {
                url: '/caches',
-               templateUrl: '/configuration/caches.html'       
+               templateUrl: '/configuration/caches.html',
+               data: {
+                       loading: 'Loading caches screen...'
+               }
        })
        .state('base.configuration.metadata', {
                url: '/metadata',
-               templateUrl: '/configuration/metadata.html'     
+               templateUrl: '/configuration/metadata.html',
+               data: {
+                       loading: 'Loading metadata screen...'
+               }
        })
        .state('base.configuration.igfs', {
                url: '/igfs',
-               templateUrl: '/configuration/igfs.html' 
+               templateUrl: '/configuration/igfs.html',
+               data: {
+                       loading: 'Loading IGFS screen...'
+               }
        })
        .state('base.configuration.summary', {
                url: '/summary',

http://git-wip-us.apache.org/repos/asf/ignite/blob/0dfdaeb3/modules/control-center-web/src/main/js/app/modules/states/sql/index.js
----------------------------------------------------------------------
diff --git 
a/modules/control-center-web/src/main/js/app/modules/states/sql/index.js 
b/modules/control-center-web/src/main/js/app/modules/states/sql/index.js
index ea81343..fe09f33 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/sql/index.js
+++ b/modules/control-center-web/src/main/js/app/modules/states/sql/index.js
@@ -26,6 +26,9 @@ angular
     $stateProvider
     .state('base.sql', {
         url: '/sql/{id}',
-               templateUrl: '/sql/sql.html'
+               templateUrl: '/sql/sql.html',
+               data: {
+                       loading: 'Loading notebook screen...'
+               }
        });
 }]);

http://git-wip-us.apache.org/repos/asf/ignite/blob/0dfdaeb3/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 4667640..ccc7689 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
@@ -247,7 +247,7 @@ consoleModule.controller('sqlController', function 
($animate, $scope, $controlle
     };
 
     var loadNotebook = function () {
-        $loading.start('loadingNotebookScreen');
+        $loading.start('loading');
 
         $http.post('/api/v1/notebooks/get', {noteId: $state.params.id})
             .success(function (notebook) {
@@ -280,9 +280,7 @@ consoleModule.controller('sqlController', function 
($animate, $scope, $controlle
             .finally(function () {
                 $scope.loaded = true;
 
-                console.log($scope.notebook);
-
-                $loading.finish('loadingNotebookScreen');
+                $loading.finish('loading');
             });
     };
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/0dfdaeb3/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 bd9dbff..d353575 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
@@ -571,6 +571,11 @@ button.form-control {
         }
     }
 
+    .sql-controls {
+        margin: 10px 0;
+        padding: 0 10px;
+    }
+
     .sql-table-total {
         padding: 0 10px;
 
@@ -1827,4 +1832,4 @@ treecontrol.tree-classic {
             border-top-left-radius: 0;
         }
     }
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/ignite/blob/0dfdaeb3/modules/control-center-web/src/main/js/views/sql/sql.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/sql/sql.jade 
b/modules/control-center-web/src/main/js/views/sql/sql.jade
index 803f066..beb8137 100644
--- a/modules/control-center-web/src/main/js/views/sql/sql.jade
+++ b/modules/control-center-web/src/main/js/views/sql/sql.jade
@@ -40,7 +40,7 @@ mixin chart-settings(mdl)
         .col-xs-4
             +result-toolbar
 
-.row.greedy
+.row
     ignite-callout
         ignite-callout-cel(data-title='With SQL Notebook you can')
             li Create any number of queries
@@ -54,133 +54,134 @@ mixin chart-settings(mdl)
             li Start Apache Ignite Web Agent
             li Create query, enter some SQL and execute it
 
-    .docs-content(ng-controller='sqlController' 
dw-loading='loadingNotebookScreen' dw-loading-options='{text: "Loading notebook 
screen...", className: "page-loading-overlay"}')
-        hr
-        div(ng-if='loaded && !notebook' style='text-align: center')
-            h2 Failed to load notebook
-            label.col-sm-12 Notebook not accessible any more. Go back to 
configuration or open to another notebook.
-            button.h3.btn.btn-primary(ui-sref='base.configuration.clusters') 
Back to configuration
-        div(ng-if='loaded && notebook')
-            .row(bs-affix style='margin-bottom: 10px')
-                .docs-header.notebook-header
-                    h1.col-sm-6(ng-hide='notebook.edit')
-                        label(style='max-width: calc(100% - 60px)') 
{{notebook.name}}
-                        .btn-group
-                            +btn-toolbar('fa-pencil', 'notebook.edit = 
true;notebook.editName = notebook.name', 'Rename notebook')
-                            +btn-toolbar('fa-trash', 'removeNotebook()', 
'Remove notebook')
-                    h1.col-sm-6(ng-show='notebook.edit')
-                        i.btn.fa.fa-floppy-o(ng-show='notebook.editName' 
ng-click='renameNotebook(notebook.editName)' bs-tooltip data-title='Save 
notebook name' data-trigger='hover')
-                        .input-tip
-                            input.form-control(ng-model='notebook.editName' 
required on-enter='renameNotebook(notebook.editName)' on-escape='notebook.edit 
= false;')
-                    h1.pull-right
-                        a.dropdown-toggle(data-toggle='dropdown' 
bs-dropdown='scrollParagraphs' data-placement='bottom-right') Scroll to query
-                            span.caret
-                        .btn-group(style='margin-top: 2px')
-                            +btn-toolbar('fa-plus', 'addParagraph()', 'Add new 
query')
-            .docs-body.paragraphs
-                .panel-group(bs-collapse 
ng-model='notebook.expandedParagraphs' data-allow-multiple='true' 
data-start-collapsed='false')
-                    .panel.panel-default(ng-repeat='paragraph in 
notebook.paragraphs')
-                        .panel-heading(id='{{paragraph.id}}' 
bs-collapse-toggle)
-                            .row
-                                .col-sm-6(ng-hide='paragraph.edit')
-                                    
i.tipLabel.fa(ng-class='paragraphExpanded(paragraph) ? "fa-chevron-circle-up" : 
"fa-chevron-circle-down"')
-                                    label {{paragraph.name}}
+    ignite-loading
+        .docs-content(ng-controller='sqlController')
+            hr
+            div(ng-if='loaded && !notebook' style='text-align: center')
+                h2 Failed to load notebook
+                label.col-sm-12 Notebook not accessible any more. Go back to 
configuration or open to another notebook.
+                
button.h3.btn.btn-primary(ui-sref='base.configuration.clusters') Back to 
configuration
+            div(ng-if='loaded && notebook')
+                .row(bs-affix style='margin-bottom: 10px')
+                    .docs-header.notebook-header
+                        h1.col-sm-6(ng-hide='notebook.edit')
+                            label(style='max-width: calc(100% - 60px)') 
{{notebook.name}}
+                            .btn-group
+                                +btn-toolbar('fa-pencil', 'notebook.edit = 
true;notebook.editName = notebook.name', 'Rename notebook')
+                                +btn-toolbar('fa-trash', 'removeNotebook()', 
'Remove notebook')
+                        h1.col-sm-6(ng-show='notebook.edit')
+                            i.btn.fa.fa-floppy-o(ng-show='notebook.editName' 
ng-click='renameNotebook(notebook.editName)' bs-tooltip data-title='Save 
notebook name' data-trigger='hover')
+                            .input-tip
+                                
input.form-control(ng-model='notebook.editName' required 
on-enter='renameNotebook(notebook.editName)' on-escape='notebook.edit = false;')
+                        h1.pull-right
+                            a.dropdown-toggle(data-toggle='dropdown' 
bs-dropdown='scrollParagraphs' data-placement='bottom-right') Scroll to query
+                                span.caret
+                            .btn-group(style='margin-top: 2px')
+                                +btn-toolbar('fa-plus', 'addParagraph()', 'Add 
new query')
+                .docs-body.paragraphs
+                    .panel-group(bs-collapse 
ng-model='notebook.expandedParagraphs' data-allow-multiple='true' 
data-start-collapsed='false')
+                        .panel.panel-default(ng-repeat='paragraph in 
notebook.paragraphs')
+                            .panel-heading(id='{{paragraph.id}}' 
bs-collapse-toggle)
+                                .row
+                                    .col-sm-6(ng-hide='paragraph.edit')
+                                        
i.tipLabel.fa(ng-class='paragraphExpanded(paragraph) ? "fa-chevron-circle-up" : 
"fa-chevron-circle-down"')
+                                        label {{paragraph.name}}
 
-                                    
.btn-group(ng-hide='notebook.paragraphs.length > 1')
-                                        +btn-toolbar('fa-pencil', 
'paragraph.edit = true; paragraph.editName = paragraph.name; 
$event.stopPropagation();', 'Rename query', 'paragraph-name-{{paragraph.id}}')
+                                        
.btn-group(ng-hide='notebook.paragraphs.length > 1')
+                                            +btn-toolbar('fa-pencil', 
'paragraph.edit = true; paragraph.editName = paragraph.name; 
$event.stopPropagation();', 'Rename query', 'paragraph-name-{{paragraph.id}}')
 
-                                    
.btn-group(ng-show='notebook.paragraphs.length > 1' 
ng-click='$event.stopPropagation();')
-                                        +btn-toolbar('fa-pencil', 
'paragraph.edit = true; paragraph.editName = paragraph.name;', 'Rename query', 
'paragraph-name-{{paragraph.id}}')
-                                        +btn-toolbar('fa-remove', 
'removeParagraph(paragraph)', 'Remove query')
+                                        
.btn-group(ng-show='notebook.paragraphs.length > 1' 
ng-click='$event.stopPropagation();')
+                                            +btn-toolbar('fa-pencil', 
'paragraph.edit = true; paragraph.editName = paragraph.name;', 'Rename query', 
'paragraph-name-{{paragraph.id}}')
+                                            +btn-toolbar('fa-remove', 
'removeParagraph(paragraph)', 'Remove query')
 
-                                .col-sm-6(ng-show='paragraph.edit')
-                                    i.tipLabel.fa(style='float: left;' 
ng-class='paragraphExpanded(paragraph) ? "fa-chevron-circle-up" : 
"fa-chevron-circle-down"')
-                                    i.tipLabel.fa.fa-floppy-o(style='float: 
right;' ng-show='paragraph.editName' ng-click='renameParagraph(paragraph, 
paragraph.editName); $event.stopPropagation();' bs-tooltip data-title='Save 
query name' data-trigger='hover')
-                                    .input-tip
-                                        
input.form-control(id='paragraph-name-{{paragraph.id}}' 
ng-model='paragraph.editName' required ng-click='$event.stopPropagation();' 
on-enter='renameParagraph(paragraph, paragraph.editName)' 
on-escape='paragraph.edit = false')
-                        .panel-collapse(role='tabpanel' bs-collapse-target)
-                            .col-sm-12(ng-show='paragraph.editor')
-                                .col-xs-8.col-sm-9(style='border-right: 1px 
solid #eee')
-                                    .sql-editor(ui-ace='{onLoad: 
aceInit(paragraph), theme: "chrome", mode: "sql", require: 
["ace/ext/language_tools"],' +
-                                        'advanced: {enableSnippets: false, 
enableBasicAutocompletion: true, enableLiveAutocompletion: true}}'
-                                    ng-model='paragraph.query')
-                                .col-xs-4.col-sm-3
-                                    div(ng-show='caches.length > 0' 
style='padding: 5px 10px' st-table='displayedCaches' st-safe-src='caches')
-                                        lable.labelField.labelFormField Caches:
-                                        i.fa.fa-database.tipField(title='Click 
to show cache types metadata dialog' bs-popover 
data-template-url='/sql/cache-metadata.html', data-placement='bottom', 
data-trigger='click')
+                                    .col-sm-6(ng-show='paragraph.edit')
+                                        i.tipLabel.fa(style='float: left;' 
ng-class='paragraphExpanded(paragraph) ? "fa-chevron-circle-up" : 
"fa-chevron-circle-down"')
+                                        
i.tipLabel.fa.fa-floppy-o(style='float: right;' ng-show='paragraph.editName' 
ng-click='renameParagraph(paragraph, paragraph.editName); 
$event.stopPropagation();' bs-tooltip data-title='Save query name' 
data-trigger='hover')
                                         .input-tip
-                                            input.form-control(type='text' 
st-search placeholder='Filter caches...')
-                                        table.links
-                                            
tbody.scrollable-y(style='max-height: 15em;display:block;' 
ng-model='paragraph.cacheName' bs-radio-group)
-                                                tr(ng-repeat='cache in 
displayedCaches track by cache.name')
-                                                    td(style='width: 100%')
-                                                        
input.labelField(type='radio' value='{{cache.name}}')
-                                                        label {{cache.name || 
"&lt;default&gt;"}}
-                                    
.empty-caches(ng-show='displayedCaches.length == 0 && caches.length != 0')
-                                        label Wrong caches filter
-                                    .empty-caches(ng-show='caches.length == 0')
-                                        label No caches
-                            .col-sm-12
-                                hr(style='margin: 0')
-                            .col-sm-12
-                                .details-row
-                                    
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, true)' 
ng-click='actionAvailable(paragraph, true) ? explain(paragraph) : ""' 
data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, 
"explain", true)}}') Explain
-                                    
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, true)' 
ng-click='actionAvailable(paragraph, true) ? execute(paragraph) : ""' 
data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, 
"execute", true)}}') Execute
-                                    
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, false)' 
ng-click='actionAvailable(paragraph, false) ? scan(paragraph): ""' 
data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, 
"execute scan", false)}}') Scan
-                                    .pull-right
-                                        labelHide System columns:
-                                        
a.btn.btn-default.fa.fa-bars.tipLabel(ng-class='{"btn-info": 
paragraph.systemColumns}' ng-click='toggleSystemColumns(paragraph)' 
ng-disabled='paragraph.disabledSystemColumns' bs-tooltip data-title='Show 
"_KEY", "_VAL" columns')
-                                        label.tipLabel Refresh rate:
-                                        
button.btn.btn-default.fa.fa-clock-o.tipLabel(title='Click to show refresh rate 
dialog' ng-class='{"btn-info": paragraph.rate && paragraph.rate.installed}' 
bs-popover data-template-url='/sql/paragraph-rate.html' data-placement='left' 
data-auto-close='1' data-trigger='click') {{rateAsString(paragraph)}}
-                                        label.tipLabel Page size:
-                                        
button.select-toggle.fieldButton.btn.btn-default(ng-model='paragraph.pageSize' 
bs-options='item for item in pageSizes' bs-select bs-tooltip data-title='Max 
number of rows to show in query result as one page')
-                            .col-sm-12(ng-show='paragraph.errMsg')
-                                hr(style='margin-top: 0; margin-bottom: 10px')
-                                .sql-error-result(ng-show='paragraph.errMsg') 
Error: {{paragraph.errMsg}}
-                            .col-sm-12(ng-show='!paragraph.errMsg && 
paragraph.result != "none"')
-                                hr(style='margin-top: 0; margin-bottom: 10px')
-                                
.sql-empty-result(ng-show='!paragraph.nonEmpty()') Result set is empty
-                                div(ng-show='paragraph.table() && 
paragraph.nonEmpty()')
-                                    .sql-table-total.row
-                                        .col-xs-4
-                                            label Page #&nbsp;
-                                            b 
{{paragraph.page}}&nbsp;&nbsp;&nbsp;
-                                            label Results so far:&nbsp;
-                                            b {{paragraph.rows.length + 
paragraph.total}}
-                                        .col-xs-4
-                                            +result-toolbar
-                                        .col-xs-4
-                                            
.btn-group.pull-right(ng-disabled='paragraph.loading')
-                                                
button.btn.btn-primary.fieldButton(ng-click='exportCsv(paragraph)' bs-tooltip 
data-title='{{actionTooltip(paragraph, "export", false)}}') Export
-                                                
button.btn.btn-primary(id='export-item-dropdown' data-toggle='dropdown' 
data-container='body' bs-dropdown='exportDropdown' 
data-placement='bottom-right')
-                                                    span.caret
-                                    .grid(ui-grid='paragraph.gridOptions' 
ui-grid-auto-resize ui-grid-exporter ng-style='{ height: 
paragraph.gridOptions.height }')
-                                div(ng-show='paragraph.chart() && 
paragraph.nonEmpty()')
-                                    div(ng-show='paragraph.queryExecute()')
-                                        +chart-settings
-                                        
div(ng-show='paragraph.chartColumns.length > 0 && 
!paragraph.chartColumnsConfigured()')
-                                            .sql-empty-result Cannot display 
chart. Please configure axis using&nbsp
-                                                b Chart settings
-                                        
div(ng-show='paragraph.chartColumns.length == 0')
-                                            .sql-empty-result Cannot display 
chart. Result set must contain Java build-in type columns. Please change query 
and execute it again.
-                                        
div(ng-show='paragraph.chartColumnsConfigured()')
-                                            
div(ng-show='paragraph.timeLineSupported() || 
!paragraph.chartTimeLineEnabled()')
-                                                div(ng-repeat='chart in 
paragraph.charts')
-                                                    
nvd3(options='chart.options' data='chart.data' api='chart.api')
-                                            
.sql-empty-result(ng-show='!paragraph.timeLineSupported() && 
paragraph.chartTimeLineEnabled()') Pie chart does not support 'TIME_LINE' 
column for X-axis. Please use another column for X-axis or switch to another 
chart.
-                                    
.sql-empty-result(ng-hide='paragraph.queryExecute()')
-                                        .row
-                                            .col-xs-4.col-xs-offset-4
+                                            
input.form-control(id='paragraph-name-{{paragraph.id}}' 
ng-model='paragraph.editName' required ng-click='$event.stopPropagation();' 
on-enter='renameParagraph(paragraph, paragraph.editName)' 
on-escape='paragraph.edit = false')
+                            .panel-collapse(role='tabpanel' bs-collapse-target)
+                                .col-sm-12(ng-show='paragraph.editor')
+                                    .col-xs-8.col-sm-9(style='border-right: 
1px solid #eee')
+                                        .sql-editor(ui-ace='{onLoad: 
aceInit(paragraph), theme: "chrome", mode: "sql", require: 
["ace/ext/language_tools"],' +
+                                        'advanced: {enableSnippets: false, 
enableBasicAutocompletion: true, enableLiveAutocompletion: true}}'
+                                        ng-model='paragraph.query')
+                                    .col-xs-4.col-sm-3
+                                        div(ng-show='caches.length > 0' 
style='padding: 5px 10px' st-table='displayedCaches' st-safe-src='caches')
+                                            lable.labelField.labelFormField 
Caches:
+                                            
i.fa.fa-database.tipField(title='Click to show cache types metadata dialog' 
bs-popover data-template-url='/sql/cache-metadata.html', 
data-placement='bottom', data-trigger='click')
+                                            .input-tip
+                                                input.form-control(type='text' 
st-search placeholder='Filter caches...')
+                                            table.links
+                                                
tbody.scrollable-y(style='max-height: 15em;display:block;' 
ng-model='paragraph.cacheName' bs-radio-group)
+                                                    tr(ng-repeat='cache in 
displayedCaches track by cache.name')
+                                                        td(style='width: 100%')
+                                                            
input.labelField(type='radio' value='{{cache.name}}')
+                                                            label {{cache.name 
|| "&lt;default&gt;"}}
+                                        
.empty-caches(ng-show='displayedCaches.length == 0 && caches.length != 0')
+                                            label Wrong caches filter
+                                        .empty-caches(ng-show='caches.length 
== 0')
+                                            label No caches
+                                .col-sm-12
+                                    hr(style='margin: 0')
+                                .col-sm-12
+                                    .sql-controls
+                                        
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, true)' 
ng-click='actionAvailable(paragraph, true) ? explain(paragraph) : ""' 
data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, 
"explain", true)}}') Explain
+                                        
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, true)' 
ng-click='actionAvailable(paragraph, true) ? execute(paragraph) : ""' 
data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, 
"execute", true)}}') Execute
+                                        
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, false)' 
ng-click='actionAvailable(paragraph, false) ? scan(paragraph): ""' 
data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, 
"execute scan", false)}}') Scan
+                                        .pull-right
+                                            labelHide System columns:
+                                            
a.btn.btn-default.fa.fa-bars.tipLabel(ng-class='{"btn-info": 
paragraph.systemColumns}' ng-click='toggleSystemColumns(paragraph)' 
ng-disabled='paragraph.disabledSystemColumns' bs-tooltip data-title='Show 
"_KEY", "_VAL" columns')
+                                            label.tipLabel Refresh rate:
+                                            
button.btn.btn-default.fa.fa-clock-o.tipLabel(title='Click to show refresh rate 
dialog' ng-class='{"btn-info": paragraph.rate && paragraph.rate.installed}' 
bs-popover data-template-url='/sql/paragraph-rate.html' data-placement='left' 
data-auto-close='1' data-trigger='click') {{rateAsString(paragraph)}}
+                                            label.tipLabel Page size:
+                                            
button.select-toggle.fieldButton.btn.btn-default(ng-model='paragraph.pageSize' 
bs-options='item for item in pageSizes' bs-select bs-tooltip data-title='Max 
number of rows to show in query result as one page')
+                                .col-sm-12(ng-show='paragraph.errMsg')
+                                    hr(style='margin-top: 0; margin-bottom: 
10px')
+                                    
.sql-error-result(ng-show='paragraph.errMsg') Error: {{paragraph.errMsg}}
+                                .col-sm-12(ng-show='!paragraph.errMsg && 
paragraph.result != "none"')
+                                    hr(style='margin-top: 0; margin-bottom: 
10px')
+                                    
.sql-empty-result(ng-show='!paragraph.nonEmpty()') Result set is empty
+                                    div(ng-show='paragraph.table() && 
paragraph.nonEmpty()')
+                                        .sql-table-total.row
+                                            .col-xs-4
+                                                label Page #&nbsp;
+                                                b 
{{paragraph.page}}&nbsp;&nbsp;&nbsp;
+                                                label Results so far:&nbsp;
+                                                b {{paragraph.rows.length + 
paragraph.total}}
+                                            .col-xs-4
                                                 +result-toolbar
-                                        label.margin-top-dflt Charts do not 
support&nbsp
-                                            b Explain
-                                            | &nbsp;and&nbsp;
-                                            b Scan
-                                            | &nbsp;query
-                                div(ng-show='queryExecuted(paragraph) && 
!paragraph.refreshExecuting()')
-                                    -var nextVisibleCondition = 
'paragraph.queryId && (paragraph.table() || paragraph.chart() && 
paragraph.queryExecute() && (paragraph.timeLineSupported() || 
!paragraph.chartTimeLineEnabled()))'
+                                            .col-xs-4
+                                                
.btn-group.pull-right(ng-disabled='paragraph.loading')
+                                                    
button.btn.btn-primary.fieldButton(ng-click='exportCsv(paragraph)' bs-tooltip 
data-title='{{actionTooltip(paragraph, "export", false)}}') Export
+                                                    
button.btn.btn-primary(id='export-item-dropdown' data-toggle='dropdown' 
data-container='body' bs-dropdown='exportDropdown' 
data-placement='bottom-right')
+                                                        span.caret
+                                        .grid(ui-grid='paragraph.gridOptions' 
ui-grid-auto-resize ui-grid-exporter ng-style='{ height: 
paragraph.gridOptions.height }')
+                                    div(ng-show='paragraph.chart() && 
paragraph.nonEmpty()')
+                                        div(ng-show='paragraph.queryExecute()')
+                                            +chart-settings
+                                            
div(ng-show='paragraph.chartColumns.length > 0 && 
!paragraph.chartColumnsConfigured()')
+                                                .sql-empty-result Cannot 
display chart. Please configure axis using&nbsp
+                                                    b Chart settings
+                                            
div(ng-show='paragraph.chartColumns.length == 0')
+                                                .sql-empty-result Cannot 
display chart. Result set must contain Java build-in type columns. Please 
change query and execute it again.
+                                            
div(ng-show='paragraph.chartColumnsConfigured()')
+                                                
div(ng-show='paragraph.timeLineSupported() || 
!paragraph.chartTimeLineEnabled()')
+                                                    div(ng-repeat='chart in 
paragraph.charts')
+                                                        
nvd3(options='chart.options' data='chart.data' api='chart.api')
+                                                
.sql-empty-result(ng-show='!paragraph.timeLineSupported() && 
paragraph.chartTimeLineEnabled()') Pie chart does not support 'TIME_LINE' 
column for X-axis. Please use another column for X-axis or switch to another 
chart.
+                                        
.sql-empty-result(ng-hide='paragraph.queryExecute()')
+                                            .row
+                                                .col-xs-4.col-xs-offset-4
+                                                    +result-toolbar
+                                            label.margin-top-dflt Charts do 
not support&nbsp
+                                                b Explain
+                                                | &nbsp;and&nbsp;
+                                                b Scan
+                                                | &nbsp;query
+                                    div(ng-show='queryExecuted(paragraph) && 
!paragraph.refreshExecuting()')
+                                        -var nextVisibleCondition = 
'paragraph.queryId && (paragraph.table() || paragraph.chart() && 
paragraph.queryExecute() && (paragraph.timeLineSupported() || 
!paragraph.chartTimeLineEnabled()))'
 
-                                    hr(style='margin-top: 0; margin-bottom: 
5px')
-                                    a(ng-show='paragraph.queryArgs.type' 
style='float: left; margin-left: 5px; margin-bottom: 5px' 
ng-click='showResultQuery(paragraph)') Show query
-                                    
i.fa.fa-chevron-circle-right(ng-show=nextVisibleCondition style='float: 
right;margin-right: 10px;' ng-click='nextPage(paragraph)')
-                                    a(ng-show=nextVisibleCondition 
style='float: right; margin-bottom: 5px;margin-right: 5px;' 
ng-click='nextPage(paragraph)') Next
+                                        hr(style='margin-top: 0; 
margin-bottom: 5px')
+                                        a(ng-show='paragraph.queryArgs.type' 
style='float: left; margin-left: 5px; margin-bottom: 5px' 
ng-click='showResultQuery(paragraph)') Show query
+                                        
i.fa.fa-chevron-circle-right(ng-show=nextVisibleCondition style='float: 
right;margin-right: 10px;' ng-click='nextPage(paragraph)')
+                                        a(ng-show=nextVisibleCondition 
style='float: right; margin-bottom: 5px;margin-right: 5px;' 
ng-click='nextPage(paragraph)') Next

Reply via email to