Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

Commit

Permalink
Merge pull request #884 from zanata/fix-disabled-lang-for-admin
Browse files Browse the repository at this point in the history
Allow admin to access inactive language page
  • Loading branch information
Alex Eng committed Jun 23, 2015
2 parents fd5613f + ca3e470 commit 472925f
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions zanata-war/src/main/java/org/zanata/action/LanguageAction.java
Expand Up @@ -47,7 +47,9 @@
import org.zanata.model.HLocale;
import org.zanata.model.HLocaleMember;
import org.zanata.model.HPerson;
import org.zanata.rest.editor.dto.Locale;
import org.zanata.rest.service.ResourceUtils;
import org.zanata.security.ZanataIdentity;
import org.zanata.service.LanguageTeamService;
import org.zanata.service.LocaleService;
import org.zanata.ui.faces.FacesMessages;
Expand Down Expand Up @@ -83,6 +85,9 @@ public class LanguageAction implements Serializable {
@In(required = false, value = JpaIdentityStore.AUTHENTICATED_USER)
private HAccount authenticatedAccount;

@In
private ZanataIdentity identity;

@In
private Messages msgs;

Expand Down Expand Up @@ -234,11 +239,15 @@ public void validateLanguage() {
return;
}

boolean isSupported =
localeServiceImpl.localeSupported(new LocaleId(language));
if(!isSupported) {
LocaleId localeId = new LocaleId(language);
HLocale locale = localeServiceImpl.getByLocaleId(localeId);

if(locale == null) {
redirectToLanguageHome();
}

if(!locale.isActive() && !identity.hasRole("admin")) {
redirectToLanguageHome();
return;
}
}

Expand Down

0 comments on commit 472925f

Please sign in to comment.