Index: lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java =================================================================== diff -u -r34cf11bdb6a268ecaaf6324d6f9c3d6a4cd06b73 -r278667240e36ecbb68a28aaf4d3069cd177cc77f --- lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java (.../IndexAction.java) (revision 34cf11bdb6a268ecaaf6324d6f9c3d6a4cd06b73) +++ lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java (.../IndexAction.java) (revision 278667240e36ecbb68a28aaf4d3069cd177cc77f) @@ -90,6 +90,7 @@ // only set header links if we are displaying 'active' organisations; i.e., on the index page if(state.equals(OrganisationState.ACTIVE)){ setHeaderLinks(request); + setAdminLinks(request); } String tab = WebUtil.readStrParam(request, "tab", true); @@ -101,9 +102,6 @@ return mapping.findForward("password"); } else if (StringUtils.equals(tab, "portrait")) { return mapping.findForward("portrait"); - } else if(StringUtils.equals(tab, "sysadmin") || StringUtils.equals(tab, "groupmgmt")) { - request.setAttribute("tab", tab); - return mapping.findForward("main"); } List orgBeans = new ArrayList(); @@ -143,21 +141,19 @@ log.debug("user is author"); headerLinks.add(new IndexLinkBean("index.author", "javascript:openAuthor()")); } - if (request.isUserInRole(Role.SYSADMIN) || request.isUserInRole(Role.COURSE_ADMIN) || request.isUserInRole(Role.COURSE_MANAGER)) { - log.debug("user is a course admin or manager"); - headerLinks.add(new IndexLinkBean("index.courseman", "javascript:openOrgManagement(" + getService().getRootOrganisation().getOrganisationId()+')')); - //headerLinks.add(new IndexLinkBean("index.courseman", "index.do?state=active&tab=groupmgmt")); - } - if (request.isUserInRole(Role.SYSADMIN) || request.isUserInRole(Role.AUTHOR_ADMIN)) { - log.debug("user is sysadmin or author admin"); - headerLinks.add(new IndexLinkBean("index.sysadmin", "javascript:openSysadmin()")); - //headerLinks.add(new IndexLinkBean("index.sysadmin", "index.do?state=active&tab=sysadmin")); - } - //headerLinks.add(new IndexLinkBean("index.myprofile", "javascript:openProfile()")); headerLinks.add(new IndexLinkBean("index.myprofile", "index.do?state=active&tab=profile")); log.debug("set headerLinks in request"); request.setAttribute("headerLinks", headerLinks); } + + private void setAdminLinks(HttpServletRequest request) { + List adminLinks = new ArrayList(); + if (request.isUserInRole(Role.SYSADMIN) || request.isUserInRole(Role.COURSE_ADMIN) || request.isUserInRole(Role.COURSE_MANAGER)) + adminLinks.add(new IndexLinkBean("index.courseman", "javascript:openOrgManagement(" + getService().getRootOrganisation().getOrganisationId()+')')); + if (request.isUserInRole(Role.SYSADMIN) || request.isUserInRole(Role.AUTHOR_ADMIN)) + adminLinks.add(new IndexLinkBean("index.sysadmin", "javascript:openSysadmin()")); + request.setAttribute("adminLinks", adminLinks); + } @SuppressWarnings({"unchecked","static-access"}) private IndexOrgBean createOrgBean(Organisation org, List roles, String username, boolean isSysAdmin) { Index: lams_central/web/main.jsp =================================================================== diff -u -re55d23b8e9a54ee0cfed58cb167510e8d2551fe4 -r278667240e36ecbb68a28aaf4d3069cd177cc77f --- lams_central/web/main.jsp (.../main.jsp) (revision e55d23b8e9a54ee0cfed58cb167510e8d2551fe4) +++ lams_central/web/main.jsp (.../main.jsp) (revision 278667240e36ecbb68a28aaf4d3069cd177cc77f) @@ -95,6 +95,11 @@