瀏覽代碼

AMBARI-14956. If cluster is not deployed login message is shown 2-3 seconds
(alexantonenko)

Alex Antonenko 9 年之前
父節點
當前提交
62f3a3bb7f
共有 1 個文件被更改,包括 30 次插入18 次删除
  1. 30 18
      ambari-web/app/router.js

+ 30 - 18
ambari-web/app/router.js

@@ -320,22 +320,10 @@ App.Router = Em.Router.extend({
       App.ajax.send({
       App.ajax.send({
         name: 'router.login.message',
         name: 'router.login.message',
         sender: self,
         sender: self,
-        success: 'showLoginMessage'
-
-    });
-
-      // no need to load cluster data if it's already loaded
-      if (self.get('clusterData')) {
-        self.loginGetClustersSuccessCallback(self.get('clusterData'), {}, requestData);
-      }
-      else {
-        App.ajax.send({
-          name: 'router.login.clusters',
-          sender: self,
-          data: requestData,
-          success: 'loginGetClustersSuccessCallback'
-        });
-      }
+        data: requestData,
+        success: 'showLoginMessage',
+        error: 'showLoginMessage'
+      });
     });
     });
   },
   },
 
 
@@ -362,11 +350,12 @@ App.Router = Em.Router.extend({
    * success callback of router.login.message
    * success callback of router.login.message
    * @param {object} data
    * @param {object} data
    */
    */
-  showLoginMessage: function (data){
+  showLoginMessage: function (data, opt, params){
     var response = JSON.parse(data.Settings.content.replace(/\n/g, "\\n")),
     var response = JSON.parse(data.Settings.content.replace(/\n/g, "\\n")),
       text = response.text ? response.text : "",
       text = response.text ? response.text : "",
       buttonText = response.button ? response.button : Em.I18n.t('ok'),
       buttonText = response.button ? response.button : Em.I18n.t('ok'),
-      status = response.status && response.status == "true" ? true : false;
+      status = response.status && response.status == "true" ? true : false,
+      self = this;
 
 
     if(text && status){
     if(text && status){
       return App.ModalPopup.show({
       return App.ModalPopup.show({
@@ -379,9 +368,11 @@ App.Router = Em.Router.extend({
         secondary: null,
         secondary: null,
 
 
         onPrimary: function () {
         onPrimary: function () {
+          self.setClusterData(data, opt, params);
           this.hide();
           this.hide();
         },
         },
         onClose: function () {
         onClose: function () {
+          self.setClusterData(data, opt, params);
           this.hide();
           this.hide();
         },
         },
         didInsertElement: function () {
         didInsertElement: function () {
@@ -391,6 +382,27 @@ App.Router = Em.Router.extend({
     }
     }
   },
   },
 
 
+  setClusterData: function (data, opt, params) {
+    var
+      self = this,
+      requestData = {
+        loginName: params.loginName,
+        loginData: data
+      };
+    // no need to load cluster data if it's already loaded
+    if (this.get('clusterData')) {
+      this.loginGetClustersSuccessCallback(self.get('clusterData'), {}, requestData);
+    }
+    else {
+      App.ajax.send({
+        name: 'router.login.clusters',
+        sender: self,
+        data: requestData,
+        success: 'loginGetClustersSuccessCallback'
+      });
+    }
+  },
+
 
 
   /**
   /**
    * success callback of login request
    * success callback of login request