Browse Source

[assist] Unify the panel shown property

Enrico Berti 9 years ago
parent
commit
7905e6a

+ 4 - 6
apps/beeswax/src/beeswax/templates/create_database.mako

@@ -252,10 +252,12 @@ ${ assist.assistPanel() }
 
     function MetastoreViewModel(options) {
       var self = this;
+      self.assistHelper = AssistHelper.getInstance(options);
+
       self.assistAvailable = ko.observable(true);
-      self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+      self.isLeftPanelVisible = ko.observable();
+      self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
-      self.assistHelper = AssistHelper.getInstance(options);
 
       huePubSub.subscribe("assist.table.selected", function (tableDef) {
         location.href = '/metastore/table/' + tableDef.database + '/' + tableDef.name;
@@ -264,10 +266,6 @@ ${ assist.assistPanel() }
       huePubSub.subscribe("assist.database.selected", function (databaseDef) {
         location.href = '/metastore/tables/' + databaseDef.name;
       });
-
-      self.isLeftPanelVisible.subscribe(function (newValue) {
-        $.totalStorage('spark_left_panel_visible', newValue);
-      });
     }
 
     $(document).ready(function () {

+ 3 - 6
apps/beeswax/src/beeswax/templates/create_table_manually.mako

@@ -550,10 +550,11 @@ ${ assist.assistPanel() }
 
     function MetastoreViewModel(options) {
       var self = this;
+      self.assistHelper = AssistHelper.getInstance(options);
       self.assistAvailable = ko.observable(true);
-      self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+      self.isLeftPanelVisible = ko.observable();
+      self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
-      self.assistHelper = AssistHelper.getInstance(options);
 
       huePubSub.subscribe("assist.table.selected", function (tableDef) {
         location.href = '/metastore/table/' + tableDef.database + '/' + tableDef.name;
@@ -562,10 +563,6 @@ ${ assist.assistPanel() }
       huePubSub.subscribe("assist.database.selected", function (databaseDef) {
         location.href = '/metastore/tables/' + databaseDef.name;
       });
-
-      self.isLeftPanelVisible.subscribe(function (newValue) {
-        $.totalStorage('spark_left_panel_visible', newValue);
-      });
     }
 
     $(document).ready(function () {

+ 3 - 6
apps/beeswax/src/beeswax/templates/import_wizard_choose_delimiter.mako

@@ -205,10 +205,11 @@ ${ assist.assistPanel() }
 
     function MetastoreViewModel(options) {
       var self = this;
+      self.assistHelper = AssistHelper.getInstance(options);
       self.assistAvailable = ko.observable(true);
-      self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+      self.isLeftPanelVisible = ko.observable();
+      self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
-      self.assistHelper = AssistHelper.getInstance(options);
 
       huePubSub.subscribe("assist.table.selected", function (tableDef) {
         location.href = '/metastore/table/' + tableDef.database + '/' + tableDef.name;
@@ -217,10 +218,6 @@ ${ assist.assistPanel() }
       huePubSub.subscribe("assist.database.selected", function (databaseDef) {
         location.href = '/metastore/tables/' + databaseDef.name;
       });
-
-      self.isLeftPanelVisible.subscribe(function (newValue) {
-        $.totalStorage('spark_left_panel_visible', newValue);
-      });
     }
 
     $(document).ready(function () {

+ 3 - 6
apps/beeswax/src/beeswax/templates/import_wizard_choose_file.mako

@@ -228,10 +228,11 @@ ${ assist.assistPanel() }
 
     function MetastoreViewModel(options) {
       var self = this;
+      self.assistHelper = AssistHelper.getInstance(options);
       self.assistAvailable = ko.observable(true);
-      self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+      self.isLeftPanelVisible = ko.observable();
+      self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
-      self.assistHelper = AssistHelper.getInstance(options);
 
       huePubSub.subscribe("assist.table.selected", function (tableDef) {
         location.href = '/metastore/table/' + tableDef.database + '/' + tableDef.name;
@@ -240,10 +241,6 @@ ${ assist.assistPanel() }
       huePubSub.subscribe("assist.database.selected", function (databaseDef) {
         location.href = '/metastore/tables/' + databaseDef.name;
       });
-
-      self.isLeftPanelVisible.subscribe(function (newValue) {
-        $.totalStorage('spark_left_panel_visible', newValue);
-      });
     }
 
     $(document).ready(function () {

+ 3 - 6
apps/beeswax/src/beeswax/templates/import_wizard_define_columns.mako

@@ -239,10 +239,11 @@ ${ assist.assistPanel() }
 
     function MetastoreViewModel(options) {
       var self = this;
+      self.assistHelper = AssistHelper.getInstance(options);
       self.assistAvailable = ko.observable(true);
-      self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+      self.isLeftPanelVisible = ko.observable();
+      self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
-      self.assistHelper = AssistHelper.getInstance(options);
 
       huePubSub.subscribe("assist.table.selected", function (tableDef) {
         location.href = '/metastore/table/' + tableDef.database + '/' + tableDef.name;
@@ -251,10 +252,6 @@ ${ assist.assistPanel() }
       huePubSub.subscribe("assist.database.selected", function (databaseDef) {
         location.href = '/metastore/tables/' + databaseDef.name;
       });
-
-      self.isLeftPanelVisible.subscribe(function (newValue) {
-        $.totalStorage('spark_left_panel_visible', newValue);
-      });
     }
 
     $(document).ready(function () {

+ 3 - 6
apps/metastore/src/metastore/static/metastore/js/metastore.ko.js

@@ -422,9 +422,10 @@
   function MetastoreViewModel(options) {
     var self = this;
     self.assistAvailable = ko.observable(true);
-    self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
-
     self.assistHelper = AssistHelper.getInstance(options);
+    self.isLeftPanelVisible = ko.observable();
+    self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
+
 
     self.reloading = ko.observable(false);
     self.loading = ko.observable(false);
@@ -565,10 +566,6 @@
       });
     });
 
-    self.isLeftPanelVisible.subscribe(function (newValue) {
-      $.totalStorage('spark_left_panel_visible', newValue);
-    });
-
     huePubSub.subscribe('metastore.url.change', function () {
       if (self.database() && self.database().table()) {
         hueUtils.changeURL('/metastore/table/' + self.database().name + '/' + self.database().table().name);

+ 3 - 6
apps/metastore/src/metastore/templates/describe_partitions.mako

@@ -191,10 +191,11 @@ ${ assist.assistPanel() }
 
     function PartitionViewModel(options, partition_keys_json, partition_values_json) {
       var self = this;
+      self.assistHelper = AssistHelper.getInstance(options);
       self.assistAvailable = ko.observable(true);
-      self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+      self.isLeftPanelVisible = ko.observable();
+      self.assistHelper.withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
-      self.assistHelper = AssistHelper.getInstance(options);
 
       self.isLoading = ko.observable(false);
 
@@ -264,10 +265,6 @@ ${ assist.assistPanel() }
       huePubSub.subscribe("assist.database.selected", function (databaseDef) {
         location.href = '/metastore/tables/' + databaseDef.name;
       });
-
-      self.isLeftPanelVisible.subscribe(function (newValue) {
-        $.totalStorage('spark_left_panel_visible', newValue);
-      });
     }
 
     $(document).ready(function () {

+ 2 - 0
desktop/core/src/desktop/static/desktop/js/ko.hue-bindings.js

@@ -1161,6 +1161,8 @@
       resizeByRatio();
       $(window).resize(resizeByRatio);
 
+      huePubSub.subscribe('assist.forceResize', resizeByRatio);
+
       $allExtras.show();
       $allPanels.show();
 

+ 2 - 5
desktop/libs/notebook/src/notebook/static/notebook/js/notebook.ko.js

@@ -1182,11 +1182,8 @@
 
     self.assistAvailable = ko.observable(options.assistAvailable);
 
-    self.isLeftPanelVisible = ko.observable(self.assistAvailable() && $.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
-
-    self.isLeftPanelVisible.subscribe(function(newValue) {
-      $.totalStorage('spark_left_panel_visible', newValue);
-    });
+    self.isLeftPanelVisible = ko.observable();
+    AssistHelper.getInstance(self).withTotalStorage('assist', 'assist_panel_visible', self.isLeftPanelVisible, true);
 
     self.availableSnippets = ko.mapping.fromJS(options.languages);