diff --git a/.project b/.project
index 5365685..073215f 100644
--- a/.project
+++ b/.project
@@ -30,6 +30,16 @@
+
+ com.google.gdt.eclipse.core.webAppProjectValidator
+
+
+
+
+ com.google.gwt.eclipse.core.gwtProjectValidator
+
+
+
org.eclipse.jem.workbench.JavaEMFNature
@@ -38,5 +48,6 @@
org.eclipse.m2e.core.maven2Nature
org.eclipse.wst.common.project.facet.core.nature
org.eclipse.wst.jsdt.core.jsNature
+ com.google.gwt.eclipse.core.gwtNature
diff --git a/.settings/com.google.gdt.eclipse.core.prefs b/.settings/com.google.gdt.eclipse.core.prefs
new file mode 100644
index 0000000..4088716
--- /dev/null
+++ b/.settings/com.google.gdt.eclipse.core.prefs
@@ -0,0 +1,4 @@
+eclipse.preferences.version=1
+lastWarOutDir=/Users/massi/Documents/workspace/invite-friends-vre/target/invite-friends-vre-0.0.1-SNAPSHOT
+warSrcDir=src/main/webapp
+warSrcDirIsOutput=false
diff --git a/.settings/com.google.gwt.eclipse.core.prefs b/.settings/com.google.gwt.eclipse.core.prefs
new file mode 100644
index 0000000..f23a752
--- /dev/null
+++ b/.settings/com.google.gwt.eclipse.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+entryPointModules=
diff --git a/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriends.java b/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriends.java
index 9ac6b79..3361fdf 100644
--- a/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriends.java
+++ b/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriends.java
@@ -1,5 +1,7 @@
package org.gcube.portlets.user.invitefriends.client;
+import org.gcube.portlets.user.invitefriends.client.ui.InviteWidget;
+
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
@@ -13,6 +15,6 @@ public class InviteFriends implements EntryPoint {
* This is the entry point method.
*/
public void onModuleLoad() {
- RootPanel.get("invite-friends-DIV").add(new InviteFriendsPanel());
+ RootPanel.get("invite-friends-DIV").add(new InviteWidget());
}
}
diff --git a/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriendsPanel.java b/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriendsPanel.java
deleted file mode 100644
index 4c0e662..0000000
--- a/src/main/java/org/gcube/portlets/user/invitefriends/client/InviteFriendsPanel.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.gcube.portlets.user.invitefriends.client;
-
-import org.gcube.portlets.user.invitefriends.client.resources.Images;
-
-import com.github.gwtbootstrap.client.ui.Button;
-import com.github.gwtbootstrap.client.ui.Label;
-import com.github.gwtbootstrap.client.ui.Modal;
-import com.github.gwtbootstrap.client.ui.ModalFooter;
-import com.github.gwtbootstrap.client.ui.TextBox;
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.event.dom.client.ClickEvent;
-import com.google.gwt.event.dom.client.ClickHandler;
-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.HasAlignment;
-import com.google.gwt.user.client.ui.HasVerticalAlignment;
-import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.Image;
-import com.google.gwt.user.client.ui.VerticalPanel;
-/**
- *
- * @author M. Assante, ISTI-CNR
- *
- */
-public class InviteFriendsPanel extends Composite {
-
- private final InviteServiceAsync service = GWT.create(InviteService.class);
- public static final String DISPLAY_NAME = "Invite people to this VRE";
-
- private Image loadingImage;
-
-
- private VerticalPanel mainPanel;
-
- public InviteFriendsPanel() {
- super();
-
- mainPanel = new VerticalPanel();
-
- mainPanel.setWidth("100%");
- mainPanel.setStyleName("invites-frame");
-
- HTML name = new HTML(DISPLAY_NAME);
- name.setStyleName("invites-title");
-
- HorizontalPanel hp = new HorizontalPanel();
- hp.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE);
- hp.add(name);
-
- TextBox text = new TextBox();
- text.setPlaceholder("e-mail address");
-
- Button send = new Button("Send Invite");
-
- mainPanel.add(hp);
- mainPanel.add(text);
- mainPanel.add(send);
-
- initWidget(mainPanel);
-
- send.addClickHandler(new ClickHandler() {
- @Override
- public void onClick(ClickEvent arg0) {
- Modal mod = new Modal();
-
- mod.add(new Label("Ciao"));
- ModalFooter mf = new ModalFooter();
- Button asend = new Button("Send");
- mf.add(asend);
- mod.setAnimation(true);
- mod.show();
-
- mod.add(mf);
-
- }
- });
-
- }
-
-
- private void showLoader() {
- mainPanel.clear();
- mainPanel.setWidth("100%");
- mainPanel.setHorizontalAlignment(HasAlignment.ALIGN_CENTER);
- mainPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE);
- mainPanel.add(loadingImage);
- }
-}
diff --git a/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/Form.java b/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/Form.java
deleted file mode 100644
index f1f20a8..0000000
--- a/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/Form.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.gcube.portlets.user.invitefriends.client.ui;
-
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.event.dom.client.ClickEvent;
-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.Window;
-import com.google.gwt.user.client.ui.Button;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.HasText;
-import com.google.gwt.user.client.ui.Widget;
-
-public class Form extends Composite implements HasText {
-
- private static FormUiBinder uiBinder = GWT.create(FormUiBinder.class);
-
- interface FormUiBinder extends UiBinder {
- }
-
- public Form() {
- initWidget(uiBinder.createAndBindUi(this));
- }
-
- @UiField
- Button button;
-
- public Form(String firstName) {
- initWidget(uiBinder.createAndBindUi(this));
- button.setText(firstName);
- }
-
- @UiHandler("button")
- void onClick(ClickEvent e) {
- Window.alert("Hello!");
- }
-
- public void setText(String text) {
- button.setText(text);
- }
-
- public String getText() {
- return button.getText();
- }
-
-}
diff --git a/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/Form.ui.xml b/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/Form.ui.xml
deleted file mode 100644
index 3fd6809..0000000
--- a/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/Form.ui.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- .important {
- font-weight: bold;
- }
-
-
- Hello,
-
-
-
\ No newline at end of file
diff --git a/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/InviteWidget.java b/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/InviteWidget.java
new file mode 100644
index 0000000..74c0009
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/InviteWidget.java
@@ -0,0 +1,57 @@
+package org.gcube.portlets.user.invitefriends.client.ui;
+
+import com.github.gwtbootstrap.client.ui.Button;
+import com.github.gwtbootstrap.client.ui.Form;
+import com.github.gwtbootstrap.client.ui.HelpBlock;
+import com.github.gwtbootstrap.client.ui.Modal;
+import com.github.gwtbootstrap.client.ui.TextBox;
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+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.ui.Composite;
+import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.Widget;
+/**
+ *
+ * @author Massimiliano Assante, ISTI-CNR
+ *
+ */
+public class InviteWidget extends Composite {
+
+ public static final String DISPLAY_NAME = "Invite people to this VRE";
+
+ private static InviteWidgetUiBinder uiBinder = GWT
+ .create(InviteWidgetUiBinder.class);
+
+ interface InviteWidgetUiBinder extends UiBinder {
+ }
+
+ @UiField HTML header;
+ @UiField TextBox emailAddress;
+ @UiField Button openModal;
+ @UiField Button cancelInvite;
+ @UiField Button sendInvite;
+ @UiField Modal modalWindow;
+ @UiField Form mainForm;
+ @UiField HelpBlock helpBlock;
+
+ public InviteWidget() {
+ initWidget(uiBinder.createAndBindUi(this));
+ header.setText(DISPLAY_NAME);
+ }
+
+ @UiHandler("openModal")
+ public void onClick(ClickEvent e) {
+ helpBlock.setText("We will send the invitation email to: "+emailAddress.getText());
+ modalWindow.show();
+ }
+
+ @UiHandler("cancelInvite")
+ public void onCancelClick(ClickEvent e) {
+ modalWindow.hide();
+ }
+
+
+}
diff --git a/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/InviteWidget.ui.xml b/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/InviteWidget.ui.xml
new file mode 100644
index 0000000..c52d76c
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/user/invitefriends/client/ui/InviteWidget.ui.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+ Send Invite
+
+
+
+
+
+
+ Please, enter name and lastname of the friend you
+ wish to invite:
+
+
+
+
+
+
+
+
+
+ Cancel
+ Send Invite
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/InviteFriends.css b/src/main/webapp/InviteFriends.css
index f78871a..b08cf9f 100644
--- a/src/main/webapp/InviteFriends.css
+++ b/src/main/webapp/InviteFriends.css
@@ -1,7 +1,10 @@
#invite-friends-DIV {
- margin-right: 10px;
+
}
+.helpFontSize {
+ font-size: 14px;
+}
.invites-title {
display: block;
font-size: 16px;
@@ -11,7 +14,8 @@
}
.invites-frame {
- padding: 10px;
+ padding: 10px 10px 0px;
+ margin-right: 10px;
background-color: #FFF;
border-radius: 6px !important;
-moz-border-radius: 6px !important;