Adds messages to the users admin page.

Project: http://git-wip-us.apache.org/repos/asf/rave/repo
Commit: http://git-wip-us.apache.org/repos/asf/rave/commit/c95138cf
Tree: http://git-wip-us.apache.org/repos/asf/rave/tree/c95138cf
Diff: http://git-wip-us.apache.org/repos/asf/rave/diff/c95138cf

Branch: refs/heads/angular
Commit: c95138cf741427359a94139ad1639a7b6ea2f418
Parents: 7e2cf54
Author: Jmeas <[email protected]>
Authored: Wed Aug 20 13:54:35 2014 -0400
Committer: Jmeas <[email protected]>
Committed: Wed Aug 20 13:54:35 2014 -0400

----------------------------------------------------------------------
 .../admin/users/controllers/search-form.js      |  5 ++-
 .../src/subapps/admin/users/controllers/user.js | 13 ++++--
 .../subapps/admin/users/controllers/users.js    |  8 +++-
 .../src/subapps/admin/users/routes.js           |  3 ++
 .../admin/users/services/users-messages.js      | 43 ++++++++++++++++++++
 .../subapps/admin/users/templates/users.html    |  1 +
 rave-portal-ng/src/subapps/admin/users/users.js | 20 +++------
 7 files changed, 71 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/controllers/search-form.js
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/controllers/search-form.js 
b/rave-portal-ng/src/subapps/admin/users/controllers/search-form.js
index 8511477..3aa4e90 100644
--- a/rave-portal-ng/src/subapps/admin/users/controllers/search-form.js
+++ b/rave-portal-ng/src/subapps/admin/users/controllers/search-form.js
@@ -26,8 +26,9 @@ define(function(require) {
         return 'disabled';
       }
       var maxPage = $scope.currentPage === $scope.usersMeta.pageCount;
-      var noPages = !$scope.usersMeta.pageCount;
-      return maxPage || noPages ? 'disabled' : '';
+      var noPages = $scope.usersMeta.pageCount === 0;
+      var onePage = $scope.usersMeta.pageCount === 1;
+      return maxPage || noPages || onePage ? 'disabled' : '';
     };
 
     // Whether or not we show the table

http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/controllers/user.js
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/controllers/user.js 
b/rave-portal-ng/src/subapps/admin/users/controllers/user.js
index afa1e21..4ebb253 100644
--- a/rave-portal-ng/src/subapps/admin/users/controllers/user.js
+++ b/rave-portal-ng/src/subapps/admin/users/controllers/user.js
@@ -7,8 +7,8 @@
 define(function(require) {
   var $ = require('jquery');
 
-  return ['$scope', 'userResource', '$state', '$stateParams', 'user',
-  function($scope, userResource, $state, $stateParams, user) {
+  return ['$scope', 'userResource', '$state', '$stateParams', 'user', 
'usersMessages',
+  function($scope, userResource, $state, $stateParams, user, usersMessages) {
 
     $scope.user = user;
 
@@ -67,7 +67,11 @@ define(function(require) {
       var savedResource = userResource.update(data);
       
       savedResource.$promise
-        .then(ctrl.updateList)
+        .then(function(response) {
+          ctrl.updateList(response);
+          usersMessages.updateMessage(response.username);
+          $state.transitionTo('portal.admin.users');
+        })
         .catch(function(err) {
         });
     };
@@ -81,7 +85,8 @@ define(function(require) {
         .then(function() {
           ctrl.removeFromList();
           $('#confirm-modal').modal('hide');
-          $state.transitionTo('portal.admin.users', {page:1});
+          usersMessages.deleteMessage($scope.user.username);
+          $state.transitionTo('portal.admin.users');
         })
         .catch(function() {
         });

http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/controllers/users.js
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/controllers/users.js 
b/rave-portal-ng/src/subapps/admin/users/controllers/users.js
index 0bcde03..5b629d7 100644
--- a/rave-portal-ng/src/subapps/admin/users/controllers/users.js
+++ b/rave-portal-ng/src/subapps/admin/users/controllers/users.js
@@ -5,8 +5,8 @@
  */
 
 define(function(require) {
-  return ['$scope', '$stateParams', 'pagination', 'usersList', 'usersResource',
-  function($scope, $stateParams, pagination, usersList, usersResource) {
+  return ['$scope', '$stateParams', 'pagination', 'usersList', 
'usersResource', 'usersMessages',
+  function($scope, $stateParams, pagination, usersList, usersResource, 
usersMessages) {
     $scope.currentPage = +$stateParams.page || 0;
 
     usersList.$promise.then(function() {
@@ -20,6 +20,10 @@ define(function(require) {
       });
 
       $scope.usersMeta = usersMeta;
+
+      $scope.showMessage = usersMessages.showMessage;
+      $scope.messageHtml = usersMessages.messageHtml;
+      $scope.messageClassName = usersMessages.messageClassName;
     });
   }];
 });

http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/routes.js
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/routes.js 
b/rave-portal-ng/src/subapps/admin/users/routes.js
index ba04fac..d9e0f50 100644
--- a/rave-portal-ng/src/subapps/admin/users/routes.js
+++ b/rave-portal-ng/src/subapps/admin/users/routes.js
@@ -20,6 +20,9 @@ define(function(require) {
           templateUrl: '/subapps/admin/users/templates/users.html',
           authenticate: true,
           controller: usersCtrl,
+          onExit: ['usersMessages', function(usersMessages) {
+            usersMessages.clearMessage();
+          }],
           resolve: {
             usersList: ['usersResource', '$stateParams',
               function(usersResource, $stateParams) {

http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/services/users-messages.js
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/services/users-messages.js 
b/rave-portal-ng/src/subapps/admin/users/services/users-messages.js
new file mode 100644
index 0000000..f5f8cef
--- /dev/null
+++ b/rave-portal-ng/src/subapps/admin/users/services/users-messages.js
@@ -0,0 +1,43 @@
+/*
+ * usersMessages
+ * A service to show messages on the user page. Because other
+ * states can cause messages to display (namely the category state),
+ * we need a service that's shared between the two.
+ *
+ */
+
+define(function() {
+  return function() {
+    var html = '';
+    var className = '';
+
+    return {
+      updateMessage: function(username) {
+        html = 'Updated user "<b>' + username + '</b>"';
+        className = 'alert-success';
+      },
+
+      deleteMessage: function(username) {
+        html = 'Deleted user "<b>' + username + '</b>"';
+        className = 'alert-success';
+      },
+
+      clearMessage: function() {
+        html = null;
+        className = '';
+      },
+
+      showMessage: function() {
+        return html ? true : false;
+      },
+
+      messageHtml: function() {
+        return html;
+      },
+
+      messageClassName: function() {
+        return className;
+      }
+    };
+  };
+});

http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/templates/users.html
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/templates/users.html 
b/rave-portal-ng/src/subapps/admin/users/templates/users.html
index 3cb0241..ea70910 100644
--- a/rave-portal-ng/src/subapps/admin/users/templates/users.html
+++ b/rave-portal-ng/src/subapps/admin/users/templates/users.html
@@ -1,5 +1,6 @@
 <article ui-view>
   <form class="form-horizontal search-form" ng-controller="searchCtrl">
+    <div class="alert" ng-class="messageClassName()" 
ng-bind-html="messageHtml()" ng-show="showMessage()"></div>
     <h2>
       Showing {{ usersMeta.start }} - {{ usersMeta.end }} of {{ 
usersMeta.totalUsers }} results
     </h2>

http://git-wip-us.apache.org/repos/asf/rave/blob/c95138cf/rave-portal-ng/src/subapps/admin/users/users.js
----------------------------------------------------------------------
diff --git a/rave-portal-ng/src/subapps/admin/users/users.js 
b/rave-portal-ng/src/subapps/admin/users/users.js
index ef10e2b..95e8a3c 100644
--- a/rave-portal-ng/src/subapps/admin/users/users.js
+++ b/rave-portal-ng/src/subapps/admin/users/users.js
@@ -19,20 +19,12 @@ define(function(require) {
   var users = ng.module('admin.users', usersDependencies);
 
   // Register our providers for the users
-  var usersResource = require('./resources/users');
-  users.factory('usersResource', usersResource);
-
-  var userResource = require('./resources/user');
-  users.factory('userResource', userResource);
-  
-  var usersCtrl = require('./controllers/users');
-  users.controller('usersCtrl', usersCtrl);
-
-  var userCtrl = require('./controllers/user');
-  users.controller('userCtrl', userCtrl);
-
-  var searchCtrl = require('./controllers/search-form');
-  users.controller('searchCtrl', searchCtrl);
+  users.factory('usersMessages', require('./services/users-messages'));
+  users.factory('usersResource', require('./resources/users'));
+  users.factory('userResource', require('./resources/user'));
+  users.controller('usersCtrl', require('./controllers/users'));
+  users.controller('userCtrl', require('./controllers/user'));
+  users.controller('searchCtrl', require('./controllers/search-form'));
 
   // Register the routes
   var routes = require('./routes');

Reply via email to