Current session login and Last login functionality added in the client code (related...
authorNatasa Kapravelou <akapravelou@gmail.com>
Thu, 9 Dec 2010 15:52:41 +0000 (17:52 +0200)
committerNatasa Kapravelou <akapravelou@gmail.com>
Thu, 9 Dec 2010 15:52:41 +0000 (17:52 +0200)
src/gr/ebs/gss/client/StatusPanel.java
src/gr/ebs/gss/client/rest/resource/UserResource.java
src/gr/ebs/gss/server/rest/UserHandler.java

index c4df55e..63d9df9 100644 (file)
@@ -45,6 +45,7 @@ public class StatusPanel extends Composite {
        private HTML quotaIcon = new HTML("");
        private HTML quotaLabel = new HTML("");
        private HTML lastLoginLabel = new HTML("");
+       private HTML currentLoginLabel = new HTML("");
        private HTML currentlyShowingLabel = new HTML("");
 
        /**
@@ -68,7 +69,7 @@ public class StatusPanel extends Composite {
                ImageResource yellowSize();
 
                @Source("gr/ebs/gss/resources/xclock.png")
-               ImageResource lastLogin();
+               ImageResource lastLogin();              
        }
 
        private final Images images;
@@ -104,6 +105,8 @@ public class StatusPanel extends Composite {
                middle.add(AbstractImagePrototype.create(images.lastLogin()).createImage());
                middle.add(new HTML("<b>Last login:</b> "));
                middle.add(lastLoginLabel);
+               middle.add(new HTML("<b> - Current session login:</b> "));
+               middle.add(currentLoginLabel);
                right.add(currentlyShowingLabel);
                outer.setStyleName("statusbar-inner");
                left.setStyleName("statusbar-inner");
@@ -150,6 +153,7 @@ public class StatusPanel extends Composite {
                }
                final DateTimeFormat formatter = DateTimeFormat.getFormat("d/M/yyyy h:mm a");
                lastLoginLabel.setHTML(formatter.format(user.getLastLogin()));
+               currentLoginLabel.setHTML(formatter.format(user.getCurrentLogin()));
        }
 
        /**
index 6669591..9f505b3 100644 (file)
@@ -59,6 +59,8 @@ public class UserResource extends RestResource {
        private String announcement;
 
        private Date lastLogin;
+       
+       private Date currentLogin;
 
        /**
         * Retrieve the name.
@@ -305,6 +307,15 @@ public class UserResource extends RestResource {
                return lastLogin;
        }
 
+       /**
+        * Retrieve the currentLogin.
+        *
+        * @return the currentLogin
+        */
+       public Date getCurrentLogin() {
+               return currentLogin;
+       }
+
        @Override
        public void createFromJSON(String text) {
                JSONObject json = (JSONObject) JSONParser.parse(text);
@@ -320,6 +331,8 @@ public class UserResource extends RestResource {
                announcement = unmarshallString(json, "announcement");
                if (json.get("lastLogin") != null)
                        lastLogin = new Date(new Long(json.get("lastLogin").toString()));
+               if (json.get("currentLogin") != null)
+                       currentLogin = new Date(new Long(json.get("currentLogin").toString()));                 
                if (json.get("creationDate") != null)
                        creationDate = new Date(new Long(json.get("creationDate").toString()));
                if (json.get("modificationDate") != null)
index 8e142aa..bb07d39 100644 (file)
@@ -99,8 +99,8 @@ public class UserHandler extends RequestHandler {
                        Date currentLoginDate = currentLogin.getLoginDate();
                        UserLogin lastLogin = userLogins.get(1);
                        Date lastLoginDate = lastLogin.getLoginDate();                                          
-                       json.put("lastlogin", lastLoginDate)
-                               .put("currentlogin", currentLoginDate);                         
+                       json.put("lastLogin", lastLoginDate.getTime())
+                               .put("currentLogin", currentLoginDate.getTime());                               
                } catch (JSONException e) {
                        logger.error("", e);
                        resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);