Made adjustments for the new version of the autocomplete component.
This commit is contained in:
parent
bbd58ee4c9
commit
bf2ae4713a
src/main/java/se/su/dsv/scipro/admin/panels
@ -12,6 +12,7 @@ import org.apache.wicket.markup.html.panel.Fragment;
|
||||
import org.apache.wicket.markup.html.panel.Panel;
|
||||
import org.apache.wicket.model.IModel;
|
||||
import org.apache.wicket.spring.injection.annot.SpringBean;
|
||||
import org.apache.wicket.util.string.Strings;
|
||||
import se.su.dsv.scipro.SciProSession;
|
||||
import se.su.dsv.scipro.admin.pages.match.AdminManageProjectIdeaPage;
|
||||
import se.su.dsv.scipro.data.dataobjects.Employee;
|
||||
@ -56,16 +57,19 @@ public class ManualMatchPanel extends Panel {
|
||||
add(currentFragment.setOutputMarkupId(true));
|
||||
}
|
||||
|
||||
|
||||
private String createNameAndEmail(Employee employee) {
|
||||
private String createNameAndEmailOutput(Employee employee) {
|
||||
return employee.getNameAsString() + " <" + employee.getEmailAsString()+">";
|
||||
}
|
||||
|
||||
private String createNameAndEmailAutoComplete(Employee employee) {
|
||||
return employee.getNameAsString() + " <" + employee.getEmailAsString()+">";
|
||||
}
|
||||
|
||||
private boolean testACInputString(EmployeeAutoComplete autoCompleteObjectField) {
|
||||
return autoCompleteObjectField.getModelObject() == null ||
|
||||
autoCompleteObjectField.getInput() == null ||
|
||||
autoCompleteObjectField.getInput().isEmpty() ||
|
||||
!autoCompleteObjectField.getInput().equals(createNameAndEmail(autoCompleteObjectField.getModelObject()));
|
||||
!autoCompleteObjectField.getInput().equals(autoCompleteObjectField.getModelObject().getNameAsString());
|
||||
}
|
||||
|
||||
private ConfirmerAjaxSubmitLink createSubmitLink(final IModel<Match> matchModel, final Component feedbackPanel, final Match.Status status,
|
||||
@ -81,7 +85,7 @@ public class ManualMatchPanel extends Panel {
|
||||
matchModel.getObject().setSupervisor(autoCompleteObjectField.getModelObject() != null ? autoCompleteObjectField.getModelObject():null);
|
||||
matchModel.getObject().setStatus(status);
|
||||
matchDao.changeStatus(SciProSession.get().getUser(), matchModel.getObject(), null);
|
||||
Session.get().info(createMatchMessage(createNameAndEmail(autoCompleteObjectField.getModelObject()), matchModel.getObject().getProjectIdea().getTitle(), status));
|
||||
Session.get().info(createMatchMessage(autoCompleteObjectField.getModelObject(), matchModel.getObject().getProjectIdea().getTitle(), status));
|
||||
setResponsePage(AdminManageProjectIdeaPage.class);
|
||||
target.addComponent(feedbackPanel);
|
||||
}
|
||||
@ -197,19 +201,14 @@ public class ManualMatchPanel extends Panel {
|
||||
private static final long serialVersionUID = 7734889540424308421L;
|
||||
@Override
|
||||
public void action(AjaxRequestTarget pTarget, Employee newSelection) {
|
||||
// these checks have already been performed when action is called
|
||||
// if (newSelection != null) {
|
||||
// if (pTarget != null) {
|
||||
final String declineMessage = createDeclineMessage(newSelection, projectIdea, status);
|
||||
if(declineMessage != null && !declineMessage.isEmpty()) {
|
||||
saveButton.setMessageContentHTML(declineMessage);
|
||||
pTarget.addComponent(saveButton);
|
||||
} else {
|
||||
saveButton.setMessageContentHTML(createConfirmationMessage(newSelection, status));
|
||||
pTarget.addComponent(saveButton);
|
||||
}
|
||||
// }
|
||||
// }
|
||||
final String declineMessage = createDeclineMessage(newSelection, projectIdea, status);
|
||||
if(declineMessage != null && !declineMessage.isEmpty()) {
|
||||
saveButton.setMessageContentHTML(declineMessage);
|
||||
pTarget.addComponent(saveButton);
|
||||
} else {
|
||||
saveButton.setMessageContentHTML(createConfirmationMessage(newSelection, status));
|
||||
pTarget.addComponent(saveButton);
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
@ -217,20 +216,20 @@ public class ManualMatchPanel extends Panel {
|
||||
/**
|
||||
*
|
||||
* This method is used to return a match message that the employee was matched or suggested to supervise the project idea .
|
||||
* @param nameAndEmail the name and email of the employee
|
||||
* @param employee the employee that is confirmed or suggested to supervise
|
||||
* @param projectIdeaTitle the title of the project idea
|
||||
* @param status the status of the match
|
||||
* @return String the match message
|
||||
*/
|
||||
private String createMatchMessage(final String nameAndEmail, final String projectIdeaTitle, Match.Status status) {
|
||||
private String createMatchMessage(final Employee employee, final String projectIdeaTitle, Match.Status status) {
|
||||
StringBuilder messageStr = new StringBuilder();
|
||||
messageStr.append(nameAndEmail != null ? nameAndEmail : "" );
|
||||
messageStr.append(createNameAndEmailOutput(employee));
|
||||
if(status.equals(Match.Status.CONFIRMED)) {
|
||||
messageStr.append(" was accepted ");
|
||||
} else if (status.equals(Match.Status.PUBLISHED)) {
|
||||
messageStr.append(" was suggested ");
|
||||
}
|
||||
messageStr.append("as supervisor to The project idea ");
|
||||
messageStr.append("as supervisor for The project idea ");
|
||||
messageStr.append(projectIdeaTitle != null ? projectIdeaTitle : "");
|
||||
messageStr.append(".");
|
||||
return messageStr.toString();
|
||||
@ -250,7 +249,7 @@ public class ManualMatchPanel extends Panel {
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
if(declineMessage != null && !declineMessage.isEmpty()) {
|
||||
stringBuilder.append("The project idea has already been rejected by ");
|
||||
stringBuilder.append(createNameAndEmail(supervisor));
|
||||
stringBuilder.append(createNameAndEmailAutoComplete(supervisor));
|
||||
stringBuilder.append(". The decline message was: '");
|
||||
stringBuilder.append(declineMessage);
|
||||
if(status.equals(Match.Status.CONFIRMED)) {
|
||||
@ -280,7 +279,7 @@ public class ManualMatchPanel extends Panel {
|
||||
} else if (status.equals(Match.Status.PUBLISHED)) {
|
||||
stringBuilder.append("suggest ");
|
||||
}
|
||||
stringBuilder.append(createNameAndEmail(supervisor));
|
||||
stringBuilder.append(createNameAndEmailAutoComplete(supervisor));
|
||||
stringBuilder.append(" as supervisor for the project idea.");
|
||||
return stringBuilder.toString();
|
||||
}
|
||||
|
@ -46,16 +46,20 @@ public class ManualSetReviewerPanel extends Panel {
|
||||
add(currentFragment);
|
||||
}
|
||||
|
||||
|
||||
private String createNameAndEmail(EmployeeAutoComplete autoCompleteObjectField) {
|
||||
return autoCompleteObjectField.getModelObject().getNameAsString() + " <" + autoCompleteObjectField.getModelObject().getEmailAsString()+">";
|
||||
private String createNameAndEmailOutput(Employee employee) {
|
||||
return employee.getNameAsString() + " <" + employee.getEmailAsString()+">";
|
||||
}
|
||||
|
||||
private String createNameAndEmailAutoComplete(Employee employee) {
|
||||
return employee.getNameAsString() + " <" + employee.getEmailAsString()+">";
|
||||
}
|
||||
|
||||
|
||||
private boolean testACInputString(EmployeeAutoComplete autoCompleteObjectField) {
|
||||
return autoCompleteObjectField.getModelObject() == null ||
|
||||
autoCompleteObjectField.getInput() == null ||
|
||||
autoCompleteObjectField.getInput().isEmpty() ||
|
||||
!autoCompleteObjectField.getInput().equals(createNameAndEmail(autoCompleteObjectField));
|
||||
!autoCompleteObjectField.getInput().equals(autoCompleteObjectField.getModelObject().getNameAsString());
|
||||
}
|
||||
|
||||
private ConfirmerAjaxSubmitLink createSubmitLink(final IModel<ProjectIdea> projectIdeaModel, final Component feedbackPanel,
|
||||
@ -73,7 +77,7 @@ public class ManualSetReviewerPanel extends Panel {
|
||||
ProjectIdea projectIdea = projectIdeaModel.getObject();
|
||||
projectIdea.setSuggestedReviewer(autocompleteReviewerField.getModelObject());
|
||||
projectIdeaDao.save(projectIdea);
|
||||
Session.get().info(getInfoMessage(projectIdea.getTitle(), createNameAndEmail(autocompleteReviewerField)));
|
||||
Session.get().info(getInfoMessage(projectIdea.getTitle(), autocompleteReviewerField.getModelObject()));
|
||||
setResponsePage(AdminManageProjectIdeaPage.class);
|
||||
target.addComponent(feedbackPanel);
|
||||
}
|
||||
@ -81,7 +85,7 @@ public class ManualSetReviewerPanel extends Panel {
|
||||
|
||||
@Override //Listener method invoked on form submit with errors
|
||||
protected void onError(AjaxRequestTarget target, Form<?> form) {
|
||||
Session.get().error(getErrorMessage(projectIdeaModel.getObject().getTitle(), autocompleteReviewerField.getModelObject().getNameAsString()));
|
||||
Session.get().error(getErrorMessage(projectIdeaModel.getObject().getTitle(), autocompleteReviewerField.getModelObject()));
|
||||
super.onError(target, form);
|
||||
setResponsePage(AdminManageProjectIdeaPage.class);
|
||||
target.addComponent(feedbackPanel); // is only activated on "this"
|
||||
@ -165,13 +169,8 @@ public class ManualSetReviewerPanel extends Panel {
|
||||
|
||||
@Override
|
||||
public void action(AjaxRequestTarget pTarget, Employee newSelection) {
|
||||
// these checks have already been performed when action is called
|
||||
// if (newSelection != null) {
|
||||
// if (pTarget != null) {
|
||||
saveButton.setMessageContentHTML(getConfirmMessage(newSelection.getNameAsString(), projectIdea.getTitle()));
|
||||
pTarget.addComponent(saveButton);
|
||||
// }
|
||||
// }
|
||||
saveButton.setMessageContentHTML(getConfirmMessage(newSelection));
|
||||
pTarget.addComponent(saveButton);
|
||||
}
|
||||
};
|
||||
}
|
||||
@ -179,31 +178,30 @@ public class ManualSetReviewerPanel extends Panel {
|
||||
/**
|
||||
*
|
||||
* This method is used to return an confirmation message (is shown in a confirmation dialog)
|
||||
* to the administrator, that the employee really should be suggested as a reviewer for the project idea.
|
||||
* @param projectIdeaTitle the title of the project idea
|
||||
* @param reviewerName the name of the suggested reviewer
|
||||
* to the administrator, that the employee really should be suggested as reviewer for the project idea.
|
||||
* @param reviewer the suggested reviewer
|
||||
* @return String the confirmation message
|
||||
*/
|
||||
private String getConfirmMessage(final String reviewerName, final String projectIdeaTitle) {
|
||||
private String getConfirmMessage(final Employee reviewer) {
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
stringBuilder.append("Confirm that you want to suggest ");
|
||||
stringBuilder.append(reviewerName);
|
||||
stringBuilder.append(" as a reviewer for the project idea.");
|
||||
stringBuilder.append(createNameAndEmailAutoComplete(reviewer));
|
||||
stringBuilder.append(" as reviewer for the project idea.");
|
||||
return stringBuilder.toString();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* This method is used to return an information message that the employee was suggested as a reviewer for the project idea.
|
||||
* This method is used to return an information message that the employee was suggested as reviewer for the project idea.
|
||||
* @param projectIdeaTitle the title of the project idea
|
||||
* @param reviewerName the name of the suggested reviewer
|
||||
* @param reviewer the suggested reviewer
|
||||
* @return String the information message
|
||||
*/
|
||||
private String getInfoMessage(final String projectIdeaTitle, final String reviewerName) {
|
||||
private String getInfoMessage(final String projectIdeaTitle, final Employee reviewer) {
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
stringBuilder.append(reviewerName);
|
||||
stringBuilder.append(" was suggested reviewer for the project idea ");
|
||||
stringBuilder.append(createNameAndEmailOutput(reviewer));
|
||||
stringBuilder.append(" was suggested as reviewer for the project idea ");
|
||||
stringBuilder.append(projectIdeaTitle);
|
||||
stringBuilder.append(".");
|
||||
return stringBuilder.toString();
|
||||
@ -213,13 +211,13 @@ public class ManualSetReviewerPanel extends Panel {
|
||||
*
|
||||
* This method is used to return an error message which is shown in case of an unforeseen error.
|
||||
* @param projectIdeaTitle the title of the project idea
|
||||
* @param reviewerName the name of the presumed reviewer
|
||||
* @param reviewer the presumed reviewer
|
||||
* @return String the error message
|
||||
*/
|
||||
private String getErrorMessage(String projectIdeaTitle, String reviewerName) {
|
||||
private String getErrorMessage(final String projectIdeaTitle, final Employee reviewer) {
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
stringBuilder.append("An error occurred when suggesting ");
|
||||
stringBuilder.append(reviewerName);
|
||||
stringBuilder.append(createNameAndEmailAutoComplete(reviewer));
|
||||
stringBuilder.append(" as reviewer for the project idea ");
|
||||
stringBuilder.append(projectIdeaTitle);
|
||||
stringBuilder.append(".");
|
||||
|
Loading…
x
Reference in New Issue
Block a user