瀏覽代碼

HUE-6756 [home] Apply the active document type for text search

Johan Ahlen 8 年之前
父節點
當前提交
0009997cc0

+ 6 - 9
desktop/core/src/desktop/static/desktop/js/apiHelper.js

@@ -688,11 +688,15 @@ var ApiHelper = (function () {
       return;
     }
 
-    var parameters = {
+    var types = options.type ? [options.type, 'directory'] : ['directory'];
+
+    $.ajax({
       url: DOCUMENTS_API,
       data: {
         uuid: options.uuid,
+        type: types
       },
+      traditional: !!options.type,
       success: function (data) {
         if (! self.successResponseIsError(data)) {
           promise.resolve(data);
@@ -700,14 +704,7 @@ var ApiHelper = (function () {
           promise.reject(data);
         }
       }
-    };
-
-    if (window.location.pathname.indexOf('/home') > -1 && window.location.getParameter('type') !== '') {
-      parameters['data']['type'] = ['directory', window.location.getParameter('type')];
-      parameters['traditional'] = true;
-    }
-
-    $.ajax(parameters).fail(promise.reject);
+    }).fail(promise.reject);
   };
 
   /**

+ 5 - 1
desktop/core/src/desktop/static/desktop/js/document/hueFileEntry.js

@@ -84,6 +84,7 @@ var HueFileEntry = (function () {
     self.user = options.user;
     self.userGroups = options.userGroups;
     self.superuser = options.superuser;
+    self.serverTypeFilter = options.serverTypeFilter;
 
     self.document = ko.observable();
     self.selectedDocsWithDependents = ko.observable([]);
@@ -408,7 +409,7 @@ var HueFileEntry = (function () {
           self.activeEntry().load();
         }
       };
-    };
+    }
     moveNext();
   };
 
@@ -419,6 +420,7 @@ var HueFileEntry = (function () {
       activeSort: self.activeSort,
       trashEntry: self.trashEntry,
       apiHelper: self.apiHelper,
+      serverTypeFilter: self.serverTypeFilter,
       app: self.app,
       user: self.user,
       superuser: self.superuser
@@ -452,6 +454,7 @@ var HueFileEntry = (function () {
     self.apiHelper.searchDocuments({
       uuid: owner.uuid,
       query: query,
+      type: self.serverTypeFilter(),
       successCallback: function (data) {
         resultEntry.hasErrors(false);
         var newEntries = [];
@@ -522,6 +525,7 @@ var HueFileEntry = (function () {
     if (self.app === 'documents') {
       self.apiHelper.fetchDocuments({
         uuid: self.definition().uuid,
+        type: self.serverTypeFilter(),
         successCallback: function(data) {
           self.definition(data.document);
           self.hasErrors(false);

+ 1 - 0
desktop/core/src/desktop/static/desktop/js/home2.vm.js

@@ -36,6 +36,7 @@ var HomeViewModel = (function () {
     self.activeEntry = ko.observable();
     self.trashEntry = ko.observable();
     self.activeEntry(new HueFileEntry({
+      serverTypeFilter: ko.observable(window.location.getParameter('type') !== '' ? window.location.getParameter('type') : null),
       activeEntry: self.activeEntry,
       trashEntry: self.trashEntry,
       apiHelper: self.apiHelper,