Skip to content

Commit

Permalink
Merge branch 'master' of github.com:zanata/zanata-platform into eflod…
Browse files Browse the repository at this point in the history
…en/textarea-maxlength
  • Loading branch information
efloden committed Feb 28, 2018
2 parents 5febb57 + 3576efc commit df472da
Show file tree
Hide file tree
Showing 84 changed files with 1,905 additions and 403 deletions.
Expand Up @@ -24,6 +24,7 @@
import java.util.ArrayList;
import java.util.List;

import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
Expand Down Expand Up @@ -59,14 +60,17 @@ public class GlossaryEntry implements Serializable, HasMediaType {

private Long id;

@Size(max = 255)
private String pos;

@Size(max = 500)
private String description;

private List<GlossaryTerm> glossaryTerms;

private LocaleId srcLang;

@Size(max = 500)
private String sourceReference;

private QualifiedName qualifiedName;
Expand Down
Expand Up @@ -24,6 +24,7 @@
import java.util.Date;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
Expand Down Expand Up @@ -57,8 +58,10 @@ public class GlossaryTerm implements Serializable {
@NotNull
private LocaleId locale;

@Size(max = 500)
private String content;

@Size(max = 500)
private String comment;

private String lastModifiedBy;
Expand Down
Expand Up @@ -74,9 +74,13 @@ private void doSignIn(String username, String password) {
log.info("log in as username: {}", username);
BasePage basePage = new BasePage(driver);
basePage.deleteCookiesAndRefresh();
basePage.clickSignInLink().enterUsername(username)
.enterPassword(password).clickSignIn().waitForAMoment()
.withMessage("login").until(driver1 -> {
basePage.clickSignInLink()
.enterUsername(username)
.enterPassword(password)
.clickSignIn()
.waitForAMoment()
.withMessage("waiting for login (logout button visible)")
.until(driver1 -> {
// only enable this if you temporarily disable implicit
// waits:
// fail-fast logic
Expand Down
Expand Up @@ -192,9 +192,6 @@ public interface UiMessages extends Messages {
@DefaultMessage("Glossary Details")
String glossaryDetails();

@DefaultMessage("Dismiss")
String dismiss();

@DefaultMessage("Last modified on {0}")
String lastModifiedOn(String date);

Expand Down
Expand Up @@ -63,8 +63,7 @@ public ForceReviewCommentWidget(WebTransMessages messages,
panel.setWidth("800px");
listBox = new ListBox();
listBox.setMultipleSelect(false);
// add an empty item
listBox.addItem("--- Select a predefined criteria ---");
listBox.addItem("");
panel.add(listBox);
panel.add(inputWidget);
DialogBoxCloseButton button = new DialogBoxCloseButton(this);
Expand Down
Expand Up @@ -50,7 +50,7 @@ interface GlossaryDetailsIUiBinder extends
ListBox entryListBox;

@UiField(provided = true)
DialogBoxCloseButton dismissButton;
DialogBoxCloseButton closeButton;

@UiField
Anchor link;
Expand All @@ -65,12 +65,11 @@ public GlossaryDetailsView(UiMessages messages) {
setGlassEnabled(true);
this.messages = messages;

dismissButton = new DialogBoxCloseButton(this);
closeButton = new DialogBoxCloseButton(this);

HTMLPanel container = uiBinder.createAndBindUi(this);
getCaption().setText(messages.glossaryDetails());
setWidget(container);
dismissButton.setText(messages.dismiss());
}

public void hide() {
Expand Down
Expand Up @@ -18,7 +18,7 @@
</ui:style>

<g:HTMLPanel styleName="new-zanata">
<fui:DialogBoxCloseButton ui:field="dismissButton" />
<fui:DialogBoxCloseButton ui:field="closeButton" />
<div class="l__wrapper l--limit-medium {style.container} l--scroll-auto">
<span class="epsilon">Entries</span>
<g:ListBox ui:field='entryListBox' />
Expand Down
Expand Up @@ -9,8 +9,8 @@
import org.zanata.dao.PersonDAO;
import org.zanata.model.HAccount;
import org.zanata.model.HPerson;
import org.zanata.seam.security.CurrentUser;
import org.zanata.security.ZanataIdentity;
import org.zanata.security.annotations.Authenticated;
import org.zanata.ui.faces.FacesMessages;

/**
Expand All @@ -33,8 +33,7 @@ public abstract class AbstractProfileAction implements HasUserDetail {
private FacesMessages facesMessages;

@Inject
@Authenticated
HAccount authenticatedAccount;
CurrentUser currentUser;

@Inject
PersonDAO personDAO;
Expand All @@ -45,7 +44,7 @@ public abstract class AbstractProfileAction implements HasUserDetail {
protected void validateEmail(String email) {
HPerson person = personDAO.findByEmail(email);

if (person != null && !person.getAccount().equals(authenticatedAccount)) {
if (person != null && !person.getAccount().equals(currentUser.getAccount())) {
valid = false;
facesMessages.addToControl("email",
"This email address is already taken");
Expand All @@ -62,7 +61,7 @@ protected void validateUsername(String username) {

protected boolean isUsernameTaken(String username) {
HAccount account = accountDAO.getByUsername(username);
return account != null && !account.equals(authenticatedAccount);
return account != null && !account.equals(currentUser.getAccount());
}

@NotEmpty
Expand Down
Expand Up @@ -34,9 +34,9 @@
import org.apache.deltaspike.jpa.api.transaction.Transactional;
import org.zanata.dao.AccountDAO;
import org.zanata.model.HAccount;
import org.zanata.seam.security.CurrentUser;
import org.zanata.security.AuthenticationManager;
import org.zanata.security.ZanataIdentity;
import org.zanata.security.annotations.Authenticated;
import org.zanata.security.openid.OpenIdAuthCallback;
import org.zanata.security.openid.OpenIdAuthenticationResult;
import org.zanata.security.openid.OpenIdProviderType;
Expand Down Expand Up @@ -65,8 +65,7 @@ static class ObsoleteHolder implements Serializable {

private static final long serialVersionUID = 1L;
@Inject
@Authenticated
private HAccount authenticatedAccount;
private CurrentUser currentUser;
@Inject
private FacesMessages facesMessages;
@Inject
Expand Down Expand Up @@ -136,7 +135,7 @@ public void validateAccounts() {
facesMessages.addGlobal(SEVERITY_ERROR,
"Could not find an account for that user.");
valid = false;
} else if (authenticatedAccount.getId()
} else if (currentUser.getAccount().getId()
.equals(obsoleteAccount.getId())) {
facesMessages.addGlobal(SEVERITY_ERROR,
"You are attempting to merge the same account.");
Expand All @@ -147,7 +146,7 @@ public void validateAccounts() {
}

public void mergeAccounts() {
registerServiceImpl.mergeAccounts(authenticatedAccount,
registerServiceImpl.mergeAccounts(currentUser.getAccount(),
getObsoleteAccount());
setObsoleteAccount(null); // reset the obsolete account
facesMessages.addGlobal("Your accounts have been merged.");
Expand Down
Expand Up @@ -52,10 +52,10 @@ public class ProfileAction extends AbstractProfileAction
public void onCreate() {
username = identity.getCredentials().getUsername();
HPerson person = personDAO
.findById(authenticatedAccount.getPerson().getId(), false);
.findById(currentUser.getPerson().getId(), false);
name = person.getName();
email = person.getEmail();
authenticatedAccount.getPerson().setName(this.name);
authenticatedAccount.getPerson().setEmail(this.email);
currentUser.getPerson().setName(this.name);
currentUser.getPerson().setEmail(this.email);
}
}
12 changes: 5 additions & 7 deletions server/services/src/main/java/org/zanata/action/ProjectHome.java
Expand Up @@ -57,7 +57,6 @@
import org.zanata.dao.WebHookDAO;
import org.zanata.exception.ProjectNotFoundException;
import org.zanata.i18n.Messages;
import org.zanata.model.HAccount;
import org.zanata.model.HAccountRole;
import org.zanata.model.HLocale;
import org.zanata.model.HPerson;
Expand All @@ -66,8 +65,8 @@
import org.zanata.model.WebHook;
import org.zanata.model.type.WebhookType;
import org.zanata.model.validator.SlugValidator;
import org.zanata.seam.security.CurrentUser;
import org.zanata.security.ZanataIdentity;
import org.zanata.security.annotations.Authenticated;
import org.zanata.service.LocaleService;
import org.zanata.service.ProjectService;
import org.zanata.service.SlugEntityService;
Expand Down Expand Up @@ -119,8 +118,7 @@ public class ProjectHome extends SlugHome<HProject>
@Inject
private ZanataIdentity identity;
@Inject
@Authenticated
private HAccount authenticatedAccount;
private CurrentUser currentUser;
@Inject
private LocaleService localeServiceImpl;
@Inject
Expand Down Expand Up @@ -817,11 +815,11 @@ public String persist() {
return null;
}
updateProjectType();
if (authenticatedAccount != null) {
if (currentUser.isLoggedIn()) {
// authenticatedAccount person is a detached entity, so fetch a copy
// that is attached to the current session.
HPerson creator = personDAO
.findById(authenticatedAccount.getPerson().getId());
.findById(currentUser.getPerson().getId());
getInstance().addMaintainer(creator);
getInstance().getCustomizedValidations().clear();
for (ValidationAction validationAction : validationServiceImpl
Expand Down Expand Up @@ -873,7 +871,7 @@ public String removeMaintainer(HPerson person) {
person.getAccount().getUsername(), Maintainer,
getInstance().getWebHooks(),
ProjectMaintainerChangedEvent.ChangeType.REMOVE);
if (person.equals(authenticatedAccount.getPerson())) {
if (person.equals(currentUser.getPerson())) {
urlUtil.redirectToInternal(urlUtil.projectUrl(getSlug()));
}
}
Expand Down
Expand Up @@ -50,7 +50,6 @@
import org.zanata.dao.ProjectIterationDAO;
import org.zanata.i18n.Messages;
import org.zanata.model.Activity;
import org.zanata.model.HAccount;
import org.zanata.model.HLocale;
import org.zanata.model.HPerson;
import org.zanata.model.HProject;
Expand All @@ -60,8 +59,8 @@
import org.zanata.model.LocaleRole;
import org.zanata.model.ProjectRole;
import org.zanata.rest.service.GlossaryService;
import org.zanata.seam.security.CurrentUser;
import org.zanata.security.ZanataIdentity;
import org.zanata.security.annotations.Authenticated;
import org.zanata.service.ActivityService;
import org.zanata.service.LocaleService;
import org.zanata.service.VersionStateCache;
Expand Down Expand Up @@ -108,8 +107,7 @@ public class ProjectHomeAction extends AbstractSortAction
@Inject
private LocaleMemberDAO localeMemberDAO;
@Inject
@Authenticated
private HAccount authenticatedAccount;
private CurrentUser currentUser;
@Inject
private ZanataIdentity identity;
@Inject
Expand Down Expand Up @@ -231,7 +229,7 @@ private List<Activity> fetchProjectLastActivity() {
getProjectVersions(),
input -> input != null ? input.getId(): null);
return activityServiceImpl.findLatestVersionActivitiesByUser(
authenticatedAccount.getPerson().getId(),
currentUser.getPerson().getId(),
Lists.newArrayList(versionIds), 0, 1);
}

Expand Down Expand Up @@ -366,11 +364,11 @@ public List<HLocale> getSupportedLocale(HProjectIteration version) {
}

public List<HLocale> getUserJoinedLocales(HProjectIteration version) {
if (authenticatedAccount == null) {
if (!currentUser.isLoggedIn()) {
return Collections.emptyList();
}
List<HLocale> userJoinedLocales = Lists.newArrayList();
Long personId = authenticatedAccount.getPerson().getId();
Long personId = currentUser.getPerson().getId();
for (HLocale supportedLocale : getSupportedLocale(version)) {
if (localeMemberDAO.isLocaleMember(personId,
supportedLocale.getLocaleId())
Expand Down
22 changes: 9 additions & 13 deletions server/services/src/main/java/org/zanata/dao/ProjectDAO.java
Expand Up @@ -27,7 +27,6 @@
import javax.annotation.Nonnull;
import javax.annotation.Nullable;

import com.google.common.annotations.VisibleForTesting;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import org.apache.commons.lang3.StringUtils;
import org.apache.lucene.index.Term;
Expand All @@ -53,8 +52,8 @@
import org.zanata.model.HProject;
import org.zanata.model.HProjectIteration;
import org.zanata.model.ProjectRole;
import org.zanata.seam.security.CurrentUser;
import org.zanata.security.ZanataIdentity;
import org.zanata.security.annotations.Authenticated;

import static org.zanata.hibernate.search.IndexFieldLabels.FULL_SLUG_FIELD;

Expand All @@ -64,17 +63,18 @@ public class ProjectDAO extends AbstractDAOImpl<HProject, Long> {
@SuppressFBWarnings(value = "SE_BAD_FIELD")
@Inject @FullText
private FullTextEntityManager entityManager;
@Inject @Authenticated
private HAccount authenticatedAccount;
@Inject
private CurrentUser currentUser;
@Inject
private ZanataIdentity identity;

public ProjectDAO() {
super(HProject.class);
}

public ProjectDAO(Session session) {
public ProjectDAO(Session session, CurrentUser currentUser) {
super(HProject.class, session);
this.currentUser = currentUser;
}

public ProjectDAO(FullTextEntityManager entityManager, Session session,
Expand All @@ -97,8 +97,8 @@ public List<HProject> getOffsetList(int offset, int count,
boolean filterOutActive, boolean filterOutReadOnly,
boolean filterOutObsolete) {

HPerson person = authenticatedAccount != null ?
authenticatedAccount.getPerson() : null;
HPerson person = currentUser.isLoggedIn() ?
currentUser.getPerson() : null;

String condition =
constructFilterCondition(filterOutActive, filterOutReadOnly,
Expand Down Expand Up @@ -131,8 +131,8 @@ public List<HProject> getOffsetList(int offset, int count,

public int getFilterProjectSize(boolean filterOutActive,
boolean filterOutReadOnly, boolean filterOutObsolete) {
HPerson person = authenticatedAccount != null ?
authenticatedAccount.getPerson() : null;
HPerson person = currentUser.isLoggedIn() ?
currentUser.getPerson() : null;

String condition = constructFilterCondition(filterOutActive,
filterOutReadOnly, filterOutObsolete, person);
Expand Down Expand Up @@ -528,8 +528,4 @@ public int getTotalDocCount(String projectSlug) {
return ((Long) q.uniqueResult()).intValue();
}

@VisibleForTesting
protected void setAuthenticatedAccount(HAccount authenticatedAccount) {
this.authenticatedAccount = authenticatedAccount;
}
}

0 comments on commit df472da

Please sign in to comment.