diff --git a/zanata-war/src/main/java/org/zanata/security/AuthenticationManager.java b/zanata-war/src/main/java/org/zanata/security/AuthenticationManager.java
index 6529b090b3..37188eea4a 100644
--- a/zanata-war/src/main/java/org/zanata/security/AuthenticationManager.java
+++ b/zanata-war/src/main/java/org/zanata/security/AuthenticationManager.java
@@ -246,9 +246,12 @@ else if(identity.isPreAuthenticated() && isNewUser())
}
else if (identity.isLoggedIn())
{
- if (userRedirect != null && userRedirect.isRedirect())
+ if (userRedirect != null)
{
- return "redirect";
+ if(userRedirect.isRedirect() && !userRedirect.isRedirectToHome())
+ {
+ return "redirect";
+ }
}
return "dashboard";
}
diff --git a/zanata-war/src/main/java/org/zanata/security/UserRedirectBean.java b/zanata-war/src/main/java/org/zanata/security/UserRedirectBean.java
index d39a0f7d56..072db6eeb1 100644
--- a/zanata-war/src/main/java/org/zanata/security/UserRedirectBean.java
+++ b/zanata-war/src/main/java/org/zanata/security/UserRedirectBean.java
@@ -52,7 +52,6 @@ public class UserRedirectBean implements Serializable
{
private static final String HOME_URL = "/";
private static final String ERROR_URL = "/error";
- private static final String DASHBOARD_HOME_URL = "/dashboard/home.xhtml";
/**
*
@@ -177,13 +176,23 @@ public boolean isRedirect()
return url != null && !url.isEmpty();
}
- public void redirectToDashboard()
+ public boolean isRedirectToHome()
{
- if (Identity.instance().isLoggedIn())
+ if (isRedirect())
{
- Redirect redirect = Redirect.instance();
- redirect.setViewId(DASHBOARD_HOME_URL);
- redirect.execute();
+ String url = getUrl();
+ int qsIndex = url.indexOf('?');
+ if (qsIndex > 0)
+ {
+ url = url.substring(0, qsIndex);
+ }
+
+ if (url.endsWith(HOME_URL))
+ {
+ return true;
+ }
+
}
+ return false;
}
}
diff --git a/zanata-war/src/main/webapp/WEB-INF/pages.xml b/zanata-war/src/main/webapp/WEB-INF/pages.xml
index b2eeb5c4e9..392361c9b0 100644
--- a/zanata-war/src/main/webapp/WEB-INF/pages.xml
+++ b/zanata-war/src/main/webapp/WEB-INF/pages.xml
@@ -12,31 +12,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -61,8 +36,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -90,7 +87,7 @@
-
+
@@ -104,7 +101,7 @@
-
+
diff --git a/zanata-war/src/main/webapp/WEB-INF/template/banner.xhtml b/zanata-war/src/main/webapp/WEB-INF/template/banner.xhtml
index 50a63bb743..f63fe12440 100644
--- a/zanata-war/src/main/webapp/WEB-INF/template/banner.xhtml
+++ b/zanata-war/src/main/webapp/WEB-INF/template/banner.xhtml
@@ -48,6 +48,11 @@