diff --git a/zanata-war/src/main/java/org/zanata/action/DashboardAction.java b/zanata-war/src/main/java/org/zanata/action/DashboardAction.java index 39ffabd566..91a69ca527 100644 --- a/zanata-war/src/main/java/org/zanata/action/DashboardAction.java +++ b/zanata-war/src/main/java/org/zanata/action/DashboardAction.java @@ -127,7 +127,8 @@ public Object apply(@NonNull HLocale locale) { } private int countUserMaintainedProjects() { - return authenticatedAccount.getPerson().getMaintainerProjects().size(); + return projectDAO.getMaintainedProjectCount( + authenticatedAccount.getPerson(), null); } private List fetchUserMaintainedProjects() { diff --git a/zanata-war/src/main/java/org/zanata/dao/ProjectDAO.java b/zanata-war/src/main/java/org/zanata/dao/ProjectDAO.java index f4b66cf36b..b5b87d39b0 100644 --- a/zanata-war/src/main/java/org/zanata/dao/ProjectDAO.java +++ b/zanata-war/src/main/java/org/zanata/dao/ProjectDAO.java @@ -406,6 +406,8 @@ public List getProjectsForMaintainer(HPerson maintainer, .createQuery( "from HProject p " + "where :maintainer in elements(p.maintainers) " + + "and p.status <> " + + "'" + EntityStatus.OBSOLETE.getInitial() + "' " + "and (p.name like :filter " + "or p.slug like :filter) " + "order by p.name") @@ -423,6 +425,8 @@ public int getMaintainedProjectCount(HPerson maintainer, String filter) { .createQuery( "select count(p) from HProject p " + "where :maintainer in elements(p.maintainers) " + + "and p.status <> " + + "'" + EntityStatus.OBSOLETE.getInitial() + "' " + "and (p.name like :filter " + "or p.slug like :filter) " )