diff --git a/distro/changelog.xml b/distro/changelog.xml index cbea452..f13a9c3 100644 --- a/distro/changelog.xml +++ b/distro/changelog.xml @@ -1,6 +1,6 @@ + date="2014-05-07"> Implemented the automatic scroll back in time for feeds (in VRE scope) Added possibility to unlike alread liked posts diff --git a/src/main/java/org/gcube/portlets/user/newsfeed/server/NewsServiceImpl.java b/src/main/java/org/gcube/portlets/user/newsfeed/server/NewsServiceImpl.java index 553f0c1..1c67be0 100644 --- a/src/main/java/org/gcube/portlets/user/newsfeed/server/NewsServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/newsfeed/server/NewsServiceImpl.java @@ -75,6 +75,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService private static final String SESSION_ADMIN_ATTR = "SESSION_ADMIN_ATTR"; private static final String USER_SETTINGS_ATTR = "USER_SETTINGS_ATTR"; + private static final String TEST_USER = "test.user"; /** * @@ -115,8 +116,8 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService * @return . */ public String getDevelopmentUser() { - String user = "test.user"; -// user = "massimiliano.assante"; + String user = TEST_USER; + //user = "massimiliano.assante"; return user; } /** @@ -133,7 +134,15 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService String fullName = username+" FULL"; String thumbnailURL = "images/Avatar_default.png"; - if (withinPortal) { + boolean isDevelopment = false; + try { + UserLocalServiceUtil.getService(); + } + catch (com.liferay.portal.kernel.bean.BeanLocatorException ex) { + isDevelopment = true; + } + + if (username.compareTo(TEST_USER) != 0 && !isDevelopment) { UserModel user = UserLocalServiceUtil.getUserByScreenName(OrganizationsUtil.getCompany().getCompanyId(), username); thumbnailURL = "/image/user_male_portrait?img_id="+user.getPortraitId(); fullName = user.getFirstName() + " " + user.getLastName(); @@ -154,7 +163,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService else { _log.info("Returning test USER"); CustomConfiguration config = getUserConfiguration(); - UserInfo user = new UserInfo(getASLSession().getUsername(), fullName, thumbnailURL, email, "fakeAccountUrl", true, false, null); + UserInfo user = new UserInfo(session.getUsername(), fullName, thumbnailURL, email, "fakeAccountUrl", true, false, null); return new UserSettings(user, config.getRefreshTime(), session.getScopeName(), config.getVreLabel(), isInfrastructureScope(), config.isShowTimelineSource()); } @@ -470,7 +479,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService } return likeCommitResult; } - + @Override public boolean unlike(String feedid, String feedText, String feedOwnerId) { UserInfo user = getUserSettings().getUserInfo(); @@ -499,7 +508,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService boolean commentCommitResult = false; _log.trace("Trying to add this comment " + commentText); UserInfo user = getUserSettings().getUserInfo(); - + String escapedCommentText = Utils.escapeHtmlAndTransformUrl(commentText); @@ -508,7 +517,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService mentionedUsers = getSelectedUserIds(mentionedUserFullNames); escapedCommentText = Utils.convertMentionPeopleAnchorHTML(escapedCommentText, mentionedUsers); } - + Comment comment = new Comment(UUID.randomUUID().toString(), user.getUsername(), new Date(), feedid, escapedCommentText, user.getFullName(), user.getAvatarId()); try { @@ -527,16 +536,16 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService boolean result = nm.notifyOwnCommentReply(feedOwnerId, feedid, escapeHtml(commentText)); _log.trace("Comment Notification to post owner added? " + result); } - + //if there are users who liked this post they get notified, asynchronously with this thread ArrayList favorites = getAllLikesByFeed(feedid); Thread likesThread = new Thread(new LikeNotificationsThread(commentText, nm, favorites, feedOwnerId)); likesThread.start(); - + //notify the other users who commented this post (excluding the ones above) Thread commentsNotificationthread = new Thread(new CommentNotificationsThread(store, user.getUsername(), comment.getFeedid(), commentText, nm, feedOwnerId, favorites)); commentsNotificationthread.start(); - + //send the notification to the mentioned users, if any if (mentionedUsers != null && mentionedUsers.size() > 0) { Thread thread = new Thread(new MentionNotificationsThread(comment.getFeedid(), commentText, nm, mentionedUsers)); @@ -550,7 +559,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService public Comment editComment(Comment toEdit) { UserInfo user = getUserSettings().getUserInfo(); String escapedCommentText = Utils.escapeHtmlAndTransformUrl(toEdit.getText()); - + Comment edited = new Comment(toEdit.getKey(), toEdit.getUserid(), new Date(), toEdit.getFeedid(), escapedCommentText, user.getFullName(), user.getAvatarId()); try { @@ -909,7 +918,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService } - + } diff --git a/src/main/resources/org/gcube/portlets/user/newsfeed/NewsFeed.gwt.xml b/src/main/resources/org/gcube/portlets/user/newsfeed/NewsFeed.gwt.xml index 61246ea..96b280d 100644 --- a/src/main/resources/org/gcube/portlets/user/newsfeed/NewsFeed.gwt.xml +++ b/src/main/resources/org/gcube/portlets/user/newsfeed/NewsFeed.gwt.xml @@ -4,7 +4,7 @@ - +