diff --git a/distro/changelog.xml b/distro/changelog.xml index a5069c4..0fc36e1 100644 --- a/distro/changelog.xml +++ b/distro/changelog.xml @@ -2,6 +2,7 @@ Multi-attachment supported + Image preview available diff --git a/src/main/java/org/gcube/portlets/user/newsfeed/client/NewsFeed.java b/src/main/java/org/gcube/portlets/user/newsfeed/client/NewsFeed.java index a2fd034..bfa4bdd 100644 --- a/src/main/java/org/gcube/portlets/user/newsfeed/client/NewsFeed.java +++ b/src/main/java/org/gcube/portlets/user/newsfeed/client/NewsFeed.java @@ -23,10 +23,10 @@ import com.google.gwt.user.client.ui.RootPanel; public class NewsFeed implements EntryPoint { private final String UNIQUE_DIV = "newsfeedDIV"; - final PageBusAdapter pageBusAdapter = new PageBusAdapter(); + final public static PageBusAdapter pageBusAdapter = new PageBusAdapter(); NewsFeedPanel mainPanel; - - + + public void onModuleLoad() { ClientScopeHelper.getService().setScope(Location.getHref(), new AsyncCallback() { @Override @@ -38,14 +38,14 @@ public class NewsFeed implements EntryPoint { } }); } - + public void init() { - + mainPanel = new NewsFeedPanel(); mainPanel.setWidth("620px"); - + RootPanel.get(UNIQUE_DIV).add(mainPanel); - + ClientFeed notification = new ClientFeed(); //Subscribe to message and associate subsequent receptions with custom subscriber data try { @@ -62,6 +62,9 @@ public class NewsFeed implements EntryPoint { ClientFeed feed = (ClientFeed)event.getMessage((Jsonizer)GWT.create(ClientFeedJsonizer.class)); mainPanel.addJustAddedFeed(feed); + // alert the User statistics widget to increment the number of user's posts (no need to pass info) + pageBusAdapter.PageBusPublish("org.gcube.portal.incrementPostCount", null, null); + } catch (PageBusAdapterException e) { e.printStackTrace(); } @@ -71,5 +74,4 @@ public class NewsFeed implements EntryPoint { } }); } - } diff --git a/src/main/java/org/gcube/portlets/user/newsfeed/client/panels/NewsFeedPanel.java b/src/main/java/org/gcube/portlets/user/newsfeed/client/panels/NewsFeedPanel.java index 0508034..f2a0feb 100644 --- a/src/main/java/org/gcube/portlets/user/newsfeed/client/panels/NewsFeedPanel.java +++ b/src/main/java/org/gcube/portlets/user/newsfeed/client/panels/NewsFeedPanel.java @@ -616,6 +616,7 @@ public class NewsFeedPanel extends Composite { //insert it also in the model so that the user who created it do not get notified about this new update allUpdates.add(0, toAdd); + } /** diff --git a/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/NewFeedsAvailable.java b/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/NewFeedsAvailable.java index 493112a..64d5452 100644 --- a/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/NewFeedsAvailable.java +++ b/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/NewFeedsAvailable.java @@ -10,7 +10,6 @@ import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.Timer; -import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.HTML; import com.google.gwt.user.client.ui.HTMLPanel; diff --git a/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/TweetTemplate.java b/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/TweetTemplate.java index 24f18b8..6679370 100644 --- a/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/TweetTemplate.java +++ b/src/main/java/org/gcube/portlets/user/newsfeed/client/ui/TweetTemplate.java @@ -7,12 +7,15 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import net.eliasbalasis.tibcopagebus4gwt.client.PageBusAdapterException; + import org.gcube.portal.databook.client.GCubeSocialNetworking; import org.gcube.portal.databook.client.util.Encoder; import org.gcube.portal.databook.shared.Attachment; import org.gcube.portal.databook.shared.Comment; import org.gcube.portal.databook.shared.Feed; import org.gcube.portal.databook.shared.UserInfo; +import org.gcube.portlets.user.newsfeed.client.NewsFeed; import org.gcube.portlets.user.newsfeed.client.event.AddLikeEvent; import org.gcube.portlets.user.newsfeed.client.event.DeleteFeedEvent; import org.gcube.portlets.user.newsfeed.client.event.OpenFeedEvent; @@ -163,7 +166,7 @@ public class TweetTemplate extends Composite { EnhancedImage enhancedImage = new EnhancedImage( new com.github.gwtbootstrap.client.ui.Image( - feed.getUriThumbnail()), + feed.getUri()), feed.getLinkTitle(), feed.getLinkTitle(), feed.getUri() @@ -175,12 +178,12 @@ public class TweetTemplate extends Composite { // set handler on the linkpreviewer image to show this carousel linkPreviewer.onImageClickOpenCarousel(carousel); - + // remove next and prev buttons of the carousel since we have only an image carousel.hideArrows(); } - + // add link preview to the preview panel previewPanel.add(linkPreviewer); } @@ -208,13 +211,13 @@ public class TweetTemplate extends Composite { // create first attachment previewer and pass it the carousel AttachmentPreviewer firstAttachmentPreviewer = new AttachmentPreviewer(firstAttachment); - + // check if it is an image if(firstAttachment.getMimeType().contains("image/")){ EnhancedImage enhancedImage = new EnhancedImage( new com.github.gwtbootstrap.client.ui.Image( - feed.getUriThumbnail()), + feed.getUri()), feed.getLinkTitle(), feed.getLinkTitle(), feed.getUri() @@ -224,7 +227,7 @@ public class TweetTemplate extends Composite { firstAttachmentPreviewer.onImageClickOpenCarousel(carousel, enhancedImage); } - + // add the first attachment to the panel attachmentPreviewPanel.add(firstAttachmentPreviewer); @@ -237,14 +240,14 @@ public class TweetTemplate extends Composite { EnhancedImage enhancedImage = new EnhancedImage( new com.github.gwtbootstrap.client.ui.Image( - otherAttachment.getThumbnailURL()), + otherAttachment.getUri()), otherAttachment.getName(), otherAttachment.getName(), otherAttachment.getUri() ); listOfEnhancedImages.add(enhancedImage); - + // pass the carousel attachmentPreviewer.onImageClickOpenCarousel(carousel, enhancedImage); @@ -254,7 +257,7 @@ public class TweetTemplate extends Composite { attachmentPreviewPanel.add(attachmentPreviewer); } - + // update the carousel's images carousel.updateImages(listOfEnhancedImages); @@ -402,8 +405,21 @@ public class TweetTemplate extends Composite { @UiHandler("closeImage") void onDeleteFeedClick(ClickEvent e) { - if (isUsers || myUserInfo.isAdmin()) + if (isUsers || myUserInfo.isAdmin()){ eventBus.fireEvent(new DeleteFeedEvent(this)); + + if(isUsers){ + try { + + // alert the User statistics widget to decrement the number of user's posts (no need to pass info) + NewsFeed.pageBusAdapter.PageBusPublish("org.gcube.portal.decrementPostCount", null, null); + + } catch (PageBusAdapterException e1) { + GWT.log("Unable to send this notification " + e1.toString()); + } + + } + } else { GWT.log("not belong to user"); } 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 e9397c3..2dbe978 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 @@ -124,7 +124,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService */ public String getDevelopmentUser() { String user = NewsConstants.TEST_USER; - // user = "costantino.perciante"; + // user = "costantino.perciante"; return user; } /**