Index: lams_central/src/java/org/lamsfoundation/lams/web/LoginRequestServlet.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/web/LoginRequestServlet.java,v diff -u -r1.11 -r1.11.6.1 --- lams_central/src/java/org/lamsfoundation/lams/web/LoginRequestServlet.java 10 Apr 2009 13:27:10 -0000 1.11 +++ lams_central/src/java/org/lamsfoundation/lams/web/LoginRequestServlet.java 12 Oct 2009 04:00:21 -0000 1.11.6.1 @@ -144,7 +144,7 @@ Authenticator.authenticate(serverMap, timestamp, extUsername, method, hash); ExtCourseClassMap orgMap = getService().getExtCourseClassMap(serverMap, userMap, extCourseId, - countryIsoCode, langIsoCode, courseName); + countryIsoCode, langIsoCode, courseName, method); User user = userMap.getUser(); String login = user.getLogin(); //was using hses.inNew() API to check if the external user has logged in yet, Index: lams_central/src/java/org/lamsfoundation/lams/webservice/LearningDesignRepositorySoapBindingImpl.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/webservice/LearningDesignRepositorySoapBindingImpl.java,v diff -u -r1.8 -r1.8.10.1 --- lams_central/src/java/org/lamsfoundation/lams/webservice/LearningDesignRepositorySoapBindingImpl.java 17 Sep 2008 07:08:17 -0000 1.8 +++ lams_central/src/java/org/lamsfoundation/lams/webservice/LearningDesignRepositorySoapBindingImpl.java 12 Oct 2009 04:00:21 -0000 1.8.10.1 @@ -39,6 +39,7 @@ import org.lamsfoundation.lams.integration.ExtUserUseridMap; import org.lamsfoundation.lams.integration.security.Authenticator; import org.lamsfoundation.lams.integration.service.IntegrationService; +import org.lamsfoundation.lams.integration.util.LoginRequestDispatcher; import org.lamsfoundation.lams.usermanagement.WorkspaceFolder; import org.lamsfoundation.lams.usermanagement.exception.UserAccessDeniedException; import org.lamsfoundation.lams.util.MessageService; @@ -159,7 +160,7 @@ ExtServerOrgMap serverMap = integrationService.getExtServerOrgMap(serverId); Authenticator.authenticate(serverMap, datetime, username, hashValue); ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); - integrationService.getExtCourseClassMap(serverMap, userMap, courseId, country, lang, null); + integrationService.getExtCourseClassMap(serverMap, userMap, courseId, country, lang, null, LoginRequestDispatcher.METHOD_MONITOR); return buildContentTree(userMap.getUser().getUserId(), mode).toString(); } catch (Exception e) { log.debug(e.getMessage(),e); Index: lams_central/src/java/org/lamsfoundation/lams/webservice/LessonManagerSoapBindingImpl.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/webservice/LessonManagerSoapBindingImpl.java,v diff -u -r1.10.6.1.4.1 -r1.10.6.1.4.2 --- lams_central/src/java/org/lamsfoundation/lams/webservice/LessonManagerSoapBindingImpl.java 4 Sep 2009 07:21:07 -0000 1.10.6.1.4.1 +++ lams_central/src/java/org/lamsfoundation/lams/webservice/LessonManagerSoapBindingImpl.java 12 Oct 2009 04:00:21 -0000 1.10.6.1.4.2 @@ -38,6 +38,7 @@ import org.lamsfoundation.lams.integration.ExtUserUseridMap; import org.lamsfoundation.lams.integration.security.Authenticator; import org.lamsfoundation.lams.integration.service.IntegrationService; +import org.lamsfoundation.lams.integration.util.LoginRequestDispatcher; import org.lamsfoundation.lams.lesson.Lesson; import org.lamsfoundation.lams.monitoring.service.IMonitoringService; import org.lamsfoundation.lams.usermanagement.Organisation; @@ -72,7 +73,7 @@ Authenticator.authenticate(serverMap, datetime, username, hashValue); ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); ExtCourseClassMap orgMap = integrationService.getExtCourseClassMap(serverMap, userMap, courseId, - countryIsoCode, langIsoCode, null); + countryIsoCode, langIsoCode, null, LoginRequestDispatcher.METHOD_MONITOR); // 1. init lesson Lesson lesson = monitoringService.initializeLesson(title, desc, Boolean.TRUE, ldId, orgMap .getOrganisation().getOrganisationId(), userMap.getUser().getUserId(), customCSV, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE); @@ -94,7 +95,7 @@ Authenticator.authenticate(serverMap, datetime, username, hashValue); ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); ExtCourseClassMap orgMap = integrationService.getExtCourseClassMap(serverMap, userMap, courseId, - countryIsoCode, langIsoCode, null); + countryIsoCode, langIsoCode, null, LoginRequestDispatcher.METHOD_MONITOR); // 1. init lesson Lesson lesson = monitoringService.initializeLesson(title, desc, Boolean.TRUE, ldId, orgMap .getOrganisation().getOrganisationId(), userMap.getUser().getUserId(), customCSV, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE); Index: lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LearningDesignRepositoryServlet.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LearningDesignRepositoryServlet.java,v diff -u -r1.8 -r1.8.6.1 --- lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LearningDesignRepositoryServlet.java 10 Apr 2009 13:27:10 -0000 1.8 +++ lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LearningDesignRepositoryServlet.java 12 Oct 2009 04:00:21 -0000 1.8.6.1 @@ -328,7 +328,7 @@ } // create group for external course if necessary - integrationService.getExtCourseClassMap(serverMap, userMap, courseId, country, lang, courseName); + integrationService.getExtCourseClassMap(serverMap, userMap, courseId, country, lang, courseName, method); String contentTree = buildContentTree(userMap.getUser().getUserId(), mode).toString(); Index: lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java,v diff -u -r1.24.2.2.4.3 -r1.24.2.2.4.4 --- lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java 4 Sep 2009 07:21:07 -0000 1.24.2.2.4.3 +++ lams_central/src/java/org/lamsfoundation/lams/webservice/xml/LessonManagerServlet.java 12 Oct 2009 04:00:21 -0000 1.24.2.2.4.4 @@ -297,7 +297,7 @@ Authenticator.authenticate(serverMap, datetime, username, hashValue); ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); ExtCourseClassMap orgMap = integrationService.getExtCourseClassMap(serverMap, userMap, courseId, - countryIsoCode, langIsoCode, null); + countryIsoCode, langIsoCode, null, LoginRequestDispatcher.METHOD_MONITOR); // 1. init lesson Lesson lesson = monitoringService.initializeLesson(title, desc, Boolean.TRUE, ldId, orgMap .getOrganisation().getOrganisationId(), userMap.getUser().getUserId(), customCSV, Boolean.FALSE, @@ -321,7 +321,7 @@ Authenticator.authenticate(serverMap, datetime, username, hashValue); ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); ExtCourseClassMap orgMap = integrationService.getExtCourseClassMap(serverMap, userMap, courseId, - countryIsoCode, langIsoCode, null); + countryIsoCode, langIsoCode, null, LoginRequestDispatcher.METHOD_MONITOR); // 1. init lesson Lesson lesson = monitoringService.initializeLesson(title, desc, Boolean.TRUE, ldId, orgMap .getOrganisation().getOrganisationId(), userMap.getUser().getUserId(), customCSV, false, false, @@ -488,7 +488,7 @@ Authenticator.authenticate(serverMap, datetime, username, hashValue); ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); ExtCourseClassMap orgMap = integrationService.getExtCourseClassMap(serverMap, userMap, courseId, - countryIsoCode, langIsoCode, null); + countryIsoCode, langIsoCode, null, LoginRequestDispatcher.METHOD_MONITOR); // 1. init lesson Lesson lesson = monitoringService.initializeLessonForPreview(title, desc, ldId, userMap.getUser() .getUserId(), customCSV, false, false, false); @@ -690,7 +690,7 @@ ExtUserUseridMap userMap = integrationService.getExtUserUseridMap(serverMap, username); // adds user to group ExtCourseClassMap orgMap = integrationService.getExtCourseClassMap(serverMap, userMap, courseId, - countryIsoCode, langIsoCode, null); + countryIsoCode, langIsoCode, null, method); if (lessonService == null) { lessonService = (ILessonService) WebApplicationContextUtils.getRequiredWebApplicationContext( Index: lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java,v diff -u -r1.8.6.1 -r1.8.6.1.2.1 --- lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java 3 Jun 2009 06:36:29 -0000 1.8.6.1 +++ lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java 12 Oct 2009 04:00:20 -0000 1.8.6.1.2.1 @@ -41,7 +41,7 @@ public interface IIntegrationService { ExtCourseClassMap getExtCourseClassMap(ExtServerOrgMap serverMap, ExtUserUseridMap userMap, - String extCourseId, String countryIsoCode, String langIsoCode, String prettyCourseName); + String extCourseId, String countryIsoCode, String langIsoCode, String prettyCourseName, String method); ExtCourseClassMap getExtCourseClassMap(ExtServerOrgMap serverMap, ExtUserUseridMap userMap, String extCourseId, String extCourseName, String countryIsoCode, String langIsoCode, Index: lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java,v diff -u -r1.18.6.1 -r1.18.6.1.2.1 --- lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java 3 Jun 2009 06:36:29 -0000 1.18.6.1 +++ lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java 12 Oct 2009 04:00:20 -0000 1.18.6.1.2.1 @@ -32,21 +32,21 @@ import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; -import java.text.DateFormat; import java.text.ParseException; -import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; +import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import org.lamsfoundation.lams.integration.ExtCourseClassMap; import org.lamsfoundation.lams.integration.ExtServerOrgMap; import org.lamsfoundation.lams.integration.ExtServerToolAdapterMap; import org.lamsfoundation.lams.integration.ExtUserUseridMap; import org.lamsfoundation.lams.integration.UserInfoFetchException; import org.lamsfoundation.lams.integration.security.RandomPasswordGenerator; +import org.lamsfoundation.lams.integration.util.LoginRequestDispatcher; import org.lamsfoundation.lams.usermanagement.AuthenticationMethod; import org.lamsfoundation.lams.usermanagement.Organisation; import org.lamsfoundation.lams.usermanagement.OrganisationState; @@ -60,6 +60,8 @@ import org.lamsfoundation.lams.util.HashUtil; import org.lamsfoundation.lams.util.LanguageUtil; + + /** *

* View Source @@ -92,7 +94,7 @@ // wrapper method for compatibility with original integration modules public ExtCourseClassMap getExtCourseClassMap(ExtServerOrgMap serverMap, ExtUserUseridMap userMap, - String extCourseId, String countryIsoCode, String langIsoCode, String prettyCourseName) { + String extCourseId, String countryIsoCode, String langIsoCode, String prettyCourseName, String method) { // Set the pretty course name if available, otherwise maintain the extCourseId String courseName = ""; @@ -101,9 +103,13 @@ } else { courseName = extCourseId; } - - return getExtCourseClassMap(serverMap, userMap, extCourseId, courseName, countryIsoCode, langIsoCode, service - .getRootOrganisation().getOrganisationId().toString(), true, true); + if (StringUtils.equals(method, LoginRequestDispatcher.METHOD_AUTHOR) || StringUtils.equals(method, LoginRequestDispatcher.METHOD_MONITOR)) { + return getExtCourseClassMap(serverMap, userMap, extCourseId, courseName, countryIsoCode, langIsoCode, service + .getRootOrganisation().getOrganisationId().toString(), true, true); + } else { + return getExtCourseClassMap(serverMap, userMap, extCourseId, courseName, countryIsoCode, langIsoCode, service + .getRootOrganisation().getOrganisationId().toString(), false, true); + } } // newer method which accepts course name, a parent org id, a flag for whether user should get