added keypress handlers, removed last name box
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/invite-friends-vre@114609 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
4af42f13c4
commit
d4f121dab1
7
pom.xml
7
pom.xml
|
@ -3,6 +3,13 @@
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||||
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<artifactId>maven-parent</artifactId>
|
||||||
|
<groupId>org.gcube.tools</groupId>
|
||||||
|
<version>1.0.0</version>
|
||||||
|
<relativePath />
|
||||||
|
</parent>
|
||||||
|
|
||||||
<groupId>org.gcube.portlets.user</groupId>
|
<groupId>org.gcube.portlets.user</groupId>
|
||||||
<artifactId>invite-friends-vre</artifactId>
|
<artifactId>invite-friends-vre</artifactId>
|
||||||
<packaging>war</packaging>
|
<packaging>war</packaging>
|
||||||
|
|
|
@ -1,28 +1,30 @@
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
package org.gcube.portlets.user.invitefriends.client.validation;
|
package org.gcube.portlets.user.invitefriends.client.ui;
|
||||||
|
|
||||||
import org.gcube.portlets.user.invitefriends.client.InviteService;
|
import org.gcube.portlets.user.invitefriends.client.InviteService;
|
||||||
import org.gcube.portlets.user.invitefriends.client.InviteServiceAsync;
|
import org.gcube.portlets.user.invitefriends.client.InviteServiceAsync;
|
||||||
|
import org.gcube.portlets.user.invitefriends.client.validation.FormView;
|
||||||
|
|
||||||
import com.github.gwtbootstrap.client.ui.Button;
|
import com.github.gwtbootstrap.client.ui.Button;
|
||||||
import com.github.gwtbootstrap.client.ui.ControlGroup;
|
import com.github.gwtbootstrap.client.ui.ControlGroup;
|
||||||
import com.github.gwtbootstrap.client.ui.HelpBlock;
|
import com.github.gwtbootstrap.client.ui.HelpBlock;
|
||||||
import com.github.gwtbootstrap.client.ui.Icon;
|
|
||||||
import com.github.gwtbootstrap.client.ui.Modal;
|
import com.github.gwtbootstrap.client.ui.Modal;
|
||||||
import com.github.gwtbootstrap.client.ui.TextBox;
|
import com.github.gwtbootstrap.client.ui.TextBox;
|
||||||
import com.github.gwtbootstrap.client.ui.constants.ControlGroupType;
|
import com.github.gwtbootstrap.client.ui.constants.ControlGroupType;
|
||||||
import com.github.gwtbootstrap.client.ui.constants.IconType;
|
|
||||||
import com.google.gwt.core.client.GWT;
|
import com.google.gwt.core.client.GWT;
|
||||||
import com.google.gwt.editor.client.Editor;
|
import com.google.gwt.editor.client.Editor;
|
||||||
import com.google.gwt.editor.client.EditorDriver;
|
import com.google.gwt.editor.client.EditorDriver;
|
||||||
import com.google.gwt.editor.client.SimpleBeanEditorDriver;
|
import com.google.gwt.editor.client.SimpleBeanEditorDriver;
|
||||||
import com.google.gwt.event.dom.client.ClickEvent;
|
import com.google.gwt.event.dom.client.ClickEvent;
|
||||||
|
import com.google.gwt.event.dom.client.KeyCodes;
|
||||||
|
import com.google.gwt.event.dom.client.KeyDownEvent;
|
||||||
|
import com.google.gwt.event.dom.client.KeyDownHandler;
|
||||||
import com.google.gwt.uibinder.client.UiBinder;
|
import com.google.gwt.uibinder.client.UiBinder;
|
||||||
import com.google.gwt.uibinder.client.UiField;
|
import com.google.gwt.uibinder.client.UiField;
|
||||||
import com.google.gwt.uibinder.client.UiHandler;
|
import com.google.gwt.uibinder.client.UiHandler;
|
||||||
import com.google.gwt.user.client.Window;
|
import com.google.gwt.user.client.Timer;
|
||||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||||
import com.google.gwt.user.client.ui.Composite;
|
import com.google.gwt.user.client.ui.Composite;
|
||||||
import com.google.gwt.user.client.ui.Widget;
|
import com.google.gwt.user.client.ui.Widget;
|
||||||
|
@ -49,7 +51,7 @@ public class FormViewImpl extends Composite implements FormView, Editor<FormView
|
||||||
|
|
||||||
@UiField TextBox email;
|
@UiField TextBox email;
|
||||||
@UiField TextBox name;
|
@UiField TextBox name;
|
||||||
@UiField TextBox lastName;
|
// @UiField TextBox lastName;
|
||||||
//
|
//
|
||||||
@UiField Button openModal;
|
@UiField Button openModal;
|
||||||
@UiField Button cancelInvite;
|
@UiField Button cancelInvite;
|
||||||
|
@ -71,6 +73,22 @@ public class FormViewImpl extends Composite implements FormView, Editor<FormView
|
||||||
initWidget(uiBinder.createAndBindUi(this));
|
initWidget(uiBinder.createAndBindUi(this));
|
||||||
driver.initialize(this);
|
driver.initialize(this);
|
||||||
driver.edit(new UserDetails());
|
driver.edit(new UserDetails());
|
||||||
|
|
||||||
|
email.addKeyDownHandler(new KeyDownHandler() {
|
||||||
|
@Override
|
||||||
|
public void onKeyDown(KeyDownEvent event) {
|
||||||
|
if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER)
|
||||||
|
openModal.click();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
name.addKeyDownHandler(new KeyDownHandler() {
|
||||||
|
@Override
|
||||||
|
public void onKeyDown(KeyDownEvent event) {
|
||||||
|
if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER)
|
||||||
|
sendInvite.click();
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@UiHandler("openModal")
|
@UiHandler("openModal")
|
||||||
|
@ -78,19 +96,25 @@ public class FormViewImpl extends Composite implements FormView, Editor<FormView
|
||||||
if (!delegate.onSendClick()) {
|
if (!delegate.onSendClick()) {
|
||||||
feedback.setText("We will send the invitation email to: "+email.getText() + " and put you in cc, we'll never email your contacts without your say so.");
|
feedback.setText("We will send the invitation email to: "+email.getText() + " and put you in cc, we'll never email your contacts without your say so.");
|
||||||
modalWindow.show();
|
modalWindow.show();
|
||||||
|
Timer t = new Timer() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
name.setFocus(true);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
t.schedule(1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@UiHandler("sendInvite")
|
@UiHandler("sendInvite")
|
||||||
void onSendInviteClick(ClickEvent event) {
|
void onSendInviteClick(ClickEvent event) {
|
||||||
if (delegate.onEmailSendInviteClick()) {
|
if (delegate.onEmailSendInviteClick()) {
|
||||||
nameGroup.setType(ControlGroupType.ERROR);
|
nameGroup.setType(ControlGroupType.ERROR);
|
||||||
nameErrors.setText("Please fill both name and last name");
|
nameErrors.setText("Name must not be null");
|
||||||
} else {
|
} else {
|
||||||
nameGroup.setType(ControlGroupType.NONE);
|
nameGroup.setType(ControlGroupType.NONE);
|
||||||
nameErrors.setText("");
|
nameErrors.setText("");
|
||||||
service.sendInviteEmail(name.getText(), lastName.getText(), email.getText(), new AsyncCallback<Boolean>() {
|
service.sendInviteEmail(name.getText(), "", email.getText(), new AsyncCallback<Boolean>() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(Boolean result) {
|
public void onSuccess(Boolean result) {
|
||||||
|
@ -103,7 +127,7 @@ public class FormViewImpl extends Composite implements FormView, Editor<FormView
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
feedback.setText("Sorry, an error occurred and we could not send the invite, please try again later");
|
feedback.setText("Sorry, an error occurred and we could not send the invite, please try again later.");
|
||||||
feedbackGroup.setType(ControlGroupType.ERROR);
|
feedbackGroup.setType(ControlGroupType.ERROR);
|
||||||
sendInvite.removeFromParent();
|
sendInvite.removeFromParent();
|
||||||
email.setText("");
|
email.setText("");
|
||||||
|
@ -118,8 +142,6 @@ public class FormViewImpl extends Composite implements FormView, Editor<FormView
|
||||||
email.setText("");
|
email.setText("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EditorDriver<FormView.UserDetails> getEditorDriver() {
|
public EditorDriver<FormView.UserDetails> getEditorDriver() {
|
||||||
return driver;
|
return driver;
|
|
@ -13,13 +13,7 @@
|
||||||
backdrop="STATIC" keyboard="true" animation="true">
|
backdrop="STATIC" keyboard="true" animation="true">
|
||||||
<b:Form type="VERTICAL">
|
<b:Form type="VERTICAL">
|
||||||
<b:ControlGroup ui:field="nameGroup">
|
<b:ControlGroup ui:field="nameGroup">
|
||||||
<b:HelpBlock styleName="helpFontSize">Please, enter Name and
|
<b:TextBox placeholder="enter your friend's name" ui:field="name"></b:TextBox>
|
||||||
Last name
|
|
||||||
of the friend you
|
|
||||||
wish to invite:</b:HelpBlock>
|
|
||||||
|
|
||||||
<b:TextBox placeholder="name" ui:field="name"></b:TextBox>
|
|
||||||
<b:TextBox placeholder="last name" ui:field="lastName"></b:TextBox>
|
|
||||||
<b:HelpBlock ui:field="nameErrors"></b:HelpBlock>
|
<b:HelpBlock ui:field="nameErrors"></b:HelpBlock>
|
||||||
|
|
||||||
</b:ControlGroup>
|
</b:ControlGroup>
|
|
@ -10,6 +10,7 @@ import javax.validation.ConstraintViolation;
|
||||||
import javax.validation.Path;
|
import javax.validation.Path;
|
||||||
import javax.validation.metadata.ConstraintDescriptor;
|
import javax.validation.metadata.ConstraintDescriptor;
|
||||||
|
|
||||||
|
import org.gcube.portlets.user.invitefriends.client.ui.FormViewImpl;
|
||||||
import org.gcube.portlets.user.invitefriends.client.validation.FormView.UserDetails;
|
import org.gcube.portlets.user.invitefriends.client.validation.FormView.UserDetails;
|
||||||
|
|
||||||
import com.google.gwt.activity.shared.AbstractActivity;
|
import com.google.gwt.activity.shared.AbstractActivity;
|
||||||
|
@ -59,9 +60,6 @@ public class FormErrorsValidation extends AbstractActivity implements FormView.D
|
||||||
if(user2InviteBean.getName() == null || "".equals(user2InviteBean.getName().trim())) {
|
if(user2InviteBean.getName() == null || "".equals(user2InviteBean.getName().trim())) {
|
||||||
violations.add(buildNotNullConstraintViolation(user2InviteBean, "name"));
|
violations.add(buildNotNullConstraintViolation(user2InviteBean, "name"));
|
||||||
}
|
}
|
||||||
if(user2InviteBean.getLastName() == null || "".equals(user2InviteBean.getLastName().trim())) {
|
|
||||||
violations.add(buildNotNullConstraintViolation(user2InviteBean, "lastname"));
|
|
||||||
}
|
|
||||||
return violations;
|
return violations;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue