ソースを参照

[spark] Only show the assist panel when there is a base URL set

Johan Ahlen 10 年 前
コミット
997da22

+ 3 - 4
apps/spark/src/spark/static/spark/js/spark.ko.js

@@ -860,15 +860,14 @@ function EditorViewModel(notebooks, options) {
     $("#removeSnippetModal").modal("show");
   };
 
-  self.isLeftPanelVisible = ko.observable($.totalStorage('spark_left_panel_visible') != null && $.totalStorage('spark_left_panel_visible'));
+  self.assistAvailable = 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.assistContent = ko.observable();
-  self.assistSelectedMainObject = ko.observable();
-
   self.availableSnippets = ko.mapping.fromJS(options.languages);
   self.snippetPlaceholders = options.snippet_placeholders;
 

+ 3 - 3
apps/spark/src/spark/templates/editor_components.mako

@@ -204,7 +204,7 @@ from desktop.views import _ko
 </div>
 
 
-<a title="${_('Toggle Assist')}" class="pointer show-assist" data-bind="visible: !$root.isLeftPanelVisible(), click: function() { $root.isLeftPanelVisible(true) }">
+<a title="${_('Toggle Assist')}" class="pointer show-assist" data-bind="visible: !$root.isLeftPanelVisible() && $root.assistAvailable, click: function() { $root.isLeftPanelVisible(true) }">
   <i class="fa fa-chevron-right"></i>
 </a>
 
@@ -219,13 +219,13 @@ from desktop.views import _ko
 </div>
 
 <script type="text/html" id="notebook">
-  <div class="assist-container left-panel" data-bind="visible: $root.isLeftPanelVisible()">
+  <div class="assist-container left-panel" data-bind="visible: $root.isLeftPanelVisible() && $root.assistAvailable">
     <a title="${_('Toggle Assist')}" class="pointer hide-assist" data-bind="click: function() { $root.isLeftPanelVisible(false) }">
       <i class="fa fa-chevron-left"></i>
     </a>
     <div class="assist" data-bind="component: { name: 'assist-panel', params: { assist: assist, appName: 'spark' }}"></div>
   </div>
-  <div class="resizer" data-bind="visible: $root.isLeftPanelVisible(), splitDraggable : { appName: 'spark', leftPanelVisible: $root.isLeftPanelVisible }"><div class="resize-bar">&nbsp;</div></div>
+  <div class="resizer" data-bind="visible: $root.isLeftPanelVisible() && $root.assistAvailable, splitDraggable : { appName: 'spark', leftPanelVisible: $root.isLeftPanelVisible }"><div class="resize-bar">&nbsp;</div></div>
   <div class="right-panel" data-bind="event: { scroll: function(){ $(document).trigger('hideAutocomplete'); } }">
     <div>
       <div class="row-fluid row-container sortable-snippets" data-bind="css: {'is-editing': $root.isEditing},

+ 1 - 0
apps/spark/src/spark/templates/notebook.mako

@@ -76,6 +76,7 @@ ${ editorComponents.commonJS() }
   });
 
   var options = ${ options_json | n,unicode };
+  options.assistAvailable = "${ autocomplete_base_url | n,unicode }" !== "";
 
   viewModel = new EditorViewModel(${ notebooks_json | n,unicode }, options);
   ko.applyBindings(viewModel);