Merge branch 'design2015' of ssh://sapsailing.com/home/trac/git into design2015

# By Steffen Schaefer
# Via Steffen Schaefer
* 'design2015' of ssh://sapsailing.com/home/trac/git:
  Implemented sharing buttons for event and series
  The available space is now used more efficiently for the event/series header
This commit is contained in:
Papick Garcia Taboada committed 2015-04-29 13:38:22 +02:00
commit 35ee52f7d2
6 files changed
+33 -22

No files matched your search

@@ -1,15 +1,17 @@
package com.sap.sailing.gwt.home.client.shared.sharing;
import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.AnchorElement;
import com.google.gwt.http.client.UrlBuilder;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.Widget;
public class SharingButtons extends Composite {
// private static SharingButtonsUiBinder uiBinder = GWT.create(SharingButtonsUiBinder.class);
private static SharingButtonsUiBinder uiBinder = GWT.create(SharingButtonsUiBinder.class);
interface SharingButtonsUiBinder extends UiBinder<Widget, SharingButtons> {
}
@@ -20,22 +22,19 @@ public class SharingButtons extends Composite {
public SharingButtons() {
SharingButtonsResources.INSTANCE.css().ensureInjected();
initWidget(new FlowPanel());
// TODO implement social sharing functionality
// initWidget(uiBinder.createAndBindUi(this));
initWidget(uiBinder.createAndBindUi(this));
}
public void setUp(SharingMetadataProvider provider) {
// TODO implement social sharing functionality
// String shortText = provider.getShortText();
// String longText = provider.getLongText(Window.Location.getHref());
//
// // URLBuilder doesn't work for the Mail link as spaces in parameters are encodes using "+" instead of "%20". This causes problems in Mail programs that do not decode "+" as space.
// String mailLink = "mailto:?subject="+ URL.encode(shortText)+"&body=" + URL.encode(longText);
// mail.setHref(mailLink);
// UrlBuilder twitterLink = new UrlBuilder().setProtocol("https").setHost("twitter.com").setPath("intent/tweet").setParameter("text", shortText).setParameter("url", Window.Location.getHref()).setParameter("short_url_length", "8");
// twitter.setHref(twitterLink.buildString());
// UrlBuilder facebookLink = new UrlBuilder().setProtocol("https").setHost("www.facebook.com").setPath("dialog/feed").setParameter("app_id", "145634995501895").setParameter("display", "page").setParameter("caption", shortText).setParameter("link", Window.Location.getHref()).setParameter("redirect_uri", Window.Location.getHref());
// facebook.setHref(facebookLink.buildString());
String shortText = provider.getShortText();
String longText = provider.getLongText(Window.Location.getHref());
UrlBuilder mailtoLink = new UrlBuilder().setProtocol("mailto").setParameter("subject", shortText).setParameter("body", longText);
// URLBuilder encodes spaces in parameters using "+" instead of "%20". This causes problems in Mail programs that do not decode "+" as space.
mail.setHref(mailtoLink.buildString().replace("+", "%20"));
UrlBuilder twitterLink = new UrlBuilder().setProtocol("https").setHost("twitter.com").setPath("intent/tweet").setParameter("text", shortText).setParameter("url", Window.Location.getHref()).setParameter("short_url_length", "8");
twitter.setHref(twitterLink.buildString());
UrlBuilder facebookLink = new UrlBuilder().setProtocol("https").setHost("www.facebook.com").setPath("dialog/feed").setParameter("display", "page").setParameter("caption", shortText).setParameter("link", Window.Location.getHref()).setParameter("redirect_uri", Window.Location.getHref());
facebook.setHref(facebookLink.buildString());
}
}
@@ -7,8 +7,8 @@
<ui:style>
</ui:style>
<g:HTMLPanel addStyleNames="{local_res.css.eventheader_sharing}">
<a ui:field="mail" title="undefined" class="{local_res.css.eventheader_sharing_item} {local_res.css.eventheader_sharing_itememail}"></a>
<a ui:field="twitter" title="undefined" target="_blank" class="{local_res.css.eventheader_sharing_item} {local_res.css.eventheader_sharing_itemtwitter}"></a>
<a ui:field="facebook" title="undefined" target="_blank" class="{local_res.css.eventheader_sharing_item} {local_res.css.eventheader_sharing_itemfacebook}"></a>
<a ui:field="mail" title="{i18n.sharingMailTooltip}" class="{local_res.css.eventheader_sharing_item} {local_res.css.eventheader_sharing_itememail}"></a>
<a ui:field="twitter" title="{i18n.sharingTwitterTooltip}" target="_blank" class="{local_res.css.eventheader_sharing_item} {local_res.css.eventheader_sharing_itemtwitter}"></a>
<a ui:field="facebook" title="{i18n.sharingFacebookTooltip}" target="_blank" class="{local_res.css.eventheader_sharing_item} {local_res.css.eventheader_sharing_itemfacebook}"></a>
</g:HTMLPanel>
</ui:UiBinder>
@@ -1056,6 +1056,9 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages, c
String withNamePrefix();
String pleaseSelectASeriesFirst();
String upcommingEventStartsInDays(@PluralCount(DefaultRule_0_1_2_n.class) int days);
String sharingMailTooltip();
String sharingTwitterTooltip();
String sharingFacebookTooltip();
String eventSharingShortText(String eventName, String venue, String dateString);
String eventSharingLongText(String eventName, String venue, String dateString, String url);
String seriesSharingShortText(String seriesName);
@@ -1034,10 +1034,13 @@ pleaseSelectASeriesFirst=Please select a series first.
upcommingEventStartsInDays=in {0,number} days
upcommingEventStartsInDays[one]=tomorrow
upcommingEventStartsInDays[none]=today
sharingMailTooltip=Share by mail
sharingTwitterTooltip=Share on Twitter
sharingFacebookTooltip=Share on Facebook
#String eventSharingShortText(String eventName, String venue, String dateString);
eventSharingShortText={0} in {1} on {2}
#String eventSharingLongText(String eventName, String venue, String dateString, String url);
eventSharingLongText=I''d like to share {0} in {1} on {2}. Details on: {3}
eventSharingLongText=I''d like to share {0} in {1} on {2}. Details on: \n{3}
#String seriesSharingLongText(String seriesName, String url);
seriesSharingLongText=I''d like to share series {0}. Details: {1}
#String seriesSharingShortText(String seriesName);
@@ -1028,10 +1028,13 @@ pleaseSelectASeriesFirst=Bitte zuerst eine Serie auswählen.
upcommingEventStartsInDays=in {0,number} Tagen
upcommingEventStartsInDays[one]=morgen
upcommingEventStartsInDays[none]=heute
sharingMailTooltip=Per Mail teilen
sharingTwitterTooltip=Auf Twitter teilen
sharingFacebookTooltip=Auf Facebook teilen
#String eventSharingShortText(String eventName, String venue, String dateString);
eventSharingShortText={0} in {1} on {2}
#String eventSharingLongText(String eventName, String venue, String dateString, String url);
eventSharingLongText=I''d like to share {0} in {1} on {2}. Details on: {3}
eventSharingLongText=I''d like to share {0} in {1} on {2}. Details on: \n{3}
#String seriesSharingLongText(String seriesName, String url);
seriesSharingLongText=I''d like to share series {0}. Details: {1}
#String seriesSharingShortText(String seriesName);
@@ -989,10 +989,13 @@ pleaseSelectASeriesFirst=Please select a series first.
upcommingEventStartsInDays=в {0,number} дней
upcommingEventStartsInDays[one]=завтра
upcommingEventStartsInDays[none]=сегодня
sharingMailTooltip=Share by mail
sharingTwitterTooltip=Share on Twitter
sharingFacebookTooltip=Share on Facebook
#String eventSharingShortText(String eventName, String venue, String dateString);
eventSharingShortText={0} in {1} on {2}
#String eventSharingLongText(String eventName, String venue, String dateString, String url);
eventSharingLongText=I''d like to share {0} in {1} on {2}. Details on: {3}
eventSharingLongText=I''d like to share {0} in {1} on {2}. Details on: \n{3}
#String seriesSharingLongText(String seriesName, String url);
seriesSharingLongText=I''d like to share series {0}. Details: {1}
#String seriesSharingShortText(String seriesName);