It is now possible to show all projects of a department (per configuration).

git-svn-id: https://svn.libreccm.org/ccm/trunk@2770 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2014-07-22 13:01:32 +00:00
parent 9b70cf8018
commit a10f25b855
3 changed files with 98 additions and 81 deletions

View File

@ -172,8 +172,10 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab {
now.get(Calendar.MONTH) + 1, now.get(Calendar.MONTH) + 1,
now.get(Calendar.DAY_OF_MONTH)); now.get(Calendar.DAY_OF_MONTH));
if (!config.isShowingAllProjects()) {
projects.addFilter(String.format( projects.addFilter(String.format(
"(projectEnd >= '%s') or (projectEnd is null)", today)); "(projectEnd >= '%s') or (projectEnd is null)", today));
}
projects.setRange(1, config.getGreetingSize() + 1); projects.setRange(1, config.getGreetingSize() + 1);
titleFilter.generateXml(filtersElem); titleFilter.generateXml(filtersElem);
@ -278,8 +280,8 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab {
addFilter(filterFactory.equals("language", addFilter(filterFactory.equals("language",
GlobalizationHelper.LANG_INDEPENDENT)). GlobalizationHelper.LANG_INDEPENDENT)).
addFilter(filterFactory.notIn("parent", addFilter(filterFactory.notIn("parent",
"com.arsdigita.navigation.getParentIDsOfMatchedItems"). "com.arsdigita.navigation.getParentIDsOfMatchedItems")
set( .set(
"language", GlobalizationHelper.getNegotiatedLocale(). "language", GlobalizationHelper.getNegotiatedLocale().
getLanguage()))); getLanguage())));
projectsQuery.addFilter(filter); projectsQuery.addFilter(filter);
@ -368,4 +370,5 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab {
} }
} }
} }

View File

@ -35,36 +35,39 @@ public class SciDepartmentProjectsTabConfig extends AbstractConfig {
private final Parameter pageSize; private final Parameter pageSize;
private final Parameter enableSearchLimit; private final Parameter enableSearchLimit;
private final Parameter mergeProjects; private final Parameter mergeProjects;
private final Parameter showAllProjects;
public SciDepartmentProjectsTabConfig() { public SciDepartmentProjectsTabConfig() {
greetingSize = greetingSize = new IntegerParameter(
new IntegerParameter(
"com.arsdigita.cms.contenttypes.scidepartment.tabs.projects.greeting_number", "com.arsdigita.cms.contenttypes.scidepartment.tabs.projects.greeting_number",
Parameter.REQUIRED, Parameter.REQUIRED,
10); 10);
pageSize = pageSize = new IntegerParameter(
new IntegerParameter(
"com.arsdigita.cms.contenttypes.scidepartment.tabs.projects.page_size", "com.arsdigita.cms.contenttypes.scidepartment.tabs.projects.page_size",
Parameter.REQUIRED, Parameter.REQUIRED,
30); 30);
enableSearchLimit = enableSearchLimit = new IntegerParameter(
new IntegerParameter(
"com.arsdigita.cms.contenttypes.scidepartment.tabs.projects.enable_search_limit", "com.arsdigita.cms.contenttypes.scidepartment.tabs.projects.enable_search_limit",
Parameter.REQUIRED, Parameter.REQUIRED,
2); 2);
mergeProjects = mergeProjects = new BooleanParameter(
new BooleanParameter(
"com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge", "com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge",
Parameter.REQUIRED, Parameter.REQUIRED,
Boolean.TRUE); Boolean.TRUE);
showAllProjects = new BooleanParameter(
"com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.show_all",
Parameter.REQUIRED,
Boolean.FALSE);
register(greetingSize); register(greetingSize);
register(pageSize); register(pageSize);
register(enableSearchLimit); register(enableSearchLimit);
register(mergeProjects); register(mergeProjects);
register(showAllProjects);
loadInfo(); loadInfo();
} }
@ -84,4 +87,9 @@ public class SciDepartmentProjectsTabConfig extends AbstractConfig {
public final boolean isMergingProjects() { public final boolean isMergingProjects() {
return (Boolean) get(mergeProjects); return (Boolean) get(mergeProjects);
} }
public final boolean isShowingAllProjects() {
return (Boolean) get(showAllProjects);
}
} }

View File

@ -17,3 +17,9 @@ com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.title = Merge
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.purpose = Merge the projects of the department and its sub departments into one list? com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.purpose = Merge the projects of the department and its sub departments into one list?
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.example = true com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.example = true
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.format = [Boolean] com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.merge.format = [Boolean]
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.show_all.title=Show all projects?
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.show_all.purpose=Show all projects?
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.show_all.example=true
com.arsdigita.cms.contenttypes.scidepartments.tabs.projects.show_all.format=[Boolean]