Forráskód Böngészése

AMBARI-1263. Refactoring of User Management code. (yusaku)

git-svn-id: https://svn.apache.org/repos/asf/incubator/ambari/trunk@1438851 13f79535-47bb-0310-9956-ffa450edef68
Yusaku Sako 12 éve
szülő
commit
fc7928338f

+ 2 - 0
CHANGES.txt

@@ -34,6 +34,8 @@ Trunk (unreleased changes):
 
  IMPROVEMENTS
 
+ AMBARI-1263. Refactoring of User Management code. (yusaku)
+
  AMBARI-1254. Modify App Browser to use server-side paging/sorting/filtering.
  (yusaku)
 

+ 11 - 23
ambari-web/app/models/form.js

@@ -91,20 +91,6 @@ App.Form = Em.View.extend({
 
   }.observes("object"),
 
-  /**
-   *
-   */
-
-  getValues:function () {
-    var values = {};
-    $.each(this.get('fields'), function () {
-      if (!(this.get('displayType') == 'password' && validator.empty(this.get('value')))) { // if this is not empty password field
-        values[this.get('name')] = this.get('value');
-      }
-    });
-    return values;
-  },
-
   clearValues:function () {
     $.each(this.fields, function () {
       this.set('value', '');
@@ -116,19 +102,21 @@ App.Form = Em.View.extend({
    * @return {Boolean}
    */
   save:function () {
-    var thisForm = this;
     var object = this.get('object');
+    var formValues = {};
+    $.each(this.get('fields'), function () {
+      formValues[this.get('name')] = this.get('value');
+    });
     if (!this.get('isObjectNew')) {
-      $.each(this.getValues(), function (i, v) {
-        object.set(i, v);
+      $.each(formValues, function (k, v) {
+        object.set(k, v);
       });
-    } else {
-      if (this.get('className'))
-      {
-        var rec = App.store.createRecord(this.get('className'), this.getValues());
-        //rec.get('stateManager').send('becameClean');
+    }
+    else {
+      if (this.get('className')) {
+        App.store.createRecord(this.get('className'), formValues);
       }
-      else{
+      else {
         console.log("Please define class name for your form " + this.constructor);
       }
     }

+ 3 - 15
ambari-web/app/models/user.js

@@ -26,6 +26,9 @@ App.UserModel = Em.Object.extend({
 
 App.User = DS.Model.extend({
   userName:DS.attr('string'),
+  id:function(){
+    return this.get('userName');
+  }.property('userName'),
   roles:DS.attr('string'),
   isLdap:DS.attr('boolean'),
   type: function(){
@@ -67,12 +70,6 @@ App.EditUserForm = App.Form.extend({
     }
   }.observes('isObjectNew'),
 
-  getValues:function () {
-    var values = this._super();
-    values.type = ['local'];
-    return values;
-  },
-
   isValid:function () {
 
     var isValid = this._super();
@@ -132,17 +129,8 @@ App.CreateUserForm = App.Form.extend({
     }
   }.observes('isObjectNew'),
 
-  getValues:function () {
-    var values = this._super();
-    values.type = ['local'];
-    values.id = values.userName;
-    return values;
-  },
-
-
   isValid:function () {
     var isValid = this._super();
-    thisForm = this;
 
     var passField = this.get('field.password');
     var passRetype = this.get('field.passwordRetype');

+ 1 - 1
ambari-web/app/routes/main.js

@@ -215,7 +215,7 @@ module.exports = Em.Route.extend({
       }),
 
       editUser:Em.Route.extend({
-        route:'/edit/:userName',
+        route:'/edit/:user_id',
         connectOutlets:function (router, user) {
           router.get('mainAdminController').connectOutlet('mainAdminUserEdit', user);
         }

+ 4 - 4
ambari-web/app/views/main/admin/user/create.js

@@ -25,17 +25,17 @@ App.MainAdminUserCreateView = Em.View.extend({
     var parent_controller=this.get("controller").controllers.mainAdminUserController;
     var form = this.get("userForm");
     if(form.isValid()) {
-      form.getField("userName").set('value', form.getValues().userName.toLowerCase());
-      if(form.getValues().admin === "" || form.getValues().admin == true) {
+      form.getField("userName").set('value', form.getField("userName").get('value').toLowerCase());
+      if(form.getField("admin").get('value') === "" || form.getField("admin").get('value') == true) {
         form.getField("roles").set("value","admin,user");
         form.getField("admin").set("value","true");
       } else{
         form.getField("roles").set("value","user");
       }
-      parent_controller.sendCommandToServer('/users/' + form.getValues().userName, "POST" , {
+      parent_controller.sendCommandToServer('/users/' + form.getField("userName").get('value'), "POST" , {
         Users: {
           password: form.getField("password").get('value'),
-          roles: form.getValues().roles
+          roles: form.getField("roles").get('value')
         }
       }, function (success) {
 

+ 11 - 12
ambari-web/app/views/main/admin/user/edit.js

@@ -26,24 +26,24 @@ App.MainAdminUserEditView = Em.View.extend({
     var form = this.get("userForm");
     if(form.isValid()) {
       var Users={};
-      if(form.getValues().admin === "" || form.getValues().admin == true) {
+      if(form.getField("admin").get('value') === "" || form.getField("admin").get('value') == true) {
         form.getField("roles").set("value","admin,user");
         form.getField("admin").set("value","true");
       } else{
         form.getField("roles").set("value","user");
       }
 
-      Users.roles = form.getValues().roles;
+      Users.roles = form.getField("roles").get('value');
 
-      if(form.getValues().new_password != "" && form.getValues().old_password != ""){
-        Users.password=form.getValues().new_password;
-        Users.old_password=form.getValues().old_password;
+      if(form.getField("new_password").get('value') != "" && form.getField("old_password").get('value') != "") {
+        Users.password = form.getField("new_password").get('value');
+        Users.old_password = form.getField("old_password").get('value');
       }
 
-      parent_controller.sendCommandToServer('/users/' + form.getValues().userName, "PUT" , {
+      parent_controller.sendCommandToServer('/users/' + form.getField("userName").get('value'), "PUT" , {
        Users:Users
       }, function (success) {
-
+        console.log('success', success);
         if (!success) {
           return;
         }
@@ -57,14 +57,13 @@ App.MainAdminUserEditView = Em.View.extend({
 
   userForm: App.EditUserForm.create({}),
 
-  didInsertElement: function(){
+  didInsertElement: function() {
     var form = this.get('userForm');
-    if( form.getField("isLdap").get("value") )
-    {
+    if(form.getField("isLdap").get("value")) {
       form.getField("old_password").set("disabled",true);
       form.getField("new_password").set("disabled",true);
-    }else{
-      //debugger;
+    }
+    else {
       form.getField("old_password").set("disabled",false);
       form.getField("new_password").set("disabled",false);
     }