Index: lams_admin/conf/xdoclet/filter-mappings.xml =================================================================== diff -u --- lams_admin/conf/xdoclet/filter-mappings.xml (revision 0) +++ lams_admin/conf/xdoclet/filter-mappings.xml (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,36 @@ + + + SystemSessionFilter + /* + + + LocaleFilter + /* + + + HibernateFilter + /* + + + HibernateFilter + *.jsp + Index: lams_admin/conf/xdoclet/filters.xml =================================================================== diff -u --- lams_admin/conf/xdoclet/filters.xml (revision 0) +++ lams_admin/conf/xdoclet/filters.xml (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,44 @@ + + + SystemSessionFilter + + org.lamsfoundation.lams.web.session.SystemSessionFilter + + + + LocaleFilter + + org.lamsfoundation.lams.web.filter.LocaleFilter + + + + HibernateFilter + org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter + + sessionFactoryBeanName + coreSessionFactory + + + singleSession + true + + Index: lams_admin/conf/xdoclet/struts-actions.xml =================================================================== diff -u --- lams_admin/conf/xdoclet/struts-actions.xml (revision 0) +++ lams_admin/conf/xdoclet/struts-actions.xml (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,9 @@ + + + \ No newline at end of file Index: lams_admin/conf/xdoclet/taglibs.xml =================================================================== diff -u -r001568fdeabd68c6ba46398e0ae42328fe64f5db -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/conf/xdoclet/taglibs.xml (.../taglibs.xml) (revision 001568fdeabd68c6ba46398e0ae42328fe64f5db) +++ lams_admin/conf/xdoclet/taglibs.xml (.../taglibs.xml) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -75,3 +75,11 @@ fck-editor /WEB-INF/fckeditor/tlds/FCKeditor.tld + + + + + + tags-lams + /WEB-INF/lams.tld + \ No newline at end of file Index: lams_admin/conf/xdoclet/web-settings.xml =================================================================== diff -u -rcf0f2fa25a0c6ff2116f6a3310292e72beea2c64 -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/conf/xdoclet/web-settings.xml (.../web-settings.xml) (revision cf0f2fa25a0c6ff2116f6a3310292e72beea2c64) +++ lams_admin/conf/xdoclet/web-settings.xml (.../web-settings.xml) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -1,9 +1,23 @@ LAMS Learning Activity Management System + + + javax.servlet.jsp.jstl.fmt.localizationContext + org.lamsfoundation.lams.admin.applicationResources + + + contextConfigLocation classpath:/org/lamsfoundation/lams/applicationContext.xml + classpath:/org/lamsfoundation/lams/lesson/lessonApplicationContext.xml + classpath:/org/lamsfoundation/lams/tool/toolApplicationContext.xml + classpath:/org/lamsfoundation/lams/learning/learningApplicationContext.xml + classpath:/org/lamsfoundation/lams/authoring/authoringApplicationContext.xml + classpath:/org/lamsfoundation/lams/monitoring/monitoringApplicationContext.xml + classpath:/org/lamsfoundation/lams/contentrepository/applicationContext.xml + Index: lams_admin/src/java/org/lamsfoundation/lams/admin/applicationResources.properties =================================================================== diff -u -r001568fdeabd68c6ba46398e0ae42328fe64f5db -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/src/java/org/lamsfoundation/lams/admin/applicationResources.properties (.../applicationResources.properties) (revision 001568fdeabd68c6ba46398e0ae42328fe64f5db) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/applicationResources.properties (.../applicationResources.properties) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -7,10 +7,21 @@ error.newpassword.mismatch=Your new passwords don't match each other. error.oldpassword.mismatch=Your old password is not correct. +#===================== Main Sysadmin Screen ======================# +sysadmin.manage.config.file=Manage Configuration File +sysadmin.batch.heading=Batch Tasks +sysadmin.batch.description=These need to be converted to batch jobs, able to be run from cron. +sysadmin.batch.temp.file.delete=Delete old temporary files +sysadmin.batch.preview.delete=Delete old Preview lessons + #===================== Cache Screen ==============================# cache.title=Cache Management cache.entries.title=Cache Nodes cache.explanation1=Listed below are the current nodes in the cache. This keeps certain common objects in memory to speed up LAMS. It is managed automatically and should not require any intervention. However, if the system appears to be keeping "old values" e.g. an old first name, try clearing all the nodes in the cache. Once cleared, LAMS will reload the objects from the database. cache.explanation2=Warning: Removing nodes will reduce the performance of the LAMS server. After a while, the cache will build up again and LAMS will run as usual. cache.explanation3=Warning: If you remove a node, you will remove the node and all its child nodes. cache.button.remove=Remove + +#========== Deleted Preview Message Screen =======================# +preview.deleted.title=Preview Data Deleted +preview.deleted.message=Preview data for {0} lessons has been deleted \ No newline at end of file Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/CacheAction.java =================================================================== diff -u -r001568fdeabd68c6ba46398e0ae42328fe64f5db -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/CacheAction.java (.../CacheAction.java) (revision 001568fdeabd68c6ba46398e0ae42328fe64f5db) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/CacheAction.java (.../CacheAction.java) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -27,7 +27,7 @@ * path="/cache" * parameter="method" * validate="false" - * @struts:action-forward name="cache" path="/cache.jsp" + * @struts:action-forward name="cache" path=".cache" * */ public class CacheAction extends LamsDispatchAction { Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/SysadminAction.java =================================================================== diff -u --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/SysadminAction.java (revision 0) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/SysadminAction.java (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,47 @@ +package org.lamsfoundation.lams.admin.web; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.log4j.Logger; +import org.apache.struts.action.ActionForm; +import org.apache.struts.action.ActionForward; +import org.apache.struts.action.ActionMapping; +import org.lamsfoundation.lams.monitoring.service.IMonitoringService; +import org.lamsfoundation.lams.monitoring.service.MonitoringServiceProxy; +import org.lamsfoundation.lams.web.action.LamsDispatchAction; + +/** + * Main access calls for the bulk of the system adminstration. + * + * @author Fiona Malikoff + * + * @struts:action path="/sysadmin" validate="false" parameter="method" + * @struts:action-forward name="sysadmin" path=".sysadmin" + * @struts:action-forward name="previewdeleted" path=".previewdeleted" + * @struts:action-forward name="error" path=".admin.error" + */ +public class SysadminAction extends LamsDispatchAction { + + public static final String NUM_DELETED = "numDeleted"; + + private static Logger logger = Logger.getLogger(SysadminAction.class); + + public ActionForward deleteOldPreviewLessons(ActionMapping mapping, + ActionForm form, HttpServletRequest request, + HttpServletResponse response) throws IOException, ServletException { + + logger.debug("deleteOldPreviewLessons"); + + IMonitoringService monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + int numDeleted = monitoringService.deleteAllOldPreviewLessons(); + request.setAttribute(NUM_DELETED, Integer.toString(numDeleted)); + return mapping.findForward("message"); + } + + + +} \ No newline at end of file Index: lams_admin/web/WEB-INF/lams.tld =================================================================== diff -u --- lams_admin/web/WEB-INF/lams.tld (revision 0) +++ lams_admin/web/WEB-INF/lams.tld (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,228 @@ + + + + + + 1.0 + 1.1 + lams + + + + + + LAMSURL + org.lamsfoundation.lams.web.tag.LAMSURLTag + + + + + + user + org.lamsfoundation.lams.web.tag.UserTag + + + + property + true + true + + + + + + + WebAppURL + org.lamsfoundation.lams.web.tag.WebAppURLTag + + + + + + css + org.lamsfoundation.lams.web.tag.CssTag + + + + + + STRUTS-textarea + org.lamsfoundation.lams.web.tag.MultiLinesTextareaTag + + accesskey + false + true + + + alt + false + true + + + altKey + false + true + + + bundle + false + true + + + cols + false + true + + + disabled + false + true + + + errorKey + false + true + + + errorStyle + false + true + + + errorStyleClass + false + true + + + errorStyleId + false + true + + + indexed + false + true + + + name + false + true + + + onblur + false + true + + + onchange + false + true + + + onclick + false + true + + + ondblclick + false + true + + + onfocus + false + true + + + onkeydown + false + true + + + onkeypress + false + true + + + onkeyup + false + true + + + onmousedown + false + true + + + onmousemove + false + true + + + onmouseout + false + true + + + onmouseover + false + true + + + onmouseup + false + true + + + property + true + true + + + readonly + false + true + + + rows + false + true + + + style + false + true + + + styleClass + false + true + + + styleId + false + true + + + tabindex + false + true + + + title + false + true + + + titleKey + false + true + + + value + false + true + + + + Index: lams_admin/web/WEB-INF/struts/struts-config.xml =================================================================== diff -u -r001568fdeabd68c6ba46398e0ae42328fe64f5db -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/web/WEB-INF/struts/struts-config.xml (.../struts-config.xml) (revision 001568fdeabd68c6ba46398e0ae42328fe64f5db) +++ lams_admin/web/WEB-INF/struts/struts-config.xml (.../struts-config.xml) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -94,6 +94,29 @@ /> + + + + + @@ -192,7 +215,14 @@ /> - + + Index: lams_admin/web/WEB-INF/tiles/tiles-defs.xml =================================================================== diff -u -rcf0f2fa25a0c6ff2116f6a3310292e72beea2c64 -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/web/WEB-INF/tiles/tiles-defs.xml (.../tiles-defs.xml) (revision cf0f2fa25a0c6ff2116f6a3310292e72beea2c64) +++ lams_admin/web/WEB-INF/tiles/tiles-defs.xml (.../tiles-defs.xml) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -1,9 +1,26 @@ - + + @@ -54,5 +71,28 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file Index: lams_admin/web/WEB-INF/web.xml =================================================================== diff -u -r001568fdeabd68c6ba46398e0ae42328fe64f5db -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/web/WEB-INF/web.xml (.../web.xml) (revision 001568fdeabd68c6ba46398e0ae42328fe64f5db) +++ lams_admin/web/WEB-INF/web.xml (.../web.xml) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -6,27 +6,107 @@ LAMS Learning Activity Management System + + javax.servlet.jsp.jstl.fmt.localizationContext + org.lamsfoundation.lams.admin.applicationResources + + + contextConfigLocation classpath:/org/lamsfoundation/lams/applicationContext.xml + classpath:/org/lamsfoundation/lams/lesson/lessonApplicationContext.xml + classpath:/org/lamsfoundation/lams/tool/toolApplicationContext.xml + classpath:/org/lamsfoundation/lams/learning/learningApplicationContext.xml + classpath:/org/lamsfoundation/lams/authoring/authoringApplicationContext.xml + classpath:/org/lamsfoundation/lams/monitoring/monitoringApplicationContext.xml + classpath:/org/lamsfoundation/lams/contentrepository/applicationContext.xml - + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +USA + +http://www.gnu.org/licenses/gpl.txt +--> + + SystemSessionFilter + + org.lamsfoundation.lams.web.session.SystemSessionFilter + + + + LocaleFilter + + org.lamsfoundation.lams.web.filter.LocaleFilter + + + + HibernateFilter + org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter + + sessionFactoryBeanName + coreSessionFactory + + + singleSession + true + + + + + + SystemSessionFilter + /* + + + LocaleFilter + /* + + + HibernateFilter + /* + + + HibernateFilter + *.jsp + + org.springframework.web.context.ContextLoaderListener @@ -164,6 +244,14 @@ /WEB-INF/fckeditor/tlds/FCKeditor.tld + + + + + tags-lams + /WEB-INF/lams.tld + + + + +

+ + + +
  • ">
    +Children: + +
    +
    + + + Index: lams_admin/web/sysadmin/previewdeleted.jsp =================================================================== diff -u --- lams_admin/web/sysadmin/previewdeleted.jsp (revision 0) +++ lams_admin/web/sysadmin/previewdeleted.jsp (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,7 @@ +<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %> + +

    + +

    + +

    Index: lams_admin/web/sysadmin/sysadminContent.jsp =================================================================== diff -u --- lams_admin/web/sysadmin/sysadminContent.jsp (revision 0) +++ lams_admin/web/sysadmin/sysadminContent.jsp (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,15 @@ +<%@ page contentType="text/html; charset=iso-8859-1" language="java" %> + +<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %> + +

    System Administration

    + +

    +

    + +

    +

    .

    + +

    +

    + Index: lams_admin/web/template.jsp =================================================================== diff -u -ra92938068da9beb14fae100b9ca85a380badc050 -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_admin/web/template.jsp (.../template.jsp) (revision a92938068da9beb14fae100b9ca85a380badc050) +++ lams_admin/web/template.jsp (.../template.jsp) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -1,6 +1,7 @@ <%@include file="sharing/share.jsp" %> <%@ taglib uri="tags-tiles" prefix="tiles" %> <%@ taglib uri="tags-html" prefix="html" %> +<%@ taglib uri="tags-lams" prefix="lams" %> @@ -10,7 +11,7 @@ - + @@ -23,7 +24,7 @@ - + Index: lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java =================================================================== diff -u -ra575014b02a693b4686e958f883e3eb00f9b0861 -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java (.../HomeAction.java) (revision a575014b02a693b4686e958f883e3eb00f9b0861) +++ lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java (.../HomeAction.java) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -33,7 +33,8 @@ * @struts:action path="/home" * validate="false" * parameter="method" - * @struts:action-forward name="admin" path=".admin" + * @struts:action-forward name="sysadmin" path="/sysadmin.jsp" + * @struts:action-forward name="admin" path="/admin.jsp" * @struts:action-forward name="learner" path="/learner.jsp" * @struts:action-forward name="author" path="/author.jsp" * @struts:action-forward name="staff" path="/staff.jsp" @@ -56,7 +57,7 @@ } /** - * request for sysadmin environment + * request for admin environment */ public ActionForward admin(ActionMapping mapping, ActionForm form, HttpServletRequest req, HttpServletResponse res) @@ -89,6 +90,37 @@ } /** + * request for sysadmin environment + */ + public ActionForward sysadmin(ActionMapping mapping, ActionForm form, + HttpServletRequest req, HttpServletResponse res) + throws IOException, ServletException { + + try { + log.debug("request sysadmin"); + + String login = req.getRemoteUser(); + + int orgId = new Integer(req.getParameter("orgId")).intValue(); + + if ( isUserInRole(login,orgId,Role.SYSADMIN)) + { + log.debug("user is sysadmin"); + return mapping.findForward("sysadmin"); + } + else + { + log.error("User "+login+" tried to get sysadmin screen but isn't sysadmin in organisation: "+orgId); + return mapping.findForward("error"); + } + + } catch (Exception e) { + e.printStackTrace(); + return mapping.findForward("error"); + } + } + + /** * request for learner environment */ public ActionForward learner(ActionMapping mapping, ActionForm form, Index: lams_central/web/WEB-INF/struts/struts-config.xml =================================================================== diff -u -r25c9fdcde2b4f69abe78076cb54f0c7ccbaaa0fd -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_central/web/WEB-INF/struts/struts-config.xml (.../struts-config.xml) (revision 25c9fdcde2b4f69abe78076cb54f0c7ccbaaa0fd) +++ lams_central/web/WEB-INF/struts/struts-config.xml (.../struts-config.xml) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -70,8 +70,13 @@ validate="false" > + + + + + + +Admin:: LAMS + + + +

    Loading Administration Environment.

    + + + Index: lams_central/web/includes/javascript/openUrls.js =================================================================== diff -u -r25c9fdcde2b4f69abe78076cb54f0c7ccbaaa0fd -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_central/web/includes/javascript/openUrls.js (.../openUrls.js) (revision 25c9fdcde2b4f69abe78076cb54f0c7ccbaaa0fd) +++ lams_central/web/includes/javascript/openUrls.js (.../openUrls.js) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -11,6 +11,7 @@ var learnWin = null; var teachWin = null; var adminWin = null; + var sysadminWin = null; function openAuthor( ) { @@ -103,4 +104,27 @@ } } + function openSysadmin() + { + var orgId = document.forms[0].orgIdForAdmin.value; + if(isMac) + { + sysadminWin = window.open('home.do?method=sysadmin&orgId='+orgId,'saWindow','width=796,height=570,resizable,location,menubar,scrollbars,dependent,status,toolbar'); + } + else + { + if(sysadminWin && sysadminWin.open && !sysadminWin.closed ) + { + sysadminWin.focus(); + } + else + { + sysadminWin = window.open('home.do?method=sysadmin&orgId='+orgId,'saWindow','width=796,height=570,resizable,location,menubar,scrollbars,dependent,status,toolbar'); + sysadminWin.focus(); + } + } + } + + + //--> Index: lams_central/web/indexContent.jsp =================================================================== diff -u -r25ac272ffb5be9e7f0c2b97201de33727a617750 -r62ffc2985a40f544eb48a69f2ad7f124b19a43fa --- lams_central/web/indexContent.jsp (.../indexContent.jsp) (revision 25ac272ffb5be9e7f0c2b97201de33727a617750) +++ lams_central/web/indexContent.jsp (.../indexContent.jsp) (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -50,11 +50,11 @@ - <%List list = service.getOrganisationsForUserByRole(user,Role.ADMIN); + <%List list = service.getOrganisationsForUserByRole(user,Role.SYSADMIN); if(list.size()>0){%> <%}%> + <%list = service.getOrganisationsForUserByRole(user,Role.ADMIN); + if(list.size()>0){%> + + + + + <%}%> <%list = service.getOrganisationsForUserByRole(user,Role.STAFF); if(list.size()>0){%> Index: lams_central/web/sysadmin.jsp =================================================================== diff -u --- lams_central/web/sysadmin.jsp (revision 0) +++ lams_central/web/sysadmin.jsp (revision 62ffc2985a40f544eb48a69f2ad7f124b19a43fa) @@ -0,0 +1,14 @@ +<%@ taglib uri="tags-lams" prefix="lams" %> + + + + + +System Admin:: LAMS + + + +

    Loading System Administration Environment.

    + + +
    - +
    + + + +