Index: lams_central/web/lti/addLesson.jsp =================================================================== diff -u -r8e750a84c26284326f3de2f3f32ea31b4bd9776b -ra2192472523e87d395397d22794e32eb1f4c62a8 --- lams_central/web/lti/addLesson.jsp (.../addLesson.jsp) (revision 8e750a84c26284326f3de2f3f32ea31b4bd9776b) +++ lams_central/web/lti/addLesson.jsp (.../addLesson.jsp) (revision a2192472523e87d395397d22794e32eb1f4c62a8) @@ -174,6 +174,7 @@ + <%-- ContentItemSelectionRequest items --%> Index: lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java =================================================================== diff -u -rcd53cf4e357dfbd690fb81c14cc0c47c33d3dd29 -ra2192472523e87d395397d22794e32eb1f4c62a8 --- lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java (.../IIntegrationService.java) (revision cd53cf4e357dfbd690fb81c14cc0c47c33d3dd29) +++ lams_common/src/java/org/lamsfoundation/lams/integration/service/IIntegrationService.java (.../IIntegrationService.java) (revision a2192472523e87d395397d22794e32eb1f4c62a8) @@ -242,8 +242,8 @@ * @param lessonId * if supplied, user will be added to the according lesson; and only to the course otherwise */ - void addUsersUsingMembershipService(ExtServer extServer, Long lessonId, String extCourseId, String resourceLinkId) - throws IOException, UserInfoFetchException, UserInfoValidationException; + void addUsersUsingMembershipService(ExtServer extServer, Long lessonId, String extCourseId, String resourceLinkId, + String customContextMembershipUrl) throws IOException, UserInfoFetchException, UserInfoValidationException; /** * Adds an external user to the course with specified courseId. Index: lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java =================================================================== diff -u -rac4d536a03727d777f942460c2e246ba2940b581 -ra2192472523e87d395397d22794e32eb1f4c62a8 --- lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java (.../IntegrationService.java) (revision ac4d536a03727d777f942460c2e246ba2940b581) +++ lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java (.../IntegrationService.java) (revision a2192472523e87d395397d22794e32eb1f4c62a8) @@ -973,16 +973,23 @@ @Override public void addUsersUsingMembershipService(ExtServer extServer, Long lessonId, String courseId, - String resourceLinkId) throws IOException, UserInfoFetchException, UserInfoValidationException { + String resourceLinkId, String customContextMembershipUrl) + throws IOException, UserInfoFetchException, UserInfoValidationException { - String membershipUrl = extServer.getMembershipUrl(); - //if tool consumer haven't provided membershipUrl (ToolProxyBinding.memberships.url parameter) we can't add any users + String membershipUrl = customContextMembershipUrl; if (StringUtils.isBlank(membershipUrl)) { + membershipUrl = extServer.getMembershipUrl(); + } + + // if tool consumer haven't provided membershipUrl (ToolProxyBinding.memberships.url parameter) we can't add any users + if (StringUtils.isBlank(membershipUrl)) { return; } - membershipUrl += membershipUrl.contains("?") ? "&" : "?"; - membershipUrl += "rlid=" + resourceLinkId; + if (StringUtils.isNotBlank(resourceLinkId)) { + membershipUrl += membershipUrl.contains("?") ? "&" : "?"; + membershipUrl += "rlid=" + resourceLinkId; + } log.debug("Make a call to remote membershipUrl:" + membershipUrl); HttpGet ltiServiceGetRequest = new HttpGet(membershipUrl);